More Related Content Similar to Interop2017 (20) Interop201711. 11
文章の分散表現
大きく分けて次の4つに分かれます
Bag of Words的な手法
行列近似分解による次元圧縮
トピックモデル
ニューラルネットワークを用いた単語組み込み
2017/6/13
Singularity Copyright 2016 Singularity Inc. All rights reserved
TF-IDF Okapi-BM25b
LSA (Latent Semantic Analysis), NMF (Non-negative Matrix Factorization)
PLSA (Probabilistic Latent Semantic Analysis), LDA (Latent Dirichlet Allocation)
Word2Vec, Doc2Vec
他にも様々な手法があるが、これらの亜種か、組み合わせ
12. 12
BoW的な手法
BoWは文章をシンプルに単語数でベクトル化する手法
出現回数だけでは助詞などばかりが大きな値になるためにキーワード
に重み付けを行うのが TF- IDF
2017/6/13
Singularity Copyright 2016 Singularity Inc. All rights reserved
Docment1 = “今日 / は / 天気 / が / いい。” = (1,0,1,・・・・1,0,0,1)
「今日」の出現回数 「天気」の出現回数
𝑡𝑓𝑖𝑑𝑓𝑖,𝑗 = 𝑡𝑓𝑖,𝑗 ∙ 𝑖𝑑𝑓𝑖
j番目の文章の各単語の重み
𝑡𝑓𝑖,𝑗 =
𝑛𝑖,𝑗
𝑘 𝑛 𝑘,𝑗
文中の単語の出現頻度
𝑖𝑑𝑓𝑖 = log
𝐷
𝑑:𝑑∋𝑡𝑖
単語がどのくらいの文章に現れるかの逆数
17. 17
PLSA
2017/6/13
Singularity Copyright 2016 Singularity Inc. All rights reserved
文章
文中の単語
d z w
𝑃(𝑑𝑖) 𝑃(𝑧 𝑘|𝑑𝑖) 𝑃(𝑤 𝑘|𝑧 𝑘)
𝑃 𝑑, 𝑤 = 𝑃 𝑤 𝑑 𝑃(𝑑)
その文章、中身の単語で構成される
確率。つまり、その文章ができあがる
確率
𝑃 𝑤|𝑑 =
𝑧∈𝑍
𝑃 𝑤 𝑧 𝑃(𝑧|𝑑)
あるトピックで単語が生起する確率 そのドキュメントからあるトピックが生
起する確率
∴ 𝑃 𝑑, 𝑤 =
𝑧∈𝑍
𝑃 𝑤 𝑧 𝑃 𝑧 𝑤 𝑃(𝑑) の対数尤度関数を最大化する
そのままとくのが困難なのでEMアルゴリズムで推定する
Probabilistic Latent Semantic Analysis
18. 18
PLSAの特徴
各文章のベクトルは最終的に(p(z1, d), p(z2, d), p(z3, d) …p(zk, d))
で表される。
ベクトルの意味もわかりやすく、LSAよりも精度が高い
p(w|z)を高い順にソートすればトピックごとの特徴単語もわかる。
LSAと同じように、文章ベクトル化以外にレコメンドなどにも使える
しかし、トピックの生起が文章依存のため、新規文章を扱うことができな
い
2017/6/13
Singularity Copyright 2016 Singularity Inc. All rights reserved
この文章がトピック1である確率
19. 19
LDA
Latent Dirichlet Allocation
文章(d)依存の確率分布ではなくディリクレ分布からトピック生起確率を
算出
2017/6/13
Singularity Copyright 2016 Singularity Inc. All rights reserved
文中の単語
文章
z w
β
θα
パラメータ数がdに依存しなくなったで数が減って、過学習も回避」
𝑃(𝑤|𝑧 𝑘, 𝛽)𝑃(𝑧 𝑘|𝜃)𝑃(𝜃|𝛼)
ディレイクレ分布=多項分布の分布
から、トピックの生起確率の分布を生起
選ばれたトピックの単語の多項分布から単
語を生起
20. 20
LDAの特徴
推定した分布を事前分布として用いれば新規文章も扱える
PLSAはLDAの特殊な時の形
もちろん直接解けないので、本論文は変分ベイズで解いている
もっと簡単にMCMCを用いてサンプリングするのが一般的
どの手法にも言えることなのだが、確率を扱うために短文には弱い
最近では画像のトピック推定などにも用いられている
LDAと深層学習を組み合わせたり、単語の並びを考慮した亜種がかな
り存在する
2017/6/13
Singularity Copyright 2016 Singularity Inc. All rights reserved
23. 23
ニューラル単語埋め込み
Word2Vec
ニューラル言語モデルを用いた単語埋め込み
単語の意味獲得を行えるように
2017/6/13
C8Lab Copyright 2014 C8Lab Inc. All rights reserved
Yoshua Bengio, Réjean Ducharme, Pascal
Vincent, Christian Jauvin. A Neural
Probabilistic Language Model. Journal of
Machine Learning Research 3(2003):p1137–
1155
犬=(0.1, 0.5, 2.0, 0.4, 2.4)
猫=(0.1, 0.4, 1.5, 0.3, 2.4)
次に来る単語を予測するモデルを作る
ことによって、
のように、各単語にベクトルを割り当てる。
王様 – 男性 + 女性 = 女王様
のようなベクトル演算が可能に
30. 30
正式リリース版に向けて
レコメンドの精度確認及びチューニング
スマホアプリ開発
記事データ及びユーザアクションの収集
タスク志向型会話AIによる記事推薦が目標
将来的には今話題になってることに対する雑談機能も追加予定
2017/6/13
Singularity Copyright 2016 Singularity Inc. All rights reserved
機械学習わからねぇー
どのあたりがわからないのでしょうか?
全部
じゃあこの記事などどうですか?