ガウス過程と機械学習0章のノート
- ガウス過程と機械学習を読んだ自分用のノートです
- 後で見返す用なので、細かすぎることは書かずあらすじ程度の内容
- 詳しいことは本を買って読んでみてください
- 誤字脱字、間違いなどが有りましたらコメントよろしくおねがいします。
- ベイズ系の話を理解するときに自分が引っかかった部分を丁寧に書いたつもりです。ステップ3だけでも読むと他でも活きるかもしれないです
0章の内容は本当の初学者に対して5つのステップでガウス過程へ導く
ステップ1
機械学習における学習とは観測されたデータ$(x,y)$から入力$x$を入れることで$y$を予言する関数$f(x)$を何らかの方法で得ること。
ステップ2
特に入力と出力のセットが与えられているデータを教師ありと呼び、$y$が連続変数の場合は回帰と呼ばれる。
\begin{align}
y &= f(x) + \epsilon\\
f(x) &= w_{1}x + w_{2}
\end{align}
という線形回帰をここでは扱っている. ただし, ここで $\epsilon$ は確率的に与えられる誤差.
ステップ3(確率モデリングとベイズ推定)
- $ y = f(x) + \epsilon $による回帰は$w$というパラメータの値が一つ定まると決まる関数となっている。
- $\epsilon$は確率的に定まる変数. つまり確率変数であるため $y$ は自動的に確率変数になってしまう。
この2つの事実から $y$ は $w$ というパラメータによって条件付けられた条件付き確率 $p(y|w)$ に従う確率変数となる。 ここで注意してほしいのは$w$は確率変数ではないということである。条件付き確率における条件は常に確定している値であり、確率変数ではない。
ここから確率モデルをベイズモデルに格上げする。
ベイズモデルではモデルにおける未知のパラメータを確立変数に格上げすることを起点とする.
今の場合だと $w$ を $p(w)$ に従う確率変数であると仮定する。つまり、回帰モデルのパラメータをサイコロ(乱数)振って決めてしまうような状況を考えている.
このような過程を 標本化 もしくは サンプリング と呼ぶ。おそらく標本理論における呼び方を踏襲しているのだろう。
- $p(w)$ を事前分布
- $p(w|y)$ を事後分布
と呼んでいる。
イメージを掴む。はじめはどのようなパラメータを用いれば予測がうまくいくのか全く前提知識がない状態で、これが事前分布である。 そこから得られたデータ $(x,y)$ をもとに学習を行っていくことで、良い予測を建てられる $f(x)$ のパラメータ $w$ がどのような値を取るのかを確率的に推定していく。これが学習後に得られる事後分布である。
学習が進むに連れ良いパラメータを発生させる確率が高まっていくのである。
ステップ4
ガウス分布(正規分布)は最も基本的な連続変数の確率変数に対する確率分布である。
平均と分散を与えることでその分布を特徴づける事ができる。
ステップ5(ガウス過程とガウス過程回帰)
- ガウス過程とは関数 $f(x)$ を確率変数と見立てた確率分布である。
- ガウス過程回帰とは得られたデータから $f(x)$ の確率分布をガウス過程の形で求める方法である。
最終的に得られるのは確率生成モデルと呼ばれるものである。
つまり、様々な入力 $x_{1},x_{2},\cdots $ に対してその出力 $f(x_{1}),f(x_{2}),\cdots$ が学習によって得られた事後分布 $p(w|y)$ に従う確率分布に従った確率変数として得られる状態である。
注意してほしいことはこれら1つ1つの入力変数が異なれば全く異なる確率分布に従った確率変数であるということである。(おそらくテキストでは省略されているが、ここでの事後確率分布 $p(w|y)$ は正確に表すと $p(w|y(x))$ という形をしているはず。)
一応注意しておくと、 $f(x)$ に対して同じ値を入力してもその出力はガウス分布に従って確率的に定まるので、基本的には毎回異なる。普通の関数との違いはここにある。
一般に関数 $f(x)$ への入力は無限回行ってもよく、無限個の入力に対して無限個の出力が得られる。これらすべてがガウス分布に従うため、 $f(x_{1}),f(x_{2}),\cdots$ をまとめて、無限次元のガウス分布に従うと言っている。