Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Bayesian Nonparametrics 入門      -DPからHDPまで-東京大学 情報基盤センター  中川研究室 助教    佐藤一誠
Dirichlet Process (DP)を一言で  「確率分布→無限次元で離散化」 何を?                          どのくらい?                         𝐻:基底確率分布α→大      𝐺...
• なぜ無限次元離散分布が必要か? – 無限混合モデル• どのように無限次元離散分布を構成するのか? – 構成しない(積分消去):Chinese restaurant process – 構成+計算で工夫:Stick-breaking proc...
準備:有限混合モデル         𝜃1                         𝑝(𝑥|𝜑1 )G                        𝑝(𝑥|𝜑3 )              𝑝(𝑥|𝜑2 )    𝜃3       ...
準備:有限混合モデルG        𝜃1      𝜑3 ~𝐺    𝜃3           𝜑1 ~𝐺            𝜃2                 𝜑1 ~𝐺    𝜑3   𝜑1 𝜑2 Φ 𝜑2 ~𝐺          ...
準備:有限混合モデルG        𝜃1      𝜑3 ~𝐺    𝜃3           𝜑1 ~𝐺            𝜃2                 𝜑1 ~𝐺    𝜑3   𝜑1 𝜑2 Φ 𝜑2 ~𝐺          ...
無限混合モデル              𝐺~𝐷𝑃(𝐻, 𝛼)                        ∞     𝐺        G ∙ =            𝜃𝑘 𝛿 𝜑𝑘 ∙                        𝑘=...
応用例は多数• クラスタリング  – クラス数がData dependent• Entity disambiguation  – Entity数は予めわからない• Word sense disambiguation  – word sense数...
潜在変数表示𝜃1                      𝑧1 = 3          𝜃3            𝑧2 = 1     𝜃2                        𝑧3 = 1               Z   ...
• なぜ無限次元離散分布が必要か? – 無限混合モデル• どのように無限次元離散分布を構成するのか? – 構成しない(積分消去):Chinese restaurant process – 構成+計算で工夫:Stick-breaking proc...
ベイズ学習                           n尤度: p ( x1:n |  )       p( x                          i 1                            ...
𝐾           𝑛𝑘尤度:多項分布 Multi 𝑧1:𝑛 |𝜃 ∝                        𝑘=1    𝜃𝑘 事前分布:(Symmetric) Dirichlet分布                       ...
予測分布:                                      𝛼p(𝑧 𝑛+1 = 𝑘|𝑧1:𝑛 ,𝛼) ∝                    + 𝑛𝑘     𝑧1:𝑛 中にkが出現                ...
予測分布:                              𝛼                                     + 𝑛 𝑘  (𝑘 ∈ {𝑧1:𝑛 })p(𝑧 𝑛+1 = 𝑘|𝑧1:𝑛 ,𝛼) ∝       ...
1    1       21       2           31       2           31       2       3           41       2       3           41       ...
予測分布:                                 𝛼                                        + 𝑛 𝑘  (𝑘 ∈ {𝑧1:𝑛 })p(𝑧 𝑛+1 = 𝑘|𝑧1:𝑛 ,𝛼) ∝ ...
Chinese Restaurant Process (CRP)                                         [Aldous 85]                          𝑛𝑘          ...
Exchangeability                            𝑛 𝑘 /𝑖                                     (𝑘 ∈ {𝑧1:𝑛 }/𝑖)                     ...
ギブスサンプラー他の確率変数を固定して、1つの確率変数をサンプリングしていく𝛼       𝜃    𝛽                      𝜑 𝑘 ~𝑝(𝜑|𝑥1:𝑛 , 𝑧1:𝑛, 𝛽)        𝑧𝑖   𝜑𝑘         ...
周辺化ギブスサンプラー特定の確率変数を積分消去して、確率変数をサンプリングしていく𝛼        𝜃         𝛽                                        𝜑 𝑘 ~𝑝(𝜑|𝑥1:𝑛 , 𝑧1:𝑛,...
周辺化ギブスサンプラー for CRP  潜在変数のみサンプル=テーブルへの配置を繰り返しサンプル  𝛼       𝜃        𝛽          𝑧𝑖       𝜑𝑘                        ∞       ...
• なぜ無限次元離散分布が必要か? – 無限混合モデル• どのように無限次元離散分布を構成するのか? – 構成しない(積分消去):Chinese restaurant process – 構成+計算で工夫:Stick-breaking proc...
Stick-breaking process (SBP)                                      [Sethuraman 94]                              長さ1の棒      ...
SBPによるDPの構成定理                                  [Sethuraman 94]      G ~ DP ( , H )                    G            ...
Dirichlet Processの定義                                 [Ferguson,1973]Ωを全事象、BをBorel集合族とする確率測度Hが定義された可測空間(Ω,B)を考えるαを正の実数とする確率...
SBPの学習無限次元をどのように学習アルゴリズムで実現するかが問題• 変分ベイズ法• Slice sampler※どちらの方法も無限を有限にうまく落としこむところがポイント                         26
変分ベイズ法 for SBP                   [Blei+06]KLq( z1:n ) q( ) q( ) || p ( z1:n ,  ,  | x1:n )        計算かんたん            ...
変分ベイズ法 for SBP             [Blei+06]F q( z1:n )q( )q( )        計算かんたんを最大にする q( z1:n ) q( ) q( ) を求める 最適化かんたん(じゃない場合も...
変分ベイズ法 for SBP                   [Blei+06]F q( z1:n )q( )q( )        計算かんたんを最大にする q( z1:n ) q( ) q( ) を求める 最適化かんたん(じ...
変分ベイズ法 for SBP                  [Blei+06]F q( z1:n )q( )q( )        計算かんたんを最大にする q( z1:n ) q( ) q( ) を求める 最適化かんたん(じゃ...
変分ベイズ法 for SBP                  [Blei+06]F q( z1:n )q( )q( )        計算かんたんを最大にする q( z1:n ) q( ) q( ) を求める 最適化かんたん(じゃ...
変分ベイズ法 for SBP                [Blei+06]∞をどう扱うかが問題         KLq(bk ) || p (bk |  )    k 1         KLq(k ) || p (...
Truncation Trick T   でStick-breakingを打ち切り            p (bk |  )                                   は打ち切りを          q(bT  ...
Slice sampler for SBP                                          [Walker06, Kalli+08 ]         Remaining Stick   p ( zi  k ...
Slice sampler for SBP                                        [Walker06, Kalli+08 ]           Remaining Stick    p ( zi  k...
Slice sampler for SBP                                            [Walker06, Kalli+08 ]                Remaining Stick >uなの...
Bayesian Nonparametrics 入門          -DPからHDPまで-       より高度なモデリングへHierarchical Dirichlet Process                           ...
Motivation: Topic model    𝑝(𝑖𝑡𝑒𝑚|𝑢𝑠𝑒𝑟)                𝑝(𝑡𝑜𝑝𝑖𝑐|𝑢𝑠𝑒𝑟)        𝑝(𝑖𝑡𝑒𝑚|𝑡𝑜𝑝𝑖𝑐)        item (word)              ...
DP構成の復習      G ~ DP ( , H )                    G                   k 1                    k         k  1 ,  2 , ...
ほしいもの      𝜃 𝑢,𝑡 は𝑢𝑠𝑒𝑟毎に異なるが、𝜑 𝑡 は共通1,1 , 1, 2 , 1, 3 , 1, 4   2 ,1 ,  2 , 2 ,  2 , 3 ,  2 , 4 ・・・              ...
DPから複数のGを生成すると      𝜃 𝑢,𝑡 は𝑢𝑠𝑒𝑟毎に異なり、𝜑 𝑡 も異なるG1 ~ DP ( , H )                   G2 ~ DP ( , H )1,1 , 1, 2 , 1, 3 , 1,...
DPから複数のGを生成すると       𝜃 𝑢,𝑡 は𝑢𝑠𝑒𝑟毎に異なり、𝜑 𝑡 も異なるG1 ~ DP ( , H )                   G2 ~ DP ( , H )1,1 , 1, 2 , 1, 3 , 1...
階層Dirichlet過程  [Teh+,2006]      𝜃 𝑢,𝑡 は𝑢𝑠𝑒𝑟毎に異なるが、𝜑 𝑡 は共通                 G0 ~ DP ( , H )G1 ~ DP ( , G0 )               ...
Latent Dirichlet Allocation (LDA)    𝑝(𝑡𝑜𝑝𝑖𝑐|𝑢𝑠𝑒𝑟)                                           [Blei+,2003]        topic    ...
HDP-LDA (SBP版)             [Teh+,2006]                𝛾           𝜃0 ~𝑆𝐵𝑃(𝜃|𝛾)                            For each topic k...
潜在変数の仮定:単語は各々トピックを持つ Apple is an American multinational corporation that designs and sells consumer electronics, computer ...
工学的な利点:疎から疎への射影Bag of words Apple is an American multinational corporation that designs and sells consumer electronics, co...
学習アルゴリズム• LDA  – 変分ベイズ法 [Blei+ JMLR03]  – 周辺化ギブスサンプラー [Griffiths+ 04]  – 周辺化変文ベイズ法 [Teh+ NIPS07]• HDP-LDA  – 変分ベイズ法[Wang+,A...
Cf. 周辺化変分ベイズ法  周辺化ギブスサンプラーからのinspire• 変分ベイズ法KLq( z1:n )q( )q( ) || p( z1:n , ,  | x1:n )• 周辺化変分ベイズ法                 ...
まとめ• Dirichlet過程  – Chinese restaurant process  – Stick-breaking process• 階層Dirichlet過程, Latent Dirichlet allocation• 学習アル...
Upcoming SlideShare
Loading in …5
×

Bayesian Nonparametrics入門 DPからHDPまで

5,647 views

Published on

Bayesian Nonparametrics入門 DPからHDPまで

  1. 1. Bayesian Nonparametrics 入門 -DPからHDPまで-東京大学 情報基盤センター 中川研究室 助教 佐藤一誠
  2. 2. Dirichlet Process (DP)を一言で 「確率分布→無限次元で離散化」 何を? どのくらい? 𝐻:基底確率分布α→大 𝐺~𝐷𝑃(𝐻, 𝛼) α→小 Hを αくらい 𝐺 𝐺 𝑑※𝛼 → ∞で𝐺 → 𝐻 2
  3. 3. • なぜ無限次元離散分布が必要か? – 無限混合モデル• どのように無限次元離散分布を構成するのか? – 構成しない(積分消去):Chinese restaurant process – 構成+計算で工夫:Stick-breaking process 3
  4. 4. 準備:有限混合モデル 𝜃1 𝑝(𝑥|𝜑1 )G 𝑝(𝑥|𝜑3 ) 𝑝(𝑥|𝜑2 ) 𝜃3 𝜃2 𝜑3 𝜑1 𝜑2 Φ 𝑋 パラメータ空間 データの空間※本スライドでは、 ※本スライドでは、パラメータの混合比を𝜃で表現 パラメータを𝜑で表現します。します。Gとは異なるので注意 ベクトルの場合もあるし、が必要です 平均と分散のように複数の統 計量を表すこともある。 この考え方が重要 混合分布はパラメータ空間上での離散分布 4
  5. 5. 準備:有限混合モデルG 𝜃1 𝜑3 ~𝐺 𝜃3 𝜑1 ~𝐺 𝜃2 𝜑1 ~𝐺 𝜑3 𝜑1 𝜑2 Φ 𝜑2 ~𝐺 𝑥1 𝑥3 𝑥2 𝑥4 ~𝑝(𝑥|𝜑2 ) パラメータ空間 ~𝑝(𝑥|𝜑3 ) ~𝑝(𝑥|𝜑1 )混合比𝜃 𝑘 はパラメータ𝜑 𝑘 の出現確率→Φ上の離散分布(混合分布)Gは以下のように書ける 𝐾(=3) G ∙ = 𝜃𝑘 𝛿 𝜑𝑘 ∙ 𝑘=1 𝐾(=3) e.g., G 𝜑2 = 𝑘=1 𝜃 𝑘 𝛿 𝜑 𝑘 𝜑2 =𝜃2 5
  6. 6. 準備:有限混合モデルG 𝜃1 𝜑3 ~𝐺 𝜃3 𝜑1 ~𝐺 𝜃2 𝜑1 ~𝐺 𝜑3 𝜑1 𝜑2 Φ 𝜑2 ~𝐺 𝑥1 𝑥3 𝑥2 𝑥4 ~𝑝(𝑥|𝜑2 ) パラメータ空間 ~𝑝(𝑥|𝜑3 ) ~𝑝(𝑥|𝜑1 )混合比𝜃 𝑘 はパラメータ𝜑 𝑘 の出現確率→ Φ上の離散分布(混合分布)Gは以下のように書ける 𝐾→∞無限混合 G ∙ = 𝜃𝑘 𝛿 𝜑𝑘 ∙ 無限次元 𝑘=1 混合分布はパラメータ空間上での離散分布 6
  7. 7. 無限混合モデル 𝐺~𝐷𝑃(𝐻, 𝛼) ∞ 𝐺 G ∙ = 𝜃𝑘 𝛿 𝜑𝑘 ∙ 𝑘=1 Φ Φ上の無限次元離散分布 𝜑 𝑘 ~𝐺学習 𝑥 𝑖 ~𝑝(𝑥|𝜑 𝑘 ) 𝐺|𝑥1:𝑛 Φ 7
  8. 8. 応用例は多数• クラスタリング – クラス数がData dependent• Entity disambiguation – Entity数は予めわからない• Word sense disambiguation – word sense数は単語ごとに異なる• 画像の領域分割• 動画のトラッキングe.t.c. 8
  9. 9. 潜在変数表示𝜃1 𝑧1 = 3 𝜃3 𝑧2 = 1 𝜃2 𝑧3 = 1 Z 𝑧4 = 21 2 3 𝑥1 𝑥3 𝑥2 𝑥4 ~𝑝(𝑥|𝜑2 ) 潜在変数空間 ~𝑝(𝑥|𝜑3 ) ~𝑝(𝑥|𝜑1 ) 𝛼 𝜃 𝛽 𝜑 𝑘 ~𝐻(𝜑|𝛽) 𝑧𝑖 𝜑𝑘 𝜃~𝐷𝑖𝑟(𝜃|𝛼) 無限次元 にできる? 𝐾→∞ 𝑧 𝑖 ~𝑀𝑢𝑙𝑡𝑖(𝑧|𝜃) 𝑥𝑖 𝑛 𝑥 𝑖 ~𝑝(𝑥|𝜑 𝑧 𝑖 ) 9
  10. 10. • なぜ無限次元離散分布が必要か? – 無限混合モデル• どのように無限次元離散分布を構成するのか? – 構成しない(積分消去):Chinese restaurant process – 構成+計算で工夫:Stick-breaking process 10
  11. 11. ベイズ学習 n尤度: p ( x1:n |  )   p( x i 1 i |)事前分布: p ( )事後分布: p ( | x1:n )  p ( x1:n |  ) p ( ) 事後分布の最適性 [Zelnner1988]予測分布:p ( xn 1 | x1:n )   p( x n 1 |  ) p ( | x1:n )d 予測分布の最適性 [Aitchison1975] 11
  12. 12. 𝐾 𝑛𝑘尤度:多項分布 Multi 𝑧1:𝑛 |𝜃 ∝ 𝑘=1 𝜃𝑘 事前分布:(Symmetric) Dirichlet分布 𝐾 𝛼 𝐷𝑖𝑟 𝜃|𝛼 ∝ 𝜃𝑘 𝐾 −1 𝑘=1 事後分布:Dirichlet分布p(𝜃|𝑧1:𝑛 ,𝛼)=Multi 𝑧1:𝑛 |𝜃 𝐷𝑖𝑟 𝜃|𝛼 𝛼 𝐾 +𝑛 𝑘 −1 =Dir 𝜃|𝛼 + 𝑛 ∝ 𝑘=1 𝜃𝑘 𝐾 予測分布:p(𝑧 𝑛+1 |𝑧1:𝑛 ,𝛼)= Multi 𝑧 𝑛+1 |𝜃 𝐷𝑖𝑟 𝜃|𝑧1:𝑛 , 𝛼 𝑑𝜃 𝛼 もう少しp(𝑧 𝑛+1 = 𝑘|𝑧1:𝑛 ,𝛼) ∝ + 𝑛𝑘 詳しく見てみよう 𝐾 12
  13. 13. 予測分布: 𝛼p(𝑧 𝑛+1 = 𝑘|𝑧1:𝑛 ,𝛼) ∝ + 𝑛𝑘 𝑧1:𝑛 中にkが出現 𝐾 した場合𝛼 𝛼 𝛼 𝛼 𝛼 +1 5 5 +3 5 +1 5 𝛼5 + 𝑛 𝑘 (𝑛 𝑘 >0) ∝ 𝐾 1 2 3 4 5 𝛼 (𝑛 𝑘 =0) 𝐾 𝛼 𝛼 𝛼 𝛼 𝛼 5 +1 +3 5 5 +1 5 (5 − 3) + 𝑛 𝑘    (𝑘 ∈ {𝑧1:𝑛 }) ∝ 𝐾 𝛼 1 3 4 2 5 𝐾 − 𝐾 + (𝑘 ∉ {𝑧1:𝑛 }) 𝐾 𝐾 + = | 𝑘: 𝑛 𝑘 > 0 | 𝑧 𝑛+1 が新しいk になる確率 13
  14. 14. 予測分布: 𝛼 + 𝑛 𝑘  (𝑘 ∈ {𝑧1:𝑛 })p(𝑧 𝑛+1 = 𝑘|𝑧1:𝑛 ,𝛼) ∝ 𝐾 𝛼 + 𝛼 𝛼 +1 +3 𝛼 +1 𝛼 (5 − 3) 𝛼 − 𝐾 (𝑘 = 𝐾 + + 1) 5 5 5 5 𝐾 1 3 4 2 5 そもそも箱の添字自体は 𝛼 𝛼 𝛼 意味が無い +1 +3 +1 𝛼 (5 − 3) ⇒出現順にラベル付する 5 5 5 5 (次スライド参照) 1 2 3 4 14
  15. 15. 1 1 21 2 31 2 31 2 3 41 2 3 41 2 3 4 5 15
  16. 16. 予測分布: 𝛼 + 𝑛 𝑘  (𝑘 ∈ {𝑧1:𝑛 })p(𝑧 𝑛+1 = 𝑘|𝑧1:𝑛 ,𝛼) ∝ 𝐾 𝛼 + 𝛼 𝛼 +1 +3 𝛼 +1 𝛼 (5 − 3) 𝛼 − 𝐾 (𝑘 = 𝐾 + + 1) 5 5 5 5 𝐾 𝐾 = 𝐾 + となると 1 3 4 2 5 新しい番号が現れる確率は0 𝛼 𝛼 𝛼 𝛼 +1 +3 +1 (5 − 3) 5 5 5 5 𝐾→∞とすると 1 2 3 4 1 3 1 α 𝑛 𝑘 (𝑘 ∈ {𝑧1:𝑛 }) ∝ 1 2 3 4 𝛼 (𝑘 = 𝐾 + + 1) 16
  17. 17. Chinese Restaurant Process (CRP) [Aldous 85] 𝑛𝑘 (𝑘 ∈ {𝑧1:𝑛 }) 𝑛+𝛼p(𝑧 𝑛+1 = 𝑘|𝑧1:𝑛 ,𝛼) = 𝛼 (𝑘 = 𝐾 + + 1) 𝑛+𝛼 3 1 𝛼 5+ 𝛼 5+ 𝛼 5+ 𝛼 1 5+ 𝛼 17
  18. 18. Exchangeability 𝑛 𝑘 /𝑖 (𝑘 ∈ {𝑧1:𝑛 }/𝑖) 𝑛−1+𝛼p(𝑧 𝑖 = 𝑘|𝑧1:𝑛 /𝑖 ,𝛼) = 𝛼 (𝑘 = 𝐾 + + 1) 𝑛−1+𝛼 2 1 𝛼 4+ 𝛼 4+ 𝛼 4+ 𝛼 1 4+ 𝛼 18
  19. 19. ギブスサンプラー他の確率変数を固定して、1つの確率変数をサンプリングしていく𝛼 𝜃 𝛽 𝜑 𝑘 ~𝑝(𝜑|𝑥1:𝑛 , 𝑧1:𝑛, 𝛽) 𝑧𝑖 𝜑𝑘 𝐾 𝜃~𝑝(𝜃|𝑧1:𝑛, 𝛼) 𝑥𝑖 𝑧 𝑖 ~𝑝(𝑧|𝑥 𝑖 , 𝜃, 𝜑) 𝑛 19
  20. 20. 周辺化ギブスサンプラー特定の確率変数を積分消去して、確率変数をサンプリングしていく𝛼 𝜃 𝛽 𝜑 𝑘 ~𝑝(𝜑|𝑥1:𝑛 , 𝑧1:𝑛, 𝛽) 𝑧𝑖 𝜑𝑘 𝐾 𝜃~𝑝(𝜃|𝑧1:𝑛, 𝛼) 𝑥𝑖 𝑛 𝑧 𝑖 ~𝑝 (𝑥 𝑖 |𝑧 𝑖 , 𝑥1:𝑛 /𝑖 , 𝑧1:𝑛 /𝑖 ,𝛽) 𝑝 (𝑧 𝑖 |𝑧1:𝑛 /𝑖 ,𝛼)𝑝 (𝑥 𝑖 |𝑧 𝑖 , 𝑥1:𝑛 /𝑖 ,𝛽)= 𝑝 𝑥 𝑖 𝜑 𝑧 𝑖 𝑝(𝜑|𝑥1:𝑛 /𝑖 , 𝑧1:𝑛 /𝑖 𝛽) 𝑑𝜑𝑝 (𝑧 𝑖 |𝑧1:𝑛 /𝑖 ,𝛼)= 𝑝 𝑧 𝑖 𝜃 𝑝(𝜃|𝑧1:𝑛 /𝑖 𝛼) 𝑑𝜑CRPでは、そもそも周辺化しているので、周辺化ギブスサンプラーと相性が良い 20
  21. 21. 周辺化ギブスサンプラー for CRP 潜在変数のみサンプル=テーブルへの配置を繰り返しサンプル 𝛼 𝜃 𝛽 𝑧𝑖 𝜑𝑘 ∞ 𝑥𝑖 𝑛 𝑛 𝑘 /𝑖 𝑝 (𝑥 𝑖 |𝑧 𝑖 , 𝑥1:𝑛 /𝑖 , 𝑧1:𝑛 /𝑖 ,𝛽) (𝑘 ∈ {𝑧1:𝑛 }/𝑖)𝑧 𝑖~ 𝑛−1+ 𝛼 𝛼 𝑝 (𝑥 𝑖 |𝛽) (𝑘 = 𝐾 + + 1) 𝑛−1+ 𝛼 𝑝 (𝑥 𝑖 |𝛽)= 𝑝 𝑥 𝑖 𝜑 𝑝(𝜑|𝛽) 𝑑𝜑 21
  22. 22. • なぜ無限次元離散分布が必要か? – 無限混合モデル• どのように無限次元離散分布を構成するのか? – 構成しない(積分消去):Chinese restaurant process – 構成+計算で工夫:Stick-breaking process 22
  23. 23. Stick-breaking process (SBP) [Sethuraman 94] 長さ1の棒 b1 ~ Beta (1,  ) 1  b1 b2 ~ Beta (1,  ) ・・・ 1 k 1  2  b2 (1  b1 ) k  bk  (1  bl ) l 1 3k  1,2  4 ・・・ 23
  24. 24. SBPによるDPの構成定理 [Sethuraman 94] G ~ DP ( , H )  G   k 1 k k 1 ,  2 ,  3 ,  4  ~ SBP ( )・・・ ・・・  3 1  2  4 1 ,  2 ,  3 ,  4 ~H 24
  25. 25. Dirichlet Processの定義 [Ferguson,1973]Ωを全事象、BをBorel集合族とする確率測度Hが定義された可測空間(Ω,B)を考えるαを正の実数とする確率測度Gに対して、Ωの任意の分割A1,...Amを考えたとき,(G ( A1 ), , G ( Am )) ~ Dir (H ( A1 ), , H ( Am ))のとき、GはDirichlet Processに従う 25
  26. 26. SBPの学習無限次元をどのように学習アルゴリズムで実現するかが問題• 変分ベイズ法• Slice sampler※どちらの方法も無限を有限にうまく落としこむところがポイント 26
  27. 27. 変分ベイズ法 for SBP [Blei+06]KLq( z1:n ) q( ) q( ) || p ( z1:n ,  ,  | x1:n ) 計算かんたん 計算困難 を最小にする q( z1:n ) q( ) q( ) を求める 最適化困難 KL[q | p] log p( x1:n ) F[q] 27
  28. 28. 変分ベイズ法 for SBP [Blei+06]F q( z1:n )q( )q( ) 計算かんたんを最大にする q( z1:n ) q( ) q( ) を求める 最適化かんたん(じゃない場合も結構あるけど) KL[q | p] log p( x1:n ) F[q] 28
  29. 29. 変分ベイズ法 for SBP [Blei+06]F q( z1:n )q( )q( ) 計算かんたんを最大にする q( z1:n ) q( ) q( ) を求める 最適化かんたん(じゃない場合も結構あるけど) F  E log p ( x1:n , z1:n ,  ,  ) 計算かんたん  S q( ) (E[log p]はじゃない場合も)    S q(k ) S:エントロピー 29 k 1
  30. 30. 変分ベイズ法 for SBP [Blei+06]F q( z1:n )q( )q( ) 計算かんたんを最大にする q( z1:n ) q( ) q( ) を求める 最適化かんたん(じゃない場合も結構あるけど)F  E log p ( x1:n | z1:n ,  ) p ( z1:n |  )  KLq( ) || p ( |  )    KLq(k ) || p(k |  ) k 1 30
  31. 31. 変分ベイズ法 for SBP [Blei+06]F q( z1:n )q( )q( ) 計算かんたんを最大にする q( z1:n ) q( ) q( ) を求める 最適化かんたん(じゃない場合も結構ある)F  E log p ( x1:n | z1:n ,  ) p ( z1:n |  )実際にはここはSBPなので  KLq( ) || p( |  )    KLq(k ) || p(k |  ) k 1 31
  32. 32. 変分ベイズ法 for SBP [Blei+06]∞をどう扱うかが問題    KLq(bk ) || p (bk |  ) k 1    KLq(k ) || p (k |  ) k 1 32
  33. 33. Truncation Trick T でStick-breakingを打ち切り p (bk |  ) は打ち切りを q(bT  1)  1 仮定しないことに注意k  T では q(k )  p (k |  ) T   KLq(bk ) || p (bk |  ) k 1 T   KLq(k ) || p (k |  ) k 1 33
  34. 34. Slice sampler for SBP [Walker06, Kalli+08 ] Remaining Stick p ( zi  k |  )   k p ( zi  k , u |  )   (u   k ) p ( zi  k |  ) 1 2 3  k 1   p( z  k , u |  )du k  bk  (1  bl ) i u 0 l 1 k  1,2     (u   u 0 k )du   k 34
  35. 35. Slice sampler for SBP [Walker06, Kalli+08 ] Remaining Stick p ( zi  k |  )   k p ( zi  k , u |  )   (u   k ) 1 2 3 p (u | zi  k ,  )  U [0,  k ] 一様分布 k 1 k  bk  (1  bl ) p ( zi  k | u,  )  l 1bk ~ p (bk | z1:n ,  ) 1 u  k k  1,2  0 otherwise u以下の棒は確率0 になるので無視できる 35
  36. 36. Slice sampler for SBP [Walker06, Kalli+08 ] Remaining Stick >uなので Remaining Stick<uで止めるu Break Sticks u 1 2 3 1 2 3 4 5 6 7u ~ p (u | zi  1,  )  U [0, 1 ] 実質的には有限個からの p ( zi  k | u,  )  サンプルになる u  k 4次元の一様離散分布 1  0 otherwise 36
  37. 37. Bayesian Nonparametrics 入門 -DPからHDPまで- より高度なモデリングへHierarchical Dirichlet Process 37
  38. 38. Motivation: Topic model 𝑝(𝑖𝑡𝑒𝑚|𝑢𝑠𝑒𝑟) 𝑝(𝑡𝑜𝑝𝑖𝑐|𝑢𝑠𝑒𝑟) 𝑝(𝑖𝑡𝑒𝑚|𝑡𝑜𝑝𝑖𝑐) item (word) topic item (word) topicuser user(doc) (doc) T  t 1 u ,t  t ,i 実は、DP単体では構成できない u ,t  t ,i t 1 なぜ? 38
  39. 39. DP構成の復習 G ~ DP ( , H )  G   k 1 k k 1 ,  2 ,  3 ,  4  ~ SBP ( )・・・ ・・・  3 1  2  4 1 ,  2 ,  3 ,  4 ~H 39
  40. 40. ほしいもの 𝜃 𝑢,𝑡 は𝑢𝑠𝑒𝑟毎に異なるが、𝜑 𝑡 は共通1,1 , 1, 2 , 1, 3 , 1, 4   2 ,1 ,  2 , 2 ,  2 , 3 ,  2 , 4 ・・・ ・・・ ・・・ ・・・  3 1  2  4  3 1  2  4 40
  41. 41. DPから複数のGを生成すると 𝜃 𝑢,𝑡 は𝑢𝑠𝑒𝑟毎に異なり、𝜑 𝑡 も異なるG1 ~ DP ( , H ) G2 ~ DP ( , H )1,1 , 1, 2 , 1, 3 , 1, 4   2 ,1 ,  2 , 2 ,  2 , 3 ,  2 , 4 ・・・ ・・・ ・・・ ・・・  3 1  2  4  3  1  2  4 ~H ~HHは連続分布なので、共通する𝜑の生成確率0 41
  42. 42. DPから複数のGを生成すると 𝜃 𝑢,𝑡 は𝑢𝑠𝑒𝑟毎に異なり、𝜑 𝑡 も異なるG1 ~ DP ( , H ) G2 ~ DP ( , H )1,1 , 1, 2 , 1, 3 , 1, 4   2 ,1 ,  2 , 2 ,  2 , 3 ,  2 , 4  無限次元の離散分布に・・・ すれば良いのでは? ・・・ ・・・ ・・・  3 1  2  4  3  1  2  4 ~H ~HHは連続分布なので、共通する𝜑の生成確率0 42
  43. 43. 階層Dirichlet過程 [Teh+,2006] 𝜃 𝑢,𝑡 は𝑢𝑠𝑒𝑟毎に異なるが、𝜑 𝑡 は共通 G0 ~ DP ( , H )G1 ~ DP ( , G0 ) G2 ~ DP ( , G0 ) 1,1 , 1, 2 , 1, 3 , 1, 4   2 ,1 ,  2 , 2 ,  2 , 3 ,  2 , 4 ・・・ ・・・ ・・・ ・・・  3 1  2  4  3 1  2  4 ~G 0 ~G 0 𝐺0 は離散分布なので、共通する𝜑が生成可能 43
  44. 44. Latent Dirichlet Allocation (LDA) 𝑝(𝑡𝑜𝑝𝑖𝑐|𝑢𝑠𝑒𝑟) [Blei+,2003] topic user For each topic k: (doc) 𝜑 𝑘 ~𝐷𝑖𝑟(𝜑|𝛽) For each user(doc.) j:𝛼 𝜃𝑗 𝛽 𝜃 𝑗 ~𝐷𝑖𝑟(𝜃|𝛼) For each item(word) i: 𝑧𝑖 𝜑𝑘 𝑧 𝑗,𝑖 ~𝑀𝑢𝑙𝑡𝑖(𝑧|𝜃) 𝐾 𝑝(𝑖𝑡𝑒𝑚|𝑡𝑜𝑝𝑖𝑐) 𝑥 𝑗,𝑖 ~𝑀𝑢𝑙𝑡𝑖(𝑥|𝜑 𝑧 𝑖 ) 𝑛 𝑗 𝑥 𝑗,𝑖 item (word) 𝑁 topic 44
  45. 45. HDP-LDA (SBP版) [Teh+,2006] 𝛾 𝜃0 ~𝑆𝐵𝑃(𝜃|𝛾) For each topic k:𝛼 𝜃0 𝜑 𝑘 ~𝐷𝑖𝑟(𝜑|𝛽) For each user(doc.) j: 𝜃𝑗 𝛽 𝜃 𝑗 ~𝐷𝑃(𝜃|𝛼, 𝜃0 ) For each item(word) i: 𝑧𝑖 𝜑𝑘 𝑧 𝑗,𝑖 ~𝑀𝑢𝑙𝑡𝑖(𝑧|𝜃) ∞ 𝑥 𝑗,𝑖 ~𝑀𝑢𝑙𝑡𝑖(𝑥|𝜑 𝑧 𝑖 ) 𝑛 𝑗 𝑥 𝑗,𝑖 𝑁 45
  46. 46. 潜在変数の仮定:単語は各々トピックを持つ Apple is an American multinational corporation that designs and sells consumer electronics, computer software, and personal computers.The apple forms a tree that is smalland deciduous, reaching 3 to 12 metres (9.8 to39 ft) tall, with a broad, often densely twiggycrown. 46
  47. 47. 工学的な利点:疎から疎への射影Bag of words Apple is an American multinational corporation that designs and sells consumer electronics, computer software, and personal computers.Bag of Topics 5 1 1 4 4 2 1 10 1 2 2 5 5 5 1 5 5 47
  48. 48. 学習アルゴリズム• LDA – 変分ベイズ法 [Blei+ JMLR03] – 周辺化ギブスサンプラー [Griffiths+ 04] – 周辺化変文ベイズ法 [Teh+ NIPS07]• HDP-LDA – 変分ベイズ法[Wang+,AISTATS11] – 周辺化ギブスサンプラー[Teh+ 06] – 周辺化変分ベイズ法[Teh+ NIPS08, Sato+ KDD2012] Simplify 48
  49. 49. Cf. 周辺化変分ベイズ法 周辺化ギブスサンプラーからのinspire• 変分ベイズ法KLq( z1:n )q( )q( ) || p( z1:n , ,  | x1:n )• 周辺化変分ベイズ法 積分消去KLq( z1:n ) q( ,  | z1:n ) || p ( z1:n ,  ,  | x1:n )更新式:q( zi  k )  exp E [log p ( z1:n , x1:n )] /i q ( z1:n ) 解析的に期待値計算不可能→log pのテイラー展開で近似 (HDP-)LDAの場合は0次近似が性能が良い[Asuncion+,UAI09] → Why? 理論解析 [Sato+,ICML2012] 49
  50. 50. まとめ• Dirichlet過程 – Chinese restaurant process – Stick-breaking process• 階層Dirichlet過程, Latent Dirichlet allocation• 学習アルゴリズム – (周辺化)変分ベイズ法 – (周辺化)ギブスサンプラー – Sliceサンプラー 50

×