SlideShare une entreprise Scribd logo
1  sur  21
Télécharger pour lire hors ligne
トピックモデル



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

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

 超難しい話
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

Contenu connexe

Tendances

トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?hoxo_m
 
15分でわかる(範囲の)ベイズ統計学
15分でわかる(範囲の)ベイズ統計学15分でわかる(範囲の)ベイズ統計学
15分でわかる(範囲の)ベイズ統計学Ken'ichi Matsui
 
Granger因果による 時系列データの因果推定(因果フェス2015)
Granger因果による時系列データの因果推定(因果フェス2015)Granger因果による時系列データの因果推定(因果フェス2015)
Granger因果による 時系列データの因果推定(因果フェス2015)Takashi J OZAKI
 
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展Shiga University, RIKEN
 
3分でわかる多項分布とディリクレ分布
3分でわかる多項分布とディリクレ分布3分でわかる多項分布とディリクレ分布
3分でわかる多項分布とディリクレ分布Junya Saito
 
[DL輪読会]Revisiting Deep Learning Models for Tabular Data (NeurIPS 2021) 表形式デー...
[DL輪読会]Revisiting Deep Learning Models for Tabular Data  (NeurIPS 2021) 表形式デー...[DL輪読会]Revisiting Deep Learning Models for Tabular Data  (NeurIPS 2021) 表形式デー...
[DL輪読会]Revisiting Deep Learning Models for Tabular Data (NeurIPS 2021) 表形式デー...Deep Learning JP
 
これからの仮説検証・モデル評価
これからの仮説検証・モデル評価これからの仮説検証・モデル評価
これからの仮説検証・モデル評価daiki hojo
 
渡辺澄夫著「ベイズ統計の理論と方法」5.1 マルコフ連鎖モンテカルロ法
渡辺澄夫著「ベイズ統計の理論と方法」5.1 マルコフ連鎖モンテカルロ法渡辺澄夫著「ベイズ統計の理論と方法」5.1 マルコフ連鎖モンテカルロ法
渡辺澄夫著「ベイズ統計の理論と方法」5.1 マルコフ連鎖モンテカルロ法Kenichi Hironaka
 
Prophet入門【理論編】Facebookの時系列予測ツール
Prophet入門【理論編】Facebookの時系列予測ツールProphet入門【理論編】Facebookの時系列予測ツール
Prophet入門【理論編】Facebookの時系列予測ツールhoxo_m
 
実践多クラス分類 Kaggle Ottoから学んだこと
実践多クラス分類 Kaggle Ottoから学んだこと実践多クラス分類 Kaggle Ottoから学んだこと
実践多クラス分類 Kaggle Ottoから学んだことnishio
 
ランダムフォレスト
ランダムフォレストランダムフォレスト
ランダムフォレストKinki University
 
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)Yoshitake Takebayashi
 
Stanコードの書き方 中級編
Stanコードの書き方 中級編Stanコードの書き方 中級編
Stanコードの書き方 中級編Hiroshi Shimizu
 
機械学習によるハイスループット 第一原理計算の代替の可能性_日本化学会_20230323
機械学習によるハイスループット 第一原理計算の代替の可能性_日本化学会_20230323機械学習によるハイスループット 第一原理計算の代替の可能性_日本化学会_20230323
機械学習によるハイスループット 第一原理計算の代替の可能性_日本化学会_20230323Matlantis
 
未出現事象の出現確率
未出現事象の出現確率未出現事象の出現確率
未出現事象の出現確率Hiroshi Nakagawa
 
ノンパラベイズ入門の入門
ノンパラベイズ入門の入門ノンパラベイズ入門の入門
ノンパラベイズ入門の入門Shuyo Nakatani
 
【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデル
【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデル【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデル
【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデルMasashi Komori
 
PRML輪読#1
PRML輪読#1PRML輪読#1
PRML輪読#1matsuolab
 

Tendances (20)

トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?トピックモデルの評価指標 Perplexity とは何なのか?
トピックモデルの評価指標 Perplexity とは何なのか?
 
15分でわかる(範囲の)ベイズ統計学
15分でわかる(範囲の)ベイズ統計学15分でわかる(範囲の)ベイズ統計学
15分でわかる(範囲の)ベイズ統計学
 
Granger因果による 時系列データの因果推定(因果フェス2015)
Granger因果による時系列データの因果推定(因果フェス2015)Granger因果による時系列データの因果推定(因果フェス2015)
Granger因果による 時系列データの因果推定(因果フェス2015)
 
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
 
3分でわかる多項分布とディリクレ分布
3分でわかる多項分布とディリクレ分布3分でわかる多項分布とディリクレ分布
3分でわかる多項分布とディリクレ分布
 
[DL輪読会]Revisiting Deep Learning Models for Tabular Data (NeurIPS 2021) 表形式デー...
[DL輪読会]Revisiting Deep Learning Models for Tabular Data  (NeurIPS 2021) 表形式デー...[DL輪読会]Revisiting Deep Learning Models for Tabular Data  (NeurIPS 2021) 表形式デー...
[DL輪読会]Revisiting Deep Learning Models for Tabular Data (NeurIPS 2021) 表形式デー...
 
これからの仮説検証・モデル評価
これからの仮説検証・モデル評価これからの仮説検証・モデル評価
これからの仮説検証・モデル評価
 
渡辺澄夫著「ベイズ統計の理論と方法」5.1 マルコフ連鎖モンテカルロ法
渡辺澄夫著「ベイズ統計の理論と方法」5.1 マルコフ連鎖モンテカルロ法渡辺澄夫著「ベイズ統計の理論と方法」5.1 マルコフ連鎖モンテカルロ法
渡辺澄夫著「ベイズ統計の理論と方法」5.1 マルコフ連鎖モンテカルロ法
 
Prophet入門【理論編】Facebookの時系列予測ツール
Prophet入門【理論編】Facebookの時系列予測ツールProphet入門【理論編】Facebookの時系列予測ツール
Prophet入門【理論編】Facebookの時系列予測ツール
 
実践多クラス分類 Kaggle Ottoから学んだこと
実践多クラス分類 Kaggle Ottoから学んだこと実践多クラス分類 Kaggle Ottoから学んだこと
実践多クラス分類 Kaggle Ottoから学んだこと
 
ランダムフォレスト
ランダムフォレストランダムフォレスト
ランダムフォレスト
 
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
 
Stanコードの書き方 中級編
Stanコードの書き方 中級編Stanコードの書き方 中級編
Stanコードの書き方 中級編
 
機械学習によるハイスループット 第一原理計算の代替の可能性_日本化学会_20230323
機械学習によるハイスループット 第一原理計算の代替の可能性_日本化学会_20230323機械学習によるハイスループット 第一原理計算の代替の可能性_日本化学会_20230323
機械学習によるハイスループット 第一原理計算の代替の可能性_日本化学会_20230323
 
未出現事象の出現確率
未出現事象の出現確率未出現事象の出現確率
未出現事象の出現確率
 
ノンパラベイズ入門の入門
ノンパラベイズ入門の入門ノンパラベイズ入門の入門
ノンパラベイズ入門の入門
 
EMアルゴリズム
EMアルゴリズムEMアルゴリズム
EMアルゴリズム
 
【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデル
【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデル【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデル
【読書会資料】『StanとRでベイズ統計モデリング』Chapter12:時間や空間を扱うモデル
 
PRML輪読#1
PRML輪読#1PRML輪読#1
PRML輪読#1
 
Stan超初心者入門
Stan超初心者入門Stan超初心者入門
Stan超初心者入門
 

En vedette

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
 

En vedette (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等のトピックモデル