はじめに
今回は線形回帰モデルを確率的なモデルで考え、これと最小二乗法の関係を見ていきます。
この部分は機械学習を始める最も根っこの部分に当たるので是非完全な理解をしたいところです。
線形回帰
線形関数
重みベクトルをと表し
入力データをとして
を線形関数と言います。
データは、本来次元だったとして、最初の成分にを挿入していることに注意してください。仮にデータが次元の場合には
のような形になり、最初の成分が切片を与えます。
線形というのは「比例」という概念を多次元に拡張したものです。以下のように、に比例したような形(実際には線形という)を線形関数というわけです。
線形回帰の目的
線形回帰の目的は、入力と出力の関係をのを上手く調整することで表現しようというものです。
例えばの各成分は、土地の広さ、駅からの距離、築年数となっておりは不動産の価格のような状態です。
ここではで表されるのだが、何らかの測定誤差やノイズの混入によりズレた結果が得られると考えます。のズレ具合は何らかの確率分布から生じているとしてモデル化します。以降それを見ていきます。
ガウスノイズモデル
ガウスノイズとは、ガウス分布から生じる雑音のことを言います。
雑音は平均的にはである(つまり、+と−方向に均等に現れると思えばいい)が、1個1個を見ると本来のからズレを生じされます。ズレの大きさを分散で評価することにしましょう。
平均で分散のガウス分布のことをなどと表記します。今は平均で分散のガウス分布を想定しているのでを扱います。
雑音の記号はで表現することにして、
と書くことにします。(通常とは、が確率分布から生起するという意味)
まとめると、線形回帰モデルというのは
,
と表せることになります。
雑音が確率的に生起するせいで、も確率的に振る舞うことになり
と表せます。ここでこの式は、ノイズは平均的にはであるので、は平均的には正しくとなるが、分散の影響を受けるという意味です。
結局の確率分布を明示的に書けば
と表せます。これで入力データに対する出力データを確率的にモデル化することができました。あとは上手くを決めてやるだけです。
最尤推定法
今、入力データに対して出力データが手元にあるとしましょう。
この手元にあるデータから上手くを決めてやりたいです。
ここでこのようなデータが得られた背景には以下のようなデータの生起が起こっているはずで
これは現実に起こったことであるので、それ相応に確率は高いであろうと考えられます。
しかしデータが1つでは怪しいです。たまたま珍しいデータが得られた可能性もあります。
そこで、データをN個かき集めてきたとしましょう。当然番目のデータは
という生起の過程をたどっており、これら全てのデータが得られる確率は
となっています。個々のデータは互いに独立であるとすれば上記のように個々のデータの生起の積で確率を表すことができます。このように実際に実現した確率的事象の確率を尤度と呼び、この尤度を最大にするようにパラメータを決定するのが最尤推定法です。
通常はデータをまとめてで表し、
などと表記します。
対数尤度
パラメータを決定するためには、尤度を最大化しなければなりません。
をで微分して、となる点で極値を取るはずです。まずは極値を探したいのですが、尤度は積の形で微分が難しいです。
ここで通常は尤度の対数を取って、積を和に変換します。
となります。これを最大化しましょう。(を使っているだけです)
ガウス分布の式を代入して、以下のように表します。
すると、更にの性質を使ってΣの中身を
と書き換えられます。第一項はに無関係なのでただの定数項です(今からで微分しようとしているので無視できます)。また、第二項は指数を取って対数を取るという演算が施されているので、この部分は打ち消され、結局のところ
だけがΣの中身として残ります。従って対数尤度は定数項を使って
と表せます。
の分母は、にとって定数倍なのでこれも、適当にとして外に出してしまいましょう。最終的に対数尤度は以下のような形で表されます。
最小二乗法との関係
対数尤度を最大化するというのはどういうことでしょうか。
のに関する最大値を求めることは定数項や定数倍を無視して
を最大化することです。更に負符号を付けて
を最小化するという問題に書き換えられます。
これはよくみる単なる最小二乗法です。
直線フィッティングに、当たり前のように使っていた最小二乗法とは、ガウスノイズが生じているという線形回帰モデルに相当していたのです。もしもノイズがガウスノイズでないのならば、最小二乗法はなにかおかしなことをやっていることになります。
確率的なモデルで考えると、実はモデルの詳細を検討できて便利です。
最小二乗法はどんなときに使えるか
実は最小二乗法は多くの場合ある程度妥当な選択となります。
いま考えているモデルというのは
,
というものでした。ノイズの正体は何か分かりませんが、ともかくデータを揺るがすものです。
このノイズを細分化して考えた場合、つまり
というように、ノイズが複数のファクターに由来しているとしましょう。(例えば大雑把に計測機器の誤差、計算機による誤差、写し間違いによる誤差と言った具合です。(写し間違いなんてあるかしらんけど))
それぞれのの分布がどんなものであるかはわからないにしても、「確率変数の和」という確率変数はガウス分布に近くなることが知られています(和の数が増えれば増えるほど)。
ここで強力なことに、の分布は本当になんでもいいのです。それぞれ別々で任意の確率分布であったとしても、和を取っていくとガウス分布に近づきます。これを中心極限定理と言い、確率統計における非常に強力な定理となっています。
ガウス分布というものが如何に特別であるかは、実は中心極限定理に支えられているのです。
やけにガウス分布をノイズに仕立て上げることが多いのには、このような理由があったわけです。
しかし、和の数が少ない(つまりノイズのファクターが少ない)ならば、そのファクターの分布を調べたほうが正確でしょう。現実では、無限に多くのファクターが合わさっているとは考えられない場合も多く、ある1つのファクターが支配的にノイズを発生している可能性があるのも注意しましょう。
次に読む記事
最尤推定より更に実用上強力なMAP推定