SlideShare uma empresa Scribd logo
1 de 21
Baixar para ler offline
トピックモデル



 難しい話
考え方、アウトプットイメージ、履歴、ツール、事例

 超難しい話
ベイズ統計、生成モデル、サンプリング

 超難しい話
Dirichlet分布




                  1
トピックモデルのアウトプット

                                          言葉




                            トピック
             言葉
文書 (または顧客)




                                   トピックの定義
                                   ぞれぞれのトピックに対してどうい
                                   う言葉が大事


                                         トピック


                            文書 (または顧客)
                                                トピックの割合
                                                それぞれのユーザに
                                                ついて、どういうトピッ
                                                クが大事



                        2
履歴の概要
●LSA (1988)
フレームワーク:線型代数学 (マトリクス対角化)




    文書




                                 出典: http://en.wikipedia.org/wiki/Latent_semantic_analysis



  言葉
         ・問題: アウトプットは使いにくい

                             3
履歴の概要
●PLSA (1999)
確率理論のフレームワーク

                              文書        トピック     言葉




出典: http://en.wikipedia.org/wiki/PLSA

                                               言葉数    文書数




 ・モデル学習: EMアルゴリズム
 ・問題: 過剰適合が多い (特に文書群が小さい場合)
                                           4
履歴の概要
 ●LDA(2003)
 最初の本物のトピックモデル
 ベイズ統計フレームワーク


                                                 ある言葉
                           文書に                                                  トピックに
                                                 のトピック              言葉
                         トピックの分布                                               言葉の分布
   ハイパー                                                                                     ハイパー
  パラメーター                                                                                   パラメーター




出典: http://en.wikipedia.org/wiki/Latent_Dirichlet_allocation



                                                          言葉数            文書数            トピック数

                                                                5
LDAの展開
LDAに基づくモデル:
●パチンコモデル: トピックの間の関連を考慮
例えば、トピック「データ分析」があるなら、トピック「コンピューター」もある可能性が高いけど、トピック
「ファッション」の確率が低い

●作者・トピックモデル: 作者によりトピックの確率が変わる

●関連トピックモデル: モデルの関連を考慮
例えば:html資料のハイパーリンク、論文の引用




LDAは言葉だけでなく、運用範囲は今研究中
例えば:画像処理




                           6
LDAツール:                         MALLET
MALLETとは、「MAchine Learning for Language Toolkit」
http://mallet.cs.umass.edu/index.php
 Andrew McCallum, of the University of Massachusetts Amherst
無料、オープンソース、Javaベース




                                                       7
 難しい話
考え方、履歴、アウトプットイメージ、ツール、事例

 超難しい話
ベイズ統計、生成モデル、サンプリング

 超難しい話
Dirichlet分布




                     8
ベイズ統計の基本原則
考え方:データの構造について強気で仮説を立つ
E → H の代わりに、H → E をモデル化する



                     H                 E


E: データ、観測出来る情報 例えば: 文書群
H: 隠れてる情報 例えば:トピックの定義、文書ごとのトピック割合
        :生成モデル、全ての情報の構造 (仮説に基づく)



計算したいこと: P( H | E)
データから、トピックを計算
でも、そのままで計算しにくい
                     𝑷(𝑯)
ベイズルール: P(H | E) =        * P(E | H)   ∝       P(H)   *   P(E | H)
                     𝑷(𝑬)
          事後確率                             事前確率            尤度



                                           仮説する           生成モデルから
                                                          簡単で計算する
                                           9
LDAの生成モデル
仮説: あるロボットが文書群を作りました。
そのロボットは生成モデルを使って文書ずつ、言葉ずつ、文書群を書きました




For (1:K) :
         トピックを生成 β
For each文書 :
         文書のトピック分布を生成 θ
         For each 言葉 :
                   トピックをランダムで選択 Z
                   言葉をランダムで選択 W




                                     10
                                    出典: http://en.wikipedia.org/wiki/Latent_Dirichlet_allocation
LDA生成モデル(例)
For (1:トピック数) :
          トピックを生成

 トピックID        キャンペーン   限定          日焼け    肌      風呂     。。。
 1             12%      8%          0.6%   0.2%   1.2%
 2             1.3%     0.6%        9%     14%    2%
 3             0.3%     0.8%        0.6%   2%     16%


          各トピック= 全ての有り得る言葉に対しての確率分布




                               11
LDA生成モデル(例)
For (1:トピック数) :
          トピックを生成

 トピックID        キャンペーン       限定          日焼け    肌            風呂     。。。
 1             12%          8%          0.6%   0.2%         1.2%
 2             1.3%         0.6%        9%     14%          2%
 3             0.3%         0.8%        0.6%   2%           16%

For each文書 :
         文書のトピック分布を生成

          文書          トピック1        トピック1            トピック3
          1           56%          24%              20%




                                   12
LDA生成モデル(例)
For (1:トピック数) :
          トピックを生成

 トピックID            キャンペーン          限定           日焼け      肌             風呂     。。。
 1                 12%             8%           0.6%     0.2%          1.2%
 2                 1.3%            0.6%         9%       14%           2%
 3                 0.3%            0.8%         0.6%     2%            16%

For each文書 :
         文書のトピック分布を生成

       文書                  トピック1           トピック2               トピック3
       1                   56%             24%                 20%


                                                       この分布によりランダム抽出
           For each 言葉 :

                     トピックをランダムで選択:        トピック1




                                           13
LDA生成モデル(例)
For (1:トピック数) :
          トピックを生成

 トピックID          キャンペーン            限定           日焼け      肌             風呂     。。。
 1               12%               8%           0.6%     0.2%          1.2%
 2               1.3%              0.6%         9%       14%           2%
 3               0.3%              0.8%         0.6%     2%            16%


For each文書 :                                         この分布によりランダム抽出
         文書のトピック分布を生成

       文書                  トピック1           トピック2               トピック3
       1                   56%             24%                 20%



           For each 言葉 :

                       トピックをランダムで選択:             トピック1

                       言葉をランダムで選択:        “限定”


                                           14
モンテカルロの基本原則
P(β 、 θ 、 Z | W) を計算したい。
それは多次元と連続値の確率密度なので正しく計算出来ない
→ サンプリングを使って確率密度を近似する



For each サンプル:
  生成モデルを使って{β 、 θ 、 Z}を生成
   生成モデルを元に生成された{β、 θ、 Z}の事前確率を計算 → P (β、 θ、 Z )
   生成モデルと{β 、 θ 、 Z}により W                            の尤度を計算            → P (W | β、 θ、 Z )
   事前確率と尤度からサンプルの事後確率を計算                                            P(β 、 θ 、 Z | W) ∝ P (β、θ、Z) * P (W | β、θ、Z )

サンプルが多かったら多いほど事後確率の分布に近づく




出典: http://en.wikipedia.org/wiki/Latent_Dirichlet_allocation
                                                               15
 難しい話
考え方、履歴、アウトプットイメージ、ツール、事例

 超難しい話
ベイズ統計、生成モデル、サンプリング

 超難しい話
Dirichlet分布




                     16
なぜ 「LDA」?

  For (1:トピック数) :
            トピックを生成 β           Dirichlet 分布
  For each文書 :
            文書のトピック分布を生成 θ                 Dirichlet 分布
            For each 言葉 :
                      トピックをランダムで選択 Z                     Categorical 分布
                      言葉をランダムで選択 W                   Categorical 分布




出典: http://en.wikipedia.org/wiki/Latent_Dirichlet_allocation




                                                               17
Categorical分布とは?
For (1:トピック数) :
          トピックを生成 β           Dirichlet 分布
For each文書 :
          文書のトピック分布を生成 θ                 Dirichlet 分布
          For each 言葉 :
                    トピックをランダムで選択 Z                     Categorical 分布
                    言葉をランダムで選択 W                   Categorical 分布



トピックID      キャンペーン        限定          日焼け           肌            風呂          。。。

1           x1 = 12%      x2 = 8%     x3 = 0.6%     x4 = 0.2%    x5 = 1.2%



K値があり得る。 K=言葉種類の全体数

全ての値 i に対して、確率 xi がある。
確率分布なので:
 x1 + x2 + x3 + 。。。 + xk = 1




                                             18
Dirichlet分布とは?
For (1:トピック数) :
          トピックを生成 β           Dirichlet 分布
For each文書 :
          文書のトピック分布を生成 θ                 Dirichlet 分布
          For each 言葉 :
                    トピックをランダムで選択 Z                     Categorical 分布
                    言葉をランダムで選択 W                   Categorical 分布


Categorical 分布を生成する為
⇒ 確率分布の確率分布 (!)

 キャンペーン           限定          日焼け          肌                風呂          。。。
 x1 = 12%         x2 = 8%     x3 = 0.6%    x4 = 0.2%        x5 = 1.2%           0.3%
 x1 = 1.3%        x2 = 0.6%   x3 = 9%      x4 = 14%         x5 = 2%             0.7%
 x1 = 0.3%        x2 = 0.8%   x3 = 0.67%   x4 = 2%          x5 = 16%            0.2%




                                                Dirichlet式
            有り得る {x1, … xK}
            のスペース
                                                                              確率密度
                                                       19
Dirichlet分布とは?


                    Dirichlet式

有り得る {x1, … xK}
のスペース




                                 20
まとめ

●LDAとは、文書群からトピックを統計的に抽出する手法です
●パワフール、使いやすいなので、活用と研究は広がっている状態
●ベイズ統計、確率計算に基づくので、ベイジアンネットワークとの連携がしやすい




                                                     言葉




                                  トピック
                  言葉
      文書(または顧客)




                       LDA
                                                     トピック




                                         文書(または顧客)


                             21

Mais conteúdo relacionado

Mais procurados

順序データでもベイズモデリング
順序データでもベイズモデリング順序データでもベイズモデリング
順序データでもベイズモデリング. .
 
階層モデルの分散パラメータの事前分布について
階層モデルの分散パラメータの事前分布について階層モデルの分散パラメータの事前分布について
階層モデルの分散パラメータの事前分布についてhoxo_m
 
機械学習モデルのハイパパラメータ最適化
機械学習モデルのハイパパラメータ最適化機械学習モデルのハイパパラメータ最適化
機械学習モデルのハイパパラメータ最適化gree_tech
 
3分でわかる多項分布とディリクレ分布
3分でわかる多項分布とディリクレ分布3分でわかる多項分布とディリクレ分布
3分でわかる多項分布とディリクレ分布Junya Saito
 
Stanコードの書き方 中級編
Stanコードの書き方 中級編Stanコードの書き方 中級編
Stanコードの書き方 中級編Hiroshi Shimizu
 
【DL輪読会】Efficiently Modeling Long Sequences with Structured State Spaces
【DL輪読会】Efficiently Modeling Long Sequences with Structured State Spaces【DL輪読会】Efficiently Modeling Long Sequences with Structured State Spaces
【DL輪読会】Efficiently Modeling Long Sequences with Structured State SpacesDeep Learning JP
 
コサインクラスタリング
コサインクラスタリングコサインクラスタリング
コサインクラスタリングosamu morimoto
 
StanとRでベイズ統計モデリング 11章 離散値をとるパラメータ
StanとRでベイズ統計モデリング 11章 離散値をとるパラメータStanとRでベイズ統計モデリング 11章 離散値をとるパラメータ
StanとRでベイズ統計モデリング 11章 離散値をとるパラメータMiki Katsuragi
 
変分ベイズ法の説明
変分ベイズ法の説明変分ベイズ法の説明
変分ベイズ法の説明Haruka Ozaki
 
機械学習による統計的実験計画(ベイズ最適化を中心に)
機械学習による統計的実験計画(ベイズ最適化を中心に)機械学習による統計的実験計画(ベイズ最適化を中心に)
機械学習による統計的実験計画(ベイズ最適化を中心に)Kota Matsui
 
時系列分析による異常検知入門
時系列分析による異常検知入門時系列分析による異常検知入門
時系列分析による異常検知入門Yohei Sato
 
DeepLearning 輪読会 第1章 はじめに
DeepLearning 輪読会 第1章 はじめにDeepLearning 輪読会 第1章 はじめに
DeepLearning 輪読会 第1章 はじめにDeep Learning JP
 
Bayes Independence Test - HSIC と性能を比較する-
Bayes Independence Test - HSIC と性能を比較する-Bayes Independence Test - HSIC と性能を比較する-
Bayes Independence Test - HSIC と性能を比較する-Joe Suzuki
 
ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定Akira Masuda
 
Active Learning と Bayesian Neural Network
Active Learning と Bayesian Neural NetworkActive Learning と Bayesian Neural Network
Active Learning と Bayesian Neural NetworkNaoki Matsunaga
 
勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)
勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)
勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)RyuichiKanoh
 
クラスタリングとレコメンデーション資料
クラスタリングとレコメンデーション資料クラスタリングとレコメンデーション資料
クラスタリングとレコメンデーション資料洋資 堅田
 
これからの仮説検証・モデル評価
これからの仮説検証・モデル評価これからの仮説検証・モデル評価
これからの仮説検証・モデル評価daiki hojo
 

Mais procurados (20)

順序データでもベイズモデリング
順序データでもベイズモデリング順序データでもベイズモデリング
順序データでもベイズモデリング
 
階層モデルの分散パラメータの事前分布について
階層モデルの分散パラメータの事前分布について階層モデルの分散パラメータの事前分布について
階層モデルの分散パラメータの事前分布について
 
機械学習モデルのハイパパラメータ最適化
機械学習モデルのハイパパラメータ最適化機械学習モデルのハイパパラメータ最適化
機械学習モデルのハイパパラメータ最適化
 
3分でわかる多項分布とディリクレ分布
3分でわかる多項分布とディリクレ分布3分でわかる多項分布とディリクレ分布
3分でわかる多項分布とディリクレ分布
 
Stanコードの書き方 中級編
Stanコードの書き方 中級編Stanコードの書き方 中級編
Stanコードの書き方 中級編
 
1次式とノルムで構成された最適化問題とその双対問題
1次式とノルムで構成された最適化問題とその双対問題1次式とノルムで構成された最適化問題とその双対問題
1次式とノルムで構成された最適化問題とその双対問題
 
【DL輪読会】Efficiently Modeling Long Sequences with Structured State Spaces
【DL輪読会】Efficiently Modeling Long Sequences with Structured State Spaces【DL輪読会】Efficiently Modeling Long Sequences with Structured State Spaces
【DL輪読会】Efficiently Modeling Long Sequences with Structured State Spaces
 
コサインクラスタリング
コサインクラスタリングコサインクラスタリング
コサインクラスタリング
 
StanとRでベイズ統計モデリング 11章 離散値をとるパラメータ
StanとRでベイズ統計モデリング 11章 離散値をとるパラメータStanとRでベイズ統計モデリング 11章 離散値をとるパラメータ
StanとRでベイズ統計モデリング 11章 離散値をとるパラメータ
 
変分ベイズ法の説明
変分ベイズ法の説明変分ベイズ法の説明
変分ベイズ法の説明
 
機械学習による統計的実験計画(ベイズ最適化を中心に)
機械学習による統計的実験計画(ベイズ最適化を中心に)機械学習による統計的実験計画(ベイズ最適化を中心に)
機械学習による統計的実験計画(ベイズ最適化を中心に)
 
時系列分析による異常検知入門
時系列分析による異常検知入門時系列分析による異常検知入門
時系列分析による異常検知入門
 
DeepLearning 輪読会 第1章 はじめに
DeepLearning 輪読会 第1章 はじめにDeepLearning 輪読会 第1章 はじめに
DeepLearning 輪読会 第1章 はじめに
 
Bayes Independence Test - HSIC と性能を比較する-
Bayes Independence Test - HSIC と性能を比較する-Bayes Independence Test - HSIC と性能を比較する-
Bayes Independence Test - HSIC と性能を比較する-
 
ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定
 
Active Learning と Bayesian Neural Network
Active Learning と Bayesian Neural NetworkActive Learning と Bayesian Neural Network
Active Learning と Bayesian Neural Network
 
一般化線形モデル (GLM) & 一般化加法モデル(GAM)
一般化線形モデル (GLM) & 一般化加法モデル(GAM) 一般化線形モデル (GLM) & 一般化加法モデル(GAM)
一般化線形モデル (GLM) & 一般化加法モデル(GAM)
 
勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)
勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)
勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)
 
クラスタリングとレコメンデーション資料
クラスタリングとレコメンデーション資料クラスタリングとレコメンデーション資料
クラスタリングとレコメンデーション資料
 
これからの仮説検証・モデル評価
これからの仮説検証・モデル評価これからの仮説検証・モデル評価
これからの仮説検証・モデル評価
 

Destaque

Twitterテキストのトピック分析
Twitterテキストのトピック分析Twitterテキストのトピック分析
Twitterテキストのトピック分析Nobuyuki Kawagashira
 
動画タグネットワーク分析を用いた ニコニコ動画における萌芽文化発見の試み ~”ゆっくり関連タグ”を例として~
動画タグネットワーク分析を用いた ニコニコ動画における萌芽文化発見の試み ~”ゆっくり関連タグ”を例として~動画タグネットワーク分析を用いた ニコニコ動画における萌芽文化発見の試み ~”ゆっくり関連タグ”を例として~
動画タグネットワーク分析を用いた ニコニコ動画における萌芽文化発見の試み ~”ゆっくり関連タグ”を例として~Yusuke Fukasawa
 
料理レシピサービスにおける検索語の意味変化に関する分析
料理レシピサービスにおける検索語の意味変化に関する分析料理レシピサービスにおける検索語の意味変化に関する分析
料理レシピサービスにおける検索語の意味変化に関する分析Yusuke Fukasawa
 
ニコニコ動画における関連動画情報を用いたカテゴリ特徴の把握
ニコニコ動画における関連動画情報を用いたカテゴリ特徴の把握ニコニコ動画における関連動画情報を用いたカテゴリ特徴の把握
ニコニコ動画における関連動画情報を用いたカテゴリ特徴の把握Yusuke Fukasawa
 
経済的寄与度を重視した橋梁管理手法の有効性に関するマルチエージェントシミュレーションによる分析
経済的寄与度を重視した橋梁管理手法の有効性に関するマルチエージェントシミュレーションによる分析経済的寄与度を重視した橋梁管理手法の有効性に関するマルチエージェントシミュレーションによる分析
経済的寄与度を重視した橋梁管理手法の有効性に関するマルチエージェントシミュレーションによる分析Yusuke Fukasawa
 
LDAを用いた教師なし単語分類
LDAを用いた教師なし単語分類LDAを用いた教師なし単語分類
LDAを用いた教師なし単語分類Kouhei Nakaji
 
【ニコニコ動画】"マリオメーカー問題"のもたらした影響をネットワーク分析してみた
【ニコニコ動画】"マリオメーカー問題"のもたらした影響をネットワーク分析してみた【ニコニコ動画】"マリオメーカー問題"のもたらした影響をネットワーク分析してみた
【ニコニコ動画】"マリオメーカー問題"のもたらした影響をネットワーク分析してみたYusuke Fukasawa
 
DeNAの報告書を可視化して雰囲気をつかむ
DeNAの報告書を可視化して雰囲気をつかむDeNAの報告書を可視化して雰囲気をつかむ
DeNAの報告書を可視化して雰囲気をつかむYusuke Fukasawa
 
第二回機械学習アルゴリズム実装会 - LDA
第二回機械学習アルゴリズム実装会 - LDA第二回機械学習アルゴリズム実装会 - LDA
第二回機械学習アルゴリズム実装会 - LDAMasayuki Isobe
 
RではじめるTwitter解析
RではじめるTwitter解析RではじめるTwitter解析
RではじめるTwitter解析Takeshi Arabiki
 

Destaque (10)

Twitterテキストのトピック分析
Twitterテキストのトピック分析Twitterテキストのトピック分析
Twitterテキストのトピック分析
 
動画タグネットワーク分析を用いた ニコニコ動画における萌芽文化発見の試み ~”ゆっくり関連タグ”を例として~
動画タグネットワーク分析を用いた ニコニコ動画における萌芽文化発見の試み ~”ゆっくり関連タグ”を例として~動画タグネットワーク分析を用いた ニコニコ動画における萌芽文化発見の試み ~”ゆっくり関連タグ”を例として~
動画タグネットワーク分析を用いた ニコニコ動画における萌芽文化発見の試み ~”ゆっくり関連タグ”を例として~
 
料理レシピサービスにおける検索語の意味変化に関する分析
料理レシピサービスにおける検索語の意味変化に関する分析料理レシピサービスにおける検索語の意味変化に関する分析
料理レシピサービスにおける検索語の意味変化に関する分析
 
ニコニコ動画における関連動画情報を用いたカテゴリ特徴の把握
ニコニコ動画における関連動画情報を用いたカテゴリ特徴の把握ニコニコ動画における関連動画情報を用いたカテゴリ特徴の把握
ニコニコ動画における関連動画情報を用いたカテゴリ特徴の把握
 
経済的寄与度を重視した橋梁管理手法の有効性に関するマルチエージェントシミュレーションによる分析
経済的寄与度を重視した橋梁管理手法の有効性に関するマルチエージェントシミュレーションによる分析経済的寄与度を重視した橋梁管理手法の有効性に関するマルチエージェントシミュレーションによる分析
経済的寄与度を重視した橋梁管理手法の有効性に関するマルチエージェントシミュレーションによる分析
 
LDAを用いた教師なし単語分類
LDAを用いた教師なし単語分類LDAを用いた教師なし単語分類
LDAを用いた教師なし単語分類
 
【ニコニコ動画】"マリオメーカー問題"のもたらした影響をネットワーク分析してみた
【ニコニコ動画】"マリオメーカー問題"のもたらした影響をネットワーク分析してみた【ニコニコ動画】"マリオメーカー問題"のもたらした影響をネットワーク分析してみた
【ニコニコ動画】"マリオメーカー問題"のもたらした影響をネットワーク分析してみた
 
DeNAの報告書を可視化して雰囲気をつかむ
DeNAの報告書を可視化して雰囲気をつかむDeNAの報告書を可視化して雰囲気をつかむ
DeNAの報告書を可視化して雰囲気をつかむ
 
第二回機械学習アルゴリズム実装会 - LDA
第二回機械学習アルゴリズム実装会 - LDA第二回機械学習アルゴリズム実装会 - LDA
第二回機械学習アルゴリズム実装会 - LDA
 
RではじめるTwitter解析
RではじめるTwitter解析RではじめるTwitter解析
RではじめるTwitter解析
 

LDA等のトピックモデル