May30, 2011

Hierarchical Topic Models and the Hierarchical
Topic Models and the
Nested Chinese Restaurant Process
David M. Blei
Michael I. Jordan
University of California Berkeley
Thomas L. Griffiths
Joshua B. Tenenbaum
Massachusetts Institute of Technology
ANIPS 16, 2004 担当 白井
目的
• 適
適切なトピック数の自動決定
な ピ
数 自動決定
‐LDAにおいてトピック数をいくつにするかは大きな問題
階層型トピックモデルのトピック数の決定にNested CRPを提案
階層型トピックモデルのトピック数の決定にNested CRPを提案
• トピックの階層化により関連するトピックを表現可能
CRP(Chinese restaurant過程)
CRP(Chinese restaurant過程)
• DPの構成法の一つ
構成法
zが既知の時、
が既知の時 ziの事後分布は
極限をとると
クラスkに属する確率
新規クラスに属
する確率
mk:クラスkに割り当てられた観測データ数、K:クラスの集合、γ:任意のパラメタ
:クラスkに割り当てられた観測データ数 K:クラスの集合 γ:任意のパラメタ
U:空クラスの集合
CRPの動作
• 適切なトピック数を自動的に決定する仕組み
i番目の客が既存テーブルに座る確率:
番目の客が既存テ ブ に座る確率
i番目の客が新規テーブルに座る確率:
番
客が新規
ブ
座る確率
レストランにて
客
mk
i 1 γ
γ
i 1 γ
1人目の客が入店
空いているテーブルに座る
LDAでは
では 客=単語、テーブル=トピック
客 単語 テ ブル トピ ク
CRPの動作
• 適切なトピック数を自動的に決定する仕組み
i番目の客が既存テーブルに座る確率:
番目 客が既存
ブ に座る確率
mk
i 1 γ
i番目の客が新規テーブルに座る確率:
客が新規
ブ
座 確率
γ
i 1 γ
客
2人目の客が入店
既存のテーブルまたは
既存のテ
ブルまたは
新しいテーブルに着席
客
既存のテーブル
新しいテーブル
CRPの動作
• 適切なトピック数を決定する仕組み
mk
i番目の客が既存テ ブルに座る確率 i 1 γ
i番目の客が既存テーブルに座る確率:
γ
i番目の客が新規テーブルに座る確率:
番目の客が新規テ ブルに座る確率 i 1 γ
客
3人目の客が入店
新しいテーブル
客
既存のテーブル
客
既存のテーブル
CRPの動作
• 適切なトピック数を決定する仕組み
mk
i番目の客が既存テ ブルに座る確率 i 1 γ
i番目の客が既存テーブルに座る確率:
γ
i番目の客が新規テーブルに座る確率:
番目の客が新規テ ブルに座る確率 i 1 γ
客
4番目の客が入店
客
客
各テーブルに
座る確率
新しいテーブル
客
2
4 1 1
1
4 1 1
・客の人数によって適切なテーブル数が決定
1
4 1  1
Nested CRP
Nested CRP
• 旅行客が観光地
旅行客が観光地にL日滞在
滞在
‐旅行客は毎日1回レストランに行く
1日目
レストラン
レストラン
2日目
3日目
レストラン
次の日に行くレストランは
座ったテーブルにより決定
レストラン
レストラン
CRPを重ねることで階層型に適用
レストラン
hLDA
• 階層型の構造をNCRPにより決定
階層型 構造を
り決定
4つデ タの経路
4つデータの経路
βはトピックごとの単
語の生成確率
上のトピックは下のトピックを非共有
hLDAのグラフィカルモデル
• hLDAとLDAでは変数の中身が異なる
と
は変数 中身が異なる
第1階層の
トピック
zの確率分布
(どの階層から単語が
出やすいか)
第2階層の
トピック
第3階層の
トピック
第L階層の
トピック
どの階層のトピックか
ら単語を生成するかの
スイッチ(1~L)
トピックごとの
単語の生成確率
ギブスサンプリングによるパラメタ推定
• 単語についたトピックをカウント
単
た ピ
を ウ
ギブスサンプリングの繰り返し回数
• 局所最適解に陥らないようにするめに
所 適解 陥 な
う する
①:ギブスサンプリング1000回
①
ギ
サン リング
回
②:サンプリング1回ごとに1000回離して100回
③:乱数を変えて① ②を25回繰り返す
③:乱数を変えて①、②を25回繰り返す
事後分布の尤度が最も高い回を実験に使用
実験1:トピックの復元
• コーパスに単語数1000の文書を100個
コ パスに単語数1000の文書を100個
黒色の部分がそのトピッ
クから生成される単語
単語を5×5
の区間分け
復元に成功
hLDAにより6個のサンプル
文書を作成
サンプル文書を使ってギブスサ
ンプリングにより学習した結果
実験2:構造の復元
• hLDAにより50個のコーパスを生成
個
パ を生成
• コーパスからhLDAの構造を学習
コ パスからhLDAの構造を学習
復元したhLDA
のトピック数が
どれくらい違っ
たか
スーパートピック
の数
各スーパートピック
各ス
トピック
のサブトピックの数
実験3:CRPとBayes factorsの比較
実験3:CRPとBayes factorsの比較
• LDAにより210個のコーパスを生成
個
パ を生成
• コーパスからトピック数を学習
コ パスからトピック数を学習
CRPによるトピック数の決定の方が高精度
各トピックが生成しやすい単語
結論
• NCRPにより適切なトピック数を決定すること
適 な ピ
数を決定する
が可能