NIPS2018読みメモ: Graphical model inference: SMC meets deterministic approximations(その1)

以下の論文を読みます。解釈誤りは筆者に帰属します。問題点がありましたらご指摘いただけますと幸いです。

Fredrik Lindsten, Jouni Helske, Matti Vihola. Graphical model inference: Sequential Monte Carlo meets deterministic approximations. In Proceedings of NIPS 2018. https://papers.nips.cc/paper/8041-graphical-model-inference-sequential-monte-carlo-meets-deterministic-approximations
次回:まだ
f:id:cookie-box:20180305231302p:plain:w60

タイトルは「グラフィカルモデルによる推論」かな? サブタイトル的なのが「逐次モンテカルロ法決定論的近似手法の出会い」?? 何だそれ…。なんでこの論文選んだの?

f:id:cookie-box:20180305232608p:plain:w60

なんかちょっとタイトルが面白かったので。

f:id:cookie-box:20180305231302p:plain:w60

それだけ!?

f:id:cookie-box:20180305232608p:plain:w60

そういえば all you need というタイトルの論文をまれによくみますよね。

f:id:cookie-box:20180305231302p:plain:w60

論文タイトルはポエム書く場所じゃないだろ!?

f:id:cookie-box:20180305232608p:plain:w60

でもグラフィカルモデルってよく知らないんですよね。いくつかの丸を、向きがあったりなかったりする矢印で結んだ絵という理解しかないです。

f:id:cookie-box:20180305231302p:plain:w60

絵!? じゃあ、逐次モンテカルロ法っていうのは?

f:id:cookie-box:20180305232608p:plain:w60

そちらは聞いたことがあります。逐次モンテカルロ法(SMC)は粒子フィルタともいうんですが、直接観測できない状態変数の分布をベイズ的にトラッキングする枠組みです。状態分布を点(粒子)の集合で表現するので原理上どのような形状の分布でも扱えます。手順としては初期の状態分布の粒子たちを発生させて、それぞれの粒子を少し先の時刻までシステムモデルによって時間発展させた後、それぞれの粒子からその時刻に実際に観測された値が観測される尤度を計算して、尤度が大きい粒子は増やして、尤度が小さい粒子は捨ててしまいます(リサンプリング)。以降、時間発展とリサンプリングを繰り返すだけです。ただそうして求めたある時刻の状態分布はあくまで粒子近似なので、分布のモーメントが保たれるかは議論しなければなりませんけど。

f:id:cookie-box:20180305231302p:plain:w60

ふーん…「逐次モンテカルロ法」は事後分布の「近似」的な解を求める方法なのか。じゃあそれって「決定論的」なの?

f:id:cookie-box:20180305232608p:plain:w60

いえ…システムモデルは一般にノイズを含むので、粒子を時間発展させる際にはシステムノイズの分布に従う乱数を加えることになると思います。乱数のシードを変えたら得られる状態分布が変わってくるはずなので、逐次モンテカルロ法の結果は確率的であり、決定論的なアルゴリズムではないと思いますが…。

f:id:cookie-box:20180305231302p:plain:w60

じゃあ、タイトルの「決定論的近似手法」は「逐次モンテカルロ法」とはまた別の何かなんだな。まあ出会ってるくらいだからそれぞれ別だとは思うけど。アブストラクトを読むと、確率的グラフィカルモデルによる近似的な推論は「決定論的」なのと「モンテカルロ的」なのに分類されて、前者はおしなべて正確で高速だけど、見積りづらいバイアスがある? バイアスって何だ…。後者は漸近一致するけど計算コストがかかる? まあそれで当然この論文では両者を組み合わせることになるよな。具体的に、決定論的近似手法の結果を効果的に利用するような逐次モンテカルロ法を考案したんだって。利用する決定論的近似手法は何でもいいんだけど、論文中では具体的に以下の3つの手法を取り上げてるって。全部何のことかさっぱりわかんないけど…。

  • loopy belief propagation
  • expectation propagation
  • Laplace approximations
それで、提案手法の結果はバイアスが修正されていて、決定論的手法のみの場合や単純な逐次モンテカルロ法よりも改善がみられたらしい…。

f:id:cookie-box:20180305232608p:plain:w60

僕もその3つの手法はわかりませんね…そういえばPRMLの第8章が「グラフィカルモデル」ですね。目次を眺めてみると、ちょうど8.4.7 節がループあり確率伝播(loopy belief propagation)です。これは、ループがあるグラフ(厳密な推論が困難)に対する、最も単純な近似手法の一つということなんでしょうか。また、第10章の「近似推論法」の 10.7 節が EP 法(expectation propagation)ですね。これは変分法とよばれるクラスの解法のようです。ラプラス近似(Laplace approximations)は上巻の 4.4 節にあります。第4章は「線形識別モデル」ですね。全部PRMLに載っていますね。

f:id:cookie-box:20180305231302p:plain:w60

載ってるのはいいけどそれどれもまだ読んでない章じゃん! …で結論を読むと、提案手法には twisted SMC って名前が付けられてるな…最初からそう呼べばよかったんじゃないか…。まあそれでこの twisted SMC をつかうにはきっと twisting function っていうのが要るんだな。最適な twisting function を近似するのに決定論的手法をつかうっぽい。そうやって決定論的手法と SMC を組み合わせるんだな。この論文で提案したアプローチは擬似周辺化MCMC(pseudo-marginal MCMC)とか粒子MCMC(particle MCMC)とかにもプラグインとして適用しうるって。無理やり日本語訳してみたけど擬似周辺化MCMCという言葉はネット上にないな…。将来的には、SMC と組み合わせるのに一番ぴったりな近似手法を追及するとか、twisting function をイテレーティブに改善していくとかやりたいって。

f:id:cookie-box:20180305232608p:plain:w60

では、その twisting function というのがどのようなもので、どのように機能するのかさえ読み取ればよさそうですね。

f:id:cookie-box:20180305231302p:plain:w60

いやいやグラフィカルモデルについても決定論的近似手法についても何もわかってないんだけど! でイントロダクションに戻ると、確率的グラフィカルモデルっていうのは高次元で複雑な統計モデルの依存構造を表現するのに広くつかわれていると…。それでそういうモデルでは往々にして分布がガウシアンじゃなかったり依存関係が非線形?だったりして厳密な事後分布を求めるのは困難なんだな。仮に確率変数が離散的な場合であっても、グラフが木構造?でない場合は計算量が爆発して厳密な推論が不可能…木構造って?

f:id:cookie-box:20180305232608p:plain:w60

PRMLの 8.4.2 節が「木」ですよ。

f:id:cookie-box:20180305231302p:plain:w60

木て!

f:id:cookie-box:20180305232608p:plain:w60

グラフの構造が以下のような場合は「木」というそうです。

  • 無向グラフの場合、任意の2つのノード間のパスが1通りしかないグラフを木(無向木)という。
  • 有向グラフの場合、ルートとよばれる親をもたないノードを1つだけもち、他の全てのノードは1つだけ親をもつグラフを木(有向木)という。
※ ここに木を描く。

f:id:cookie-box:20180305231302p:plain:w60

関係ないけどさ、「決定木」とか「ランダムフォレスト」とか、なんで木とか森とかが当然のようにモデルぶってるの? おかしくない?

f:id:cookie-box:20180305232608p:plain:w60

分岐するものの象徴だからじゃないですか。他により適した表現がありますか?

f:id:cookie-box:20180305231302p:plain:w60

そういわれると…分岐するもの…ブロッコリー

f:id:cookie-box:20180305232608p:plain:w60

末端ノード多くないですか!?

f:id:cookie-box:20180305231302p:plain:w60

まあそれで、一般に確率的グラフィカルモデルでは厳密な推論は難しいから近似的な事後分布の推定手法が発達しているわけだけど、近似手法はアブストラクトでもいわれていたように2種類に大別されるって。

この前者がラプラス近似、EP法、ループあり確率伝播、変分推論とかだって。決定論的近似手法はモンテカルロ的手法に比べて速いし、限られた計算資源で高精度に到達しやすいけど、一方で近似誤差はあって、どれくらいの誤差があるのか定量的に見積もりづらいし、この誤差は計算資源を投入すれば減らせるというものでもない。バイアスってそういうことか。どれくらいの精度が見込めるかを出すがモンテカルロ手法より難しいのかな…挙げられてる近似手法を全部知らないから全然わかんないな。それでモンテカルロ的な手法の方はギブスサンプリングにSMCとかで、これは漸近一致性をもつ…って何?

f:id:cookie-box:20180305232608p:plain:w60

おそらくですが…それらは目標の分布にしたがうサンプル点を大量に生成する手法です。サンプル点をいくらでもたくさん生成していいなら、目標の分布が突き止められるはずなんです。つまり、サンプルを増やせば推定分布は目標の分布に収束するということです。しかし、「いくらでもたくさん」は現実には達成されませんし、サンプルの採択/棄却の判断時にも誤差が発生していくかもしれません。

f:id:cookie-box:20180305231302p:plain:w60

まあ2種類のどちらの手法も短所があるから上手く組み合わせようって話になるんだよな。この論文では因子グラフ(factor graph)として表される確率的グラフィカルモデルに対する手法を提案しているって。因子グラフとは…。

f:id:cookie-box:20180305232608p:plain:w60

さっきの「木」の次の節の 8.4.3 節ですね。因子ノードというノードを導入して、同時分布を因子の積でかけるようにしたグラフです。

f:id:cookie-box:20180305231302p:plain:w60

ふーん…それで、因子グラフに対する SMC は既にあるけど、提案手法では SMC の目標分布に twisting function というのを適用して「未来の」変数への依存性も考慮できるようにする? 何じゃそりゃ…。でも SMC において目標分布を「ねじろう」っていうのは近年注目されているアイデアっぽい。状態空間モデルの推定とかではそういうのが取り入れられてるんだけど、それをグラフの推論にも応用したっていうのがこの論文なのか。

次回があればつづく