はじめに
今回は、回帰分析において過学習を防いだり、多重共線性に対応したりするために使われるRidge回帰や、変数の数が標本数より多いような時に変数選択の方法として使われるLasso回帰について、理論を整理しようと思います。
これら2つの手法ともには正則化という手法で説明されるものです。まずは正則化の観点からRidge回帰とLasso回帰を理解し、さらにこれらの手法が確率モデルでも説明可能であることを示そうと思います。
確率モデルで説明可能な手法であるということは、データセットとモデルから尤度を計算しベイズ推定可能であるということなので、ゆくゆくはRstanでこれら2つの手法を実装してみたいと思っています。
本記事の構成は以下の通りです。
参考にした本や記事は以下のとおりです。
線形回帰の導入
以下の線形回帰を考えます。
ここで
これを行列で表現すると、
ただし、
これを行列を使って以下のように表記します。
一般に
基底関数を、ベクトル
このとき、以下の公式が得られます。
正則化
線形回帰モデルの係数パラメータは
では、
係数パラメータの絶対値が大きくなるのを避けるための工夫が正則化です。正則化では、
損失関数を上記のように設定することが
よって、
リッジ回帰は、もともとは
任意の行列
Lasso回帰については同様の方法では正則化との関係が見えてきませんでした。ただ係数パラメータの多くが0になる仕組みについてはこちらの記事に詳しかったです。
確率モデルでRidge回帰を捉える
前節で説明したRidge回帰は確率分布を用いた以下のモデルでも説明できます。
確率モデルでLasso回帰を捉える
Lasso回帰は確率分布を用いた以下のモデルでも説明できます。
確率密度
蛇足
今回の記事はHugoのshortcode機能を駆使して文章に枠をもたせてみました。今までの記事よりかなり見やすくなっていませんか??しばらくはこのスタイルで行こうと思います。
最後に今回の記事のイメージソングをあげておきます。ブログ名の由来になった曲です。
-
回帰分析で生じるこのような問題は多重共線性と呼ばれています。 ↩︎