赤穂昭太郎著 カーネル多変量解析 非線形データ解析の新しい展開

読み始めました.

カーネル多変量解析そのものを研究している人じゃなくて,カーネル使ってちょっといいことしたいよねと思っている人に非常におすすめです.まだ全部は読み切れていないけど,とりあえず第一章がすごくわかりやすい.

===
線形回帰にカーネル法のエッセンスを入れてみます.

線形回帰は出力を入力の線形関数と見て,その線形関数のパラメタを最適化する問題.最小自乗法,微分して0,で簡単に解けます.ここで入力データと学習データとの自乗誤差のかわりに,入力データと学習データとのカーネル関数値をつかってやるというのがカーネル法の考え方です.ここでミソなのは,線形問題の学習データを別の値(カーネル関数)に入れ替えているだけなので,最適化のためのプロセス(線形回帰なら微分して0みたいな操作)は線形問題とまったく同じだということ.にもかかわらず,カーネル関数が非線形性をもっているので,フィッテングは非線形な関数で行える.実に賢い.

ただ,ちょっとだけ問題があって,モデルの自由度が高すぎるがゆえオーバーフィッティングの問題がでてくる.普通ならモデルの自由度を下げよう,となるのだけど,カーネル法はモデルの自由度=学習データの数でfixされてしまっている.そこでカーネル法では,自由度をさげるかわりに,正則化を導入する.評価関数に,ペナルティ項を足し算する.ベイズ的にいえば事前知識を入れてやる.こうやって,「鋭すぎる刃物を鈍らせて使う」.
===

SVMとか,あんまり理解してないままつかってたけど,あらためて勉強してみるとほんと賢い方法だと思い知らされる.カーネルかわいいよカーネル