「パターン認識と機械学習(PRML)」 読書会 #14 11章 サンプリング法

すっかり Tsukuba.R と後先になったけど、5/8 に開催された PRML マラソン、じゃあなかった、読書会 #14 に毎度ながら のこのこ参加。
参加者各位、会場提供してくださった EC ナビさん、大変遅い時間までお疲れ様でした&ありがとうございました。


今回は 10.7 EP 法から 11.5 ハイブリッドモンテカルロまで……の予定だったが、11.4 スライスサンプリング終了時点で 21:00*1
というわけで 11.5 は次回に繰り延べ。11.5 担当の wk さん、おつかれさまです……
そして 10.7 は担当者無しだったところを、 @ruto5 さんが資料を作ってきて説明してくれはった。大感謝。パチパチ。


10.7 EP 法は、「混合モデルに適用すると結果は良くない」&「更新が収束する保証がない」(どちらも PRML p224)と言われてしまうと、やっぱり食指が伸びないよなあ。
さらに図 10.17 によれば、必要な浮動小数点演算数もラプラス近似や変分ベイズに比べてはるかに多いし*2。どうやって測ってるのか知らないけど(実装によるよね……)。
そういえば、EP 法の Minka さんはビショップ先生の同僚なので、あー、うーん、そうかー、そういうことかー、とか勘ぐってみたり。そう言えば RVM も……


11章はサンプリング法。
マルコフ連鎖モンテカルロ(MCMC) すごいよ! もう手放せないよ!!」という、巷の多くの利用者からの賞賛の声(※効果には個人差があります)に期待をふくらませて読んだのだけど、どうにも物足りない。
PRML のこの内容じゃあ何がすごいのかちっともわかんない。


まあ、機械学習MCMC が効いてくるのはトピックモデルとかノンパラベイズとか、PRML でカバーしていない範囲に入ってからなのだろうから、仕方ないのかもしれないけど……文章と参照論文で触れるだけでもいいから、めぼしいところを紹介してくれてると嬉しかったかな。
たとえば LDA をギブスサンプリングで解く "Finding Scientific Topics" (Griffiths & Steyvers, 2004) とか。って LDA から説明しないとダメなのか……


でも、読書会としては、CG や NLP などの実際に使っている立場での印象や疑問が数多く議論されて、今までの中でもかなり盛り上がった回だったんじゃあないかなあ。
おかげで、過去最長&持ち越しというハメになっちゃうくらい。もし、さらにファイナンスの人がいたらきっともっとすごいことに……。
MCMC最前線現場の技術なんだな−。


ちなみに。
PRML で何度か参照されている "Probabilistic Inference using Markov Chain Monte Carlo methods"(Neal 1993) は実は 140 ページ以上あるサンプリング法の入門記事。
PRML と Neal 1993 を見比べると、明らかに類似性が……というわけで、きっとこれが PRML 11章の種本。
ギブスサンプラーエルゴード性を持つ十分条件である「弱い制限」や、PRML ではまるっきり省略されている収束診断などについても網羅されているので、PRML の次にこれを読めば、それなりに満足できるかも(まだほとんど読めてないんだけどね)。


英語はちょっとなー、という方には、日本統計学会誌の記事「マルコフ連鎖モンテカルロ法の最近の展開」(大森 2001) がおすすめ。
2001 年の記事なのでスライスサンプリング(Neal 2003)は載っていないけど、PRML 11.3 までをおおむねカバーしつつ、収束診断なども含めたいろいろ細かいところまでフォローされている。
一通り目を通すだけでも、「MCMC 深いな〜」と楽しめるんじゃあないかと。


予習も兼ねて実装してみたのはこのあたり。

PRML 11章の重点サンプリングと SIR を試す
http://d.hatena.ne.jp/n_shuyo/20100506/sampling
多変量正規分布をギブスサンプリングで
http://d.hatena.ne.jp/n_shuyo/20100507/gibbs
スライスサンプリングで単語ごとの出題率に沿って抽出
http://d.hatena.ne.jp/n_shuyo/20100508/slice_sampling

LDA(Latent Dirichlet Allocation) を collapsed Gibbs sampling で推論するのも R で実装してみた( http://github.com/shuyo/iir/tree/master/lda/ )が、記事はまだ書いてない。


次回第15回は 6/6(日) 13:00〜、同じく EC ナビさんにて。11章の残り+12章の主成分分析(PCA) に突入。
12.3 のカーネル PCA を担当予定だけど、回ってくるかな〜?

*1:いや、今回は何も担当してないよ!

*2:対数スケールなので、本当に「はるかに多い」