Type-based MCMC
Percy Liang, Michael I. Jordan, Dan Klein: Type-based MCMC (PDF).
スライドが神。そっちを見ればやりたいことはわかる。
自分用のメモ。間違っていたら指摘してほしい。
3.3 Prior
いきなり事前分布として Dirichlet distribution ではなく Dirichlet process を設定するあたり、難易度が高い。Dirichlet distribution 版の p(z) を導出してみる。
本当はパラメータ θ は |R| 個あるけど、簡略化のために一つにする。複数のパラメータの場合は積を取ればいい。
論文の ascending factorial は表記が気持ち悪いので、普通にガンマ関数同士の割り算にしておく。
Dirichlet process 版の が の和を取った に、 が に代わる。あれっ、Dirichlet process 版は のような気がする。 はスカラーで なんてないように思うのだが。
ascending factorial を見ると面喰うが、少し考えて見れば、当たり前の結果。すでにいくつかのデータを観測した状態で、次の一個が入ってきたときの更新を考える。データの値に対応するカウント が1増えて、 がかけられる。同時に、総数 も1増えて、 がかけられる。これを繰り返すわけだから、階乗が出てくるのは当然。
論文を普通に前から読み始めると、いきなり2節の式 (1) が導出できなくて涙目になったりするのだが、上の式に Dirichlet(1, 1, 1), Multi(m, m, n-1) を入れるとすぐに出てくる。
4.1 Binary Representation
と は基本的には z 全体を表していて、ただし s が b = 0 あるいは b = 1 に対応する状態になっている。最初勘違いして、z の中から s に関係する部分を抜き出したものだと思い込んだ。そうすると、
が意味を成さないので気付いた。
4.2 Sampling One Site
式(4)の導出。ここで 。
4.3 Sampling Multiple Sites
式 (9) の ascending factorial の scope が変。内側の分母は が正しいはず。
その他
普通の多項分布で、事前分布に Dirichlet distribution を設定しているものなら、式 (7),(9) を使えば sampling の計算ができる。もっと複雑なモデルになるとよくわからない。要は多項分布の θ が残っていたら不都合で、消去してあればよさそう。例えば LDA の Griffiths の Gibbs sampling に適用できる? この場合、同じ type というのは、同一文書中の同じ単語?