今回は、リッジ回帰によって多重共線性の問題を回避できることを簡単にまとめておきます(わかりやすくまとめたつもりです)。
先日(4/28)の記事で紹介した『リッジ回帰を用いた異常検知』で、「リッジ回帰は、多重共線性の問題を回避できる」という性質について
学習しました。それってどういうことなのか、簡単に整理しておきたいと思います。
jojoshin.hatenablog.com
1. 多重共線性とは(multicolinearity)
多重共線性とは、モデル内の独立変数が他の独立変数と相関しているときに起こる状態です。このように関連がある変数同士がモデルに含まれると、推定値の計算が不安定になることが知られています。
2. 多重共線性の問題って実際のところ何?
そもそも最小二乗法の解はこのように表すことができます。
ただし、多重共線性がある場合には、 の計算が難しくなる。これを説明するために今回は3×3の行列であるを用いる。
は1つ目の変数と2つ目の変数、がとなっていることを想定する。3つ目の変数は特に関連のない変数を想定している。
これを計算すると、
このようになります。逆行列の計算ですが、とすると、下記のようになります。
ここで、を元に、を計算してみると、
となることがわかる。
これが示すように、多重共線性があると、逆行列の計算の部分で、いわゆる「ゼロ割」(分母に0が来る)問題が発生する。
3. リッジ回帰の登場
ここでリッジ回帰の登場です。リッジ回帰とは、正則化回帰(このネーミングがミソ)の一つであり、正則化項を付け加えることでこの多重共線性の問題を解決することが知られています。
リッジ回帰では、通常の最小二乗法の解とはわずかに異なり、
とある定数のをかけた単位行列のを足して表す。
早速、今回の例で考えると、
でしたから、ここにとして、
を足し合わせると、
となるので、ここで を計算すると、
となるので、多重共線性があっても係数を計算可能になることがわかります。
逆行列が存在する行列を「正則」という。「正則化」っていうのはこういう場合のみだけでなく、最適化問題の解を正しく求められるようにすることのようです。今回の例で言えば、「正則化」を「逆行列を存在するようにすること」=「」って捉えて良いのかな。そうじゃないと、ゼロ割問題などで係数の推定が不安定になってしまうので、、、
最後に
今回は多重共線性の問題とその解決策としてのリッジ回帰の仕組みについて簡単にまとめましたが、非常にすっきり理解できたと個人的には思っています。普段数式を使用する機会が少ないので、表記・表現等に間違いありましたら、ご指摘頂けると助かります。
20170501
RF