mots quotidiens.
Daichi Mochihashi (持橋大地) daichi <at> ism.ac.jp by hns, version 2.10-pl1.

先月 2009年05月 来月
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31

2009年05月02日() [n年日記]

#1 Latent Mallows Model

NAACL/HLT 2009に出る予定の論文, "Global Models of Document Structure Using Latent Permutations" [pdf] [code] が面白そうだったので, 読んでみた。
若干仮定が強すぎたりする面はありますが, 興味深い話で, 理解を深めるためにこの場所を使って整理。
これは一言で言うと, 潜在トピックの表れる順序に一般化Mallows Modelを 仮定して文書構造を表現する, という話で, 実は自然言語処理一般に 有益な可能性がある話だと思う。

Mallows Modelが順序の確率分布だということは前から知っていたものの, ランキングの研究をしているわけではないので, 自分にはとりあえず関係ないと思ってこれまでスルーしていた。

Barzilayのグループは以前から文書構造の研究をしていますが, 今回は新しい話で, 「潜在変数の表れる順番には一定の確率的なパターンがある」ことをモデル化している ことになっている。
LDAのようなbag of wordsのモデルはトピックがバラバラになってしまうので, トピックの順番を考慮する方法としては潜在トピックにHMMを仮定するHT-HMMなどが あった *1 ものの, HMMでは前後の局所的な繋がりだけしか見ないので, 文書全体として 前半にはこんな話が現れやすい, 最後にはこんな話題が出やすい, というような 全体的な文書構造はモデル化できない。 この話では, データを特定のドメイン(Wikipediaの記事など)に限った上で, 各パラグラフに一つの潜在トピックを割り当て, *2 その順番に一定のパターンがあるというモデル化になっている。

一般化Mallows Model(GMM)は, あるcanonicalな順序から外れるほど確率が低くなる, というような確率分布で, 潜在変数の場合にはラベリングは自由なので, K個の潜在トピックのcanonicalな 順序を [1 2 .. K] としても一般性を失わない。(中には使われないトピックもある。) *3
このとき, p = [2 1 4 .. K] のような順序の確率は, GMMに従うと

GMM(p|w) = exp(-Σ_j w_j v_j) / ψ(w)
と計算できる。ここで v_j はpの各要素がcanonicalな順序を破っている回数で, GMMはケンドールの相関係数τを, 重みwを使って一般化したものになっている ようだ。(以下知っている人は飛ばして下さい。)
MATLABで書くと, 下のようなコードになる。
function q = mallows(w,p)
% q = mallows(w,p)
% returns the probability of the generalized Mallows model.
% w : vector of weights
% p : permutation (canonical order = 1..n)
% $Id: mallows.m,v 1.1 2009/05/02 13:44:42 daichi Exp $
K = length(w);
if length(p) ~= K
  error('dimensions of w and p must be equal.');
end
q = 1;
for i = 1:K
  j = p(i);
  if j < K
    v(j) = sum(p(1:i) > j);
  end
end
for j = 1:K-1
  q = q * exp(-w(j)*v(j)) ...
      * (1 - exp(-w(j))) / (1 - exp(-w(j)*(K-j+1)));
end
たとえば簡単な例として, canonical order [1 2 3 4] での各要素の重要性が (起承転結のような感じで) w = [2.0 1.0 4.0 3.0] だったとき, GMMに基づく確率は
pGMM(p|w)GMM(p|w/2)GMM(p|w/10)説明
[1 2 3 4]0.56510.28730.0724canonicalな順番と同じ
[2 1 3 4]0.07650.10570.0592重要でない前半を入れ替え
[3 2 1 4]0.01030.02360.0439重要性の高い3番目を1番目と交換
[4 3 2 1]0.0000030.00070.0218 完全に逆
のようになる。 後ろの2つは, 重みを全体に1/2,1/10にした場合で, ディリクレ分布のように, その場合は確率の集中が穏やかになる。

いま, 各文書のトピック毎のパラグラフが, ディリクレ分布からそれぞれサンプルした 多項分布から生起していると考えると, パラグラフの確率はPolya(DCM)分布になり, ここに, そのパラグラフが隠れトピックtを持つ, 全体のGMMによる確率が掛かることで, パラグラフの持つ隠れトピックをGibbsでサンプリングすることができる。
逆に各パラグラフの持つトピックがわかれば, GMMの事後分布は共役で同じ形になる ので, 全体のGMMのパラメータwの事後分布が計算できてサンプルする, というのを 繰り返す模様。

文書全体が共通のトピック構造に従うとか, パラグラフ全体が同じ隠れトピックを持つ とか, かなり制約が強いので, それ自体すぐに一般の文書集合に使えるというもの ではないと思いますが, "GMMを隠れ変数に使う"という部分が目から鱗でした。
目に見える順番があるものにGMMを使うのはランキングの学習では普通で, SMTで単語をリオーダーする場合の確率にも使えるようですが, 一般にトピックに限らず 隠れ変数の順番に一定の大域的構造があるということは普遍的に思えるので, 色々 使いどころがあるのではないか, と思ったのでした。
ちなみに, この結果, 昔(数年前)に知って全く意味不明だった Lebanon の論文, "Conditional Models on the Ranking Poset" [link] が何をやっているか, だいたいわかるように なりました。万歳。


*1: これは僕もやってみましたが, パープレキシティは下がらなかったので 発表しなかった。
*2: ここで, LDAの柔軟性が一つ崩れているのに注意.
*3: データがほぼ同じドメインだと思っているので, 文書が同じ構造に従うという仮定と 同じように, この仮定はやや強すぎるきらいがある。

1 days displayed.
タイトル一覧
カテゴリ分類
 なかのひと
Powered by hns-2.10-pl1, HyperNikkiSystem Project