PRML 読書会 #8 「カーネル法」

毎度おなじみ 「パターン認識と機械学習」(PRML)読書会 #8 に のこのこ行ってきた。
お疲れ様でした>各位。


会場が陸の孤島(!)だったので自転車かついで行ったら、前々日くらいまでは晴れの予報だったのに、夕方から雨になって……とほほ。


気を取り直して。
いよいよ PRML 下巻に突入。
6章の「カーネル法」が今回の範囲なのだが、何回か読んだんだけどいまいちよくわからなかった。
カーネル法は便利なんだろうな」ということはわかる。でもそれだけ。
ガウス過程による回帰を実装してみて、式の流れはある程度わかってきたけれど、それは理解をしたと言うこととはちょっと違うので。


カーネル関数はなんでもいい」と言っているけれど、「なんでもいい」は何も言っていないのと同じだから、だろうか(しかも、実際にはもちろん何でもいいわけがなく、この場合にはこのカーネルがいい、あの場合にはあのカーネルが隠し味、と秘伝のレシピがいっぱいある)。
それとも、基底関数とカーネルは双対の関係にあるようなことを言っているが、それを示そうとする素振りすらないからだろうか(それを証明するのは他の知識がいろいろ必要となり、大変だから省略されているのだろうけれども)。
ガウス過程をカーネル関数と絡めて紹介しているけれど、なぜか明示的に定義としては書かれておらず*1、またガウス過程をカーネル関数がそもそも独立した概念なのか、どちらかがどちらかに依存しているのか不明瞭なせいなのか(実際には独立した概念で、しかし同値)。


理由はともかく、このわかんない感はどうしたらいいものか。


というわけで、PRML 6章は放っておいて、id:syou6162 さんや他の方多数がブログで紹介されていた「カーネル多変量解析」を購入。とりあえず1章2章を読んでいると、6章への後方参照が目立つ。
実は「カーネル多変量解析」の6章以降に理論がまとまっていて、基底関数の内積と再生カーネルと半正定値カーネルと半正定値行列とを紹介、それらが同値であることを示してくれている*2
特に RKHS(再生カーネルヒルベルト空間)は明らかに相当強い特徴であり、これがカーネル関数というとても弱くて満たしやすい条件から導けることがカーネル法の強さの秘密だ、ということがわかる。
これで、だいぶいろいろすっきりした!


PRML の6章でどうももやもやするものが残っちゃう人は「カーネル多変量解析」を試してみるといいかも。数学っぽい方が嬉しいなら、なおさら。
1章2章を物語レベルでわかんなくてもいいからざっと斜め読みして(言葉や用法に見慣れておくため)、あとは全部すっ飛ばして6章からちゃんと読むのが個人的おすすめ。
で、読書会にて「この PRML の6章って、これでわかるの? 自分はわからんかったから『カーネル多変量解析』読んだ〜」とカミングアウトしたら、実は「カーネル多変量解析」持参率が高かったことがわかって思わず笑った。


というあたりで、あとは読書会に出ていた議論を簡単にまとめておこう。
id:kmoso さんも読書会メモを書いてくれてはったのでこちらもご参考(自分も忘れてたところがあったので助かりました〜)。
ま、別の視点からのまとめも意味があるだろうと言うことで、重複を恐れず書く*3

  • カーネルレシピの一つ。テキストの類似度を見るのに、フィッシャーカーネルを使うと単純な tf-idf なモデルよりもよい結果が出た、という論文がある。
  • 6.3 では、入力のノイズを考慮して Nadaraya-Watson モデルを導出しているけど、出力ノイズではなく入力ノイズを考えるとどういう感じで嬉しいの? IRT(項目反応理論)では、回答者が偶然正答する確率をパラメータ化するんだけど(「TOEIC で時間足りなくなったら、あとは全部3にマーク!」みたいな)、あれは一種の入力ノイズのモデル化かな?
  • 6.3 の Nadaraya-Watson モデルでは入力ノイズパラメータがあるけど、6.3.1 の同 Nadaraya-Watson モデルには明示的なノイズパラメータがない。でも同じ式が導出されて、図6.3 では、ちょいと正則化したようなグラフが描けている。どこでそういう調整がきいているの? ガウスカーネル使う場合はσがハイパーパラメータに入ってくるから、それじゃあない? ある程度大きい値にすると正則化みたいな効果出るし。
  • ガウス過程の平均ってなんで0なの? 予測確率変数 y_n の平均だから観測値 t_n でもいいんじゃあないの? もちろん t_n 選ぶより0選んだ方が、後の計算がうまくいくことはわかるけど、そんな結果オーライの理由付けじゃあなく。6.4.1 には「ほとんどの応用において、y(x) の平均についての事前知識はないため、対称性から、これを零とすることが多い」とあるよ。だから0じゃあなくてもいいんじゃあない?
  • 図6.4、図6.5 の見方がわからん。「ガウス過程による事前分布からのサンプル」ってキャプションに書いてあるけど、線形回帰ならともかく、ガウス過程からそんなんとれないでしょ? うーん。それぞれのグラフ4色あるけど、同じ色は同じような傾向があるように見えない? もしかして、それぞれの色ごとに何かサンプルが決まっていて、そのサンプルに対してこのカーネル使った場合のガウス過程回帰を描いているんじゃあない? それだ!!!
  • ガウス過程分類の結果 (6.87式) の解釈は、t_N-σ_N が各点における正解からの外れ具合(正解が 1 なら正、0 なら負)を、k がその点と x_{N+1} と各点との類似度になっていて、その内積が正なら 1 になる確率が高いし、負なら 0 になる確率が高い(ロジスティックシグモイドに突っ込むのでちょうどそういう式になる)。
  • ガウス過程は David J.C. Mackay, Introduction to Gaussian Processes ( http://www.inference.phy.cam.ac.uk/mackay/gpB.pdf ) がおもしろかったのでおすすめとのこと(via @tb_yasu)。後で時間作って読んでみよう〜。


次回は 11/28(土) にサイボウズ・ラボにて開催
#9 の範囲は第7章「疎な解を持つカーネルマシン」。多くの PRML 読みがきっと「この章を読みたい」と目標としているサポートベクトルマシンを扱う。
7.2 RVM を担当予定。

*1:ガウス過程」が太字になっていない

*2:証明の一番難しいところは「カーネル多変量解析」でも省略されちゃってるんだけど、だいたいの流れはつかめる

*3:自分のまとめ方はちょいクセがあるしねw。自覚はある。反省はしない。