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.

トピックモデルの話

22,744 views

Published on

Talk about Topic Modeling @cookpad

Published in: Data & Analytics
  • Be the first to comment

トピックモデルの話

  1. 1. トピックモデルの話 cookpad 勉強会? 2015/04/27 Mon. twitterID: @kogecoo
  2. 2. 自己紹介 • @kogecoo • background: 自然言語処理/機械学習 • 構文解析/ノンパラベイズ • 推薦アルゴリズムを主に(と言いたい)、わりと何でも
  3. 3. はじめに • いきなりトピックモデル本2冊出た • 少し前までは書籍で勉強とはいかなかった • → 敷居がだいぶ下がった(twitter調べ) • イケてる本なので両方買いましょう • PRMLでベイズに挫折した人にもオススメ そういう人はついでに これも買いましょう
  4. 4. はじめに • トピックモデルとは • データの背後にある隠れた「トピック」を推定する • 自然言語処理で潜在意味解析という文脈で発展 • ここでのデータは「文書」 • トピック/潜在意味? • → 話題や分野と考えると理解しやすいかも
  5. 5. はじめに • 豊富な応用先 • 文書 • 画像 • 音楽 • etc • 研究だけでなく、実応用も…
  6. 6. 大人の事情で割愛
  7. 7. 大人の事情で割愛
  8. 8. もくじ • はじめに • Latent Semantic Indexing (LSI) • Probabilistic LSI (PLSI) • Latent Dirichlet Allocation (LDA) • おわりに
  9. 9. Latent Semantic Indexing • 検索分野で登場 (Deerwester+, 1988) • のでIndexing(Analysisとも) • 同義語の検索を可能にする目的 • car/automobileともに同じ検索結果を得たい • (地味にpatentが取られていた; expired)
  10. 10. Latent Semantic Indexing 文書ベクトル1 dog automobile car 1 0 catwheel rabbit … 1 0 0 0 … 文書ベクトル2 1 1 0 0 0 0 … 文書ベクトル3 0 1 1 0 0 0 … 文書ベクトル4 0 0 0 1 1 0 … 文書ベクトル5 0 0 0 0 1 1 … 文書ベクトル6 0 0 0 0 1 0 … • 文書-語彙の共起行列 • 語の使われ方でなんとなくグルーピングできそう…
  11. 11. • 特異値分解 • からの 低ランク近似 • Sの特異値の小さいものを削る Latent Semantic Indexing X = U S V 文書 語 文書 トピック トピック 語 X = U S V (対角行列) S
  12. 12. • 低ランク近似 • Sの特異値の小さいものを削る • 文書を特徴づけ易い重要な次元が生き残る •  ノイズ削減 • 重要な次元 → トピック、重要な次元の数 → トピック数 Latent Semantic Indexing X = U S V 文書 語 文書 トピック トピック 語 S
  13. 13. Latent Semantic Indexing • LSIの困った所 • U 、V に現れる値の意味付けが困難 • 負の値も取りうる • トピックの軸は直交するよう選ばれる • 頻度分布としてガウス分布を仮定 • etc…
  14. 14. もくじ • はじめに • Latent Semantic Indexing (LSI) • Probabilistic LSI (PLSI) • Latent Dirichlet Allocation (LDA) • おわりに
  15. 15. Probabilistic LSI • LSIを確率生成モデルとして考え直す(Hoffmann, 1999) • 文書-単語共起行列がどのような経過をたどって作られ たのか? X = U S V 文書 語 文書 トピック トピック 語 S
  16. 16. • PSLIの文書生成 • 文書-単語共起確率 • 文書dが生成 • トピックzが生成 • 単語wが生成 Probabilistic LSI
  17. 17. Probabilistic LSI • ある文書dがあり、その中にある単語wに注目する • この文書のトピックがあるトピックzである確率 • dの中の単語wについて • トピックzにおける出現のしやすさ • dの出現のしやすさ
  18. 18. Probabilistic LSI • 文書dの出現しやすさp(d)とかよくわからない • のでベイズの公式を使って消してしまう • 学習データの尤度を最大化する上記3パラメータをEMで推定
  19. 19. Probabilistic LSI • 性質 • 文書ごとに複数のトピックを持ちうる • (トピック数は与える必要がある) • トピックごとに異なる単語生成確率の分布を持ちうる
  20. 20. Probabilistic LSI • PLSIの問題点 • dは学習コーパス内の文書実体 • 新規文書を自然に扱えない • 推定すべきパラメータ数が多すぎる • 文書数 トピック数 • 過学習し易い
  21. 21. もくじ • はじめに • Latent Semantic Indexing (LSI) • Probabilistic LSI (PLSI) • Latent Dirichlet Allocation (LDA) • おわりに
  22. 22. Latent Dirichlet Allocation • PLSIのベイズ化 (Blei+, 2003) • そうすると何が嬉しいか? • dに直接依存しないトピックの確率分布を得られる • 新規文書も扱える この確率分布を生成する確率分布を考える 事前分布を導入 という言い方をする αはトピック数次元の ベクトル
  23. 23. Latent Dirichlet Allocation • PLSIのベイズ化 • さらに単語分布にスムージングを入れる • ※[Blei+, 2003]で書かれているLDAにはこの拡張が無いもの • Smoothed LDAという名前で同論文で導入 • 多くの参考文書でこちらがLDAとして扱われているので… この確率分布を生成する確率分布を考える βは語彙数次元の ベクトル トピック数分 トピックzにの時の 単語分布のパラメータ
  24. 24. Latent Dirichlet Allocation • PLSIのベイズ化 • ちなみにこのモデルでは • 文書dのことは完全に忘れる • d中の単語集合w=w1, w2…wNで文書を代表させる
  25. 25. Latent Dirichlet Allocation • LDAの文書生成 • トピック数Kは与える • 各トピックごとに単語分布を生成 • 各文書ごとにトピック分布を生成 • 単語のトピックを生成 • 上記単語のトピックに該当する単語分布を選び、単語を生成 • たったこれだけ!
  26. 26. もくじ • はじめに • Latent Semantic Indexing (LSI) • Probabilistic LSI (PLSI) • Latent Dirichlet Allocation (LDA) • おわりに
  27. 27. おわりに • LDAの初出(Blei+; 2003) • 10年以上前 • これを原典として拡張が多く提案されている
  28. 28. おわりに • 著者も一緒にモデリング • トピック間の独立仮定を外す • トピック間の階層構造を導入 • トピック数Kの自動推定 • 教師あり • etc…
  29. 29. おわりに • LDAはベイズモデルの中ではかなりシンプル • のため、拡張の余地が大きかった • かつ性能が良い • のため、広く使われるようになった • (と想像 • ベイズワールド初学者にも最適 • しかも本もある。やるなら今!
  30. 30. まとめ • LSI • 特異値分解を利用した次元縮約 • PSLI • LSIの確率モデル化 • LDA • PLSIのベイズモデル化 • LDAは比較的シンプルだから勉強に良いという話 • 最近出た2冊の本の宣伝
  31. 31. おことわり • 本資料は • 以下の書籍、 • 2013年の統計数理公開講座資料 • 2014年のIBISのチュートリアル • を元に作成されています。問題があればご報告ください。

×