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.

潜在トピックとネットワーク分析

1,298 views

Published on

LDAによるトピックの抽出とネットワーク分析から潜在的つながりを発見する試みについて。eラーニングアワードでのセミナー「”グラフ”でつながり可視化されるデータ」の番外編です。

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

潜在トピックとネットワーク分析

  1. 1. 潜在トピックと ネットワーク分析 「“グラフ”で繋がり可視化されるデータ」番外編 株式会社デジタル・ナレッジ プラットフォーム事業部 教育ビッグデータチーム 田中 伸一
  2. 2. アジェンダ • 分析の目的 • 潜在トピック • ネットワーク分析
  3. 3. 分析の目的 アソシエーション分析  購買データ、受講登録データ等から“顕在的” なつながりを抽出  人が気づいている可能性が高い 潜在トピック+ネットワーク分析  掲示板への投稿データからグループ(講座)間 の“潜在的”なつながりを抽出  人が気づいていない可能性が高い
  4. 4. 分析の目的 アソシエーション分析  購買データ、受講登録データ等から“顕在的” なつながりを抽出  人が気づいている可能性が高い 潜在トピック+ネットワーク分析  掲示板への投稿データからグループ(講座)間 の“潜在的”なつながりを抽出  人が気づいていない可能性が高い ★
  5. 5. 潜在トピック LDAによる掲示板投稿の分類
  6. 6. 単語の共起性と潜在トピック トピック ファミリーカー トピック スポーツカー 「自動車」 「乗用車」 「自家用車」 「車」「スライドドア」 「最高速度」  共起性とは、ある単語と別の単語が共に出現する性質。  文脈が異なれば単語の出現頻度や単語同士が共起する傾向も異なる。  単語の出現分布を“トピック”と見なすことで文章をトピックで分類できる。  トピックは出現頻度ではなく共起する確率から構成するため、表現の異なる単語でも 「潜在的には同じトピック」として分類できる。  機械に文書集合全体における単語の出現分布を学習させ、Dirichlet分布と呼ばれる確 率分布に基づいてモデル化し、トピックの抽出と文書への割り当てを確率的に行う代 表的な手法がLDA(Latent DirichletAllocation) 「乗車定員」 「衝突安全性」 「加速」 「ハンドリング」※イメージです
  7. 7. オンライン講座の掲示板投稿からのトピック抽出 【環境】 Python 3.4.1 • scikit-learn…機械学習ライブラリ • SciPy…科学技術計算ライブラリ • Pandas…データ解析ライブラリ • MeCab…形態素解析エンジン • lda…LDAパッケージ 【データ】 某オンライン学習サービス81講座の掲示板における講師の書き 込み3,156件
  8. 8. オンライン講座の掲示板投稿からのトピック抽出 【単語の選別】 • 名詞、形容詞、動詞を対象にMeCabで形態素解析。 • 文書のニュアンスも加味するために動詞・自立や形容詞・自 立は原型。 • 講座の情報は与えない。
  9. 9. 掲示板投稿の分類結果 【結果】 • トピックはインデックス(番号)で表される。  機械は数字としてトピックを扱い、意味を解釈する • 抽出するトピック数は予め指定:118トピック 抽出したトピック(一部) 分類結果(一部) トピックを構成する単語の出現 確率と実際の文章を単語構成か ら確率的に最も適したトピック を割り当てる 講座横断的に内容 が類似する投稿に 分類された
  10. 10. ネットワーク分析 トピックを介した媒介中心性分析
  11. 11. 媒介中心性 ネットワーク分析の媒介中心性を調べることで  異なるネットワーク同士を繋ぐハブ的なノードやエッジ  ハブとしての重要度 がわかる。 LDAで講座横断的に分類したデータの媒介中心性を調べれば、投 稿内容が類似する講座、あるいは講座同士を結ぶハブ的な講座が 見つかる可能性がある。
  12. 12. ネットワークデータの生成 【環境】 R 3.2 • igraph…ネットワーク分析パッケージ • dplyr…データ操作パッケージ Cytoscape…ネットワーク分析ツール 【主な手順】 ① 前記PythonによるLDAで生成したデータをRに読み込む ② 投稿ごとのIDをキーに講座データと結合 ③ igraphのgraphdata.frame関数でgraphml形式のデータを生成 ④ Cytoscapeで③を読み込み媒介中心性を分析
  13. 13. 1対1の関係の場合 講座とその講座が持つ掲示板への投稿や、各投稿とトピックは 1対1の関係なので講座ごと、トピックごとに分断されたネット ワークができるだけ。 講座と投稿 トピックと講座 講座 投稿 トピック 投稿
  14. 14. 多対多の関係の場合 投稿のトピックと講座の関係で見ると、共通のトピックでつな がるネットワークの存在が確認できる。 講座とトピック
  15. 15. 媒介中心性の分析 Cytoscapeの分析ツールで媒介中心性が最も高いノードを把握。 近傍ノード数 媒介中心性 媒介中心性が 最も高いノード 媒介中心性が 最も高いノード
  16. 16. 媒介中心性の分析 媒介中心性が最も高いノード(講座)につながるネットワークだ けに絞り込み(左)、ノードの大きさが次数を表すよう調整する と投稿が活発な3つの講座につながっている様子がわかる(右)。 媒介中心性が 最も高いノード 字数が特に大きい ノード
  17. 17. まとめ LDAを使うことで文章を構成する単語の共起性から機械的に文章 の意味づけを行うことができる。 トピックは頻度ではなく共起する確率で構成されるので、実際に 文章内に現れる単語による顕在的な意味だけでなく、潜在的な意 味の解析にも有用。 潜在トピックとネットワーク分析を組み合わせた分析を“潜在的 関連付け” 、アソシエーション分析による分析を“顕在的関連付 け”とすれば両者を組み合わせリコメンド、検索などに応用すれ ば、より高度なソリューションに発展させられる。
  18. 18. 参考書籍 トピックモデルによる統計的潜在 意味解析 奥村学 監修 佐藤一誠 著

×