狠狠撸

狠狠撸Share a Scribd company logo
word2vecの理論背景
mabonki0725
2016/12/17
自己紹介
? データ分析と統計モデル構築15年
– 学習データ以外の運用データでも予測が当たることに驚く
? 統計数理研究所の機械学習ゼミに6年間在籍
– 殆どの統計モデルを構築
 判別木 SVM ベイジアンネット DeepLearning等
? ロボット技術習得のため産業技術大学院に入学
– 知覚?機械学習?制御理論の統合が必要で発展途上の技術
? 経験的には米国の機械学習の論文を読み、できれば
実装するのが一番近道と思っている
– NIPS ICML論文読会したい(隔週開催)
? 教師あり学習のXGBOOSTの性能に驚いている
word2vecとは
? 大量の文書をよんで文字をvectorで表現にする
– vectorなので加減算で推論?推薦ができる
? 連想
 vec(日本) - vec(東京) + vec(パリ) → vec(フランス)
? 推奨 映画のBacktoFutureにviolenceを強くした映画は?
 vec(?????????????) + 2×vec(暴力) → vec(??????)
+ =2×violence
word2vecの背景理論
①なぜword2vecはvectorを使うのか
②なぜword2vecは学習できるのか
③なぜword2vecは加減算で推論できるのか
word2vecの理論背景には以下の論文と解説がある
①A Latent Variable Model Approach to PMI-basedWord
Embeddings  Sanjeev Arora+ (TACL 2016)
②統数研 持橋大地先生の解説資料 (最先端NLP8)
   http://chasen.org/~daiti-m/paper/SNLP8-latent.pdf
①word2vecはvectorを使うのか
? word2vecのvectorの推定方法(skip-gram)
– 最適なvector算出するためvectorの内積を使う
– 発生確率を教師データとするsoftmaxの回帰モデル
単語Wiとその前後の単語Woの発生確率
教師データ softmax関数
①word2vecはvectorを使うのか(理論)
A Latent Variable Model Approach to PMI-basedWord Embeddings
単語の発生確率をsoftmax関数で算出できると仮定する
上記論文では以下の定理2.2(a) (b)が成立する
定理2.2(a) 隣合う文字v wの同時生起確率の対数はvector演算となる
softmax関数
①word2vecはvectorを使うのか(理論)
A Latent Variable Model Approach to PMI-basedWord Embeddings
定理2.2 (b)
  単語v w間の内積がPMI(相互情報量)に近似できる
定理2.2(a)を代入すると上式が求まる
? ?
? ? ? ?
? ? ? ? ? ?wpvpwvp
wpvp
wvp
loglog,log
,
log ???
PMI情報量
? (he has) (are the) 等のよく出てくる結びつきは意味がない。
  (beer wine) (oil economy)の結びつきは意味がある
? 頻繁に出てこない単語でよく見るペアに意味がある
? PMI情報量は頻繁に出ないが、よく見るペアを表す
word2vecはPMI情報量(単語の内積)で回帰してvectorを求めている。
教師データ softmax関数
①word2vecはvectorを使うのか(証明)
A Latent Variable Model Approach to PMI-basedWord Embeddings
<前提>
時刻t において, ランダムウォークする文脈ベクトルct があり
単語vecotor wt の発生確率はsoftmax関数に従がうと仮定
この前提で観測するとZはCtに拘らず1
? 定理2.2 (a)の証明
①word2vecはvectorを使うのか(証明)
A Latent Variable Model Approach to PMI-basedWord Embeddings
定理2.2(a)
? 定理2.2の証明
①word2vecはvectorを使うのか(証明)
A Latent Variable Model Approach to PMI-basedWord Embeddings
※
②word2vecは学習できるのか
? 文字wiとその前後の複数文字wo1~Cの発生頻度で
最適なVectorをsoftmax関数の最尤値で解く
最尤値の更新式
Softmax関数を解く
Wovwji
v'ij
全単語について加算(事実上不可能)
wi
②word2vecは学習できるのか
? word2vecの最尤値解の簡便化?
 分母側を全単語ではなく、ランダム抽出とする
NegativeSampling法 計算量の削減
 V(全語)→VNeg(ランダム抽出)
σ:シグモイド関数
Wovwji
v'ij
wi
②word2vecは学習できるのか(理論)
? 対数尤度Lを最大となるVector v w を学習できればよい
Xvwは生起回数
これから
②word2vecの学習できるのか(証明)
よって
②word2vecは学習できるのか(証明)
※
生起回数Xvwを教師データとしてwは最小二乗解で算出できる
③word2vecの加法推論
? vec(king) - vec(man) + vec(woman) → vec(queen)
vec(king) - vec(qeen) = vec(man) - vec(woman)
)|(
)|(
log
)|(
)|(
log
),(
)(
)(
),(
log
),(
)(
)(
),(
log
),(
)()(
)()(
),(
log
),(
)()(
)()(
),(
log
)()(
),(
log
)()(
),(
log
)()(
),(
log
)()(
),(
log
)()(
),(
log
)(2.2
womanxp
manxp
queenxp
kingxp
womanxp
womanp
manp
manxp
queenxp
queenp
kingp
kingxp
womanxp
womanpxp
manpxp
manxp
queenxp
queenpxp
kingpxp
kingxp
manpxp
womanxp
manpxp
manxp
queenpxp
queenxp
kingpxp
kingxp
d
kingx
kingpxp
kingxp
b
womanxmanxqueenxkingx
x
womanmanqueenking
womanqueenmanking
t
tttt
?
?
?
???
?
???
???
???
これを用いると
より定理
を掛けて任意
加法則はこれを示す
証明
③word2vecの加法推論
定理2.2(a)より
Vの意味空間の存在
<x,y>は内積を示す
③word2vecの加法推論
>
<x,y>は内積を示す
まとめ
? 偶然発見されたword2vecの加法則は今回の
論文で限定的だが明らかにされた
? 今迄の自然言語解析は意味解析が殆ど無った
– 東大ロボは意味解析で失敗した (情報研 宮尾先生)
? 自然言語の意味理解には分散表現が加わった
– 記号表現(構文解析)
– 隠れ因子分析(LDAモデル)
– 分散表現(vector演算)
この融合が研究が期待される
<参考> 「自然言語の意味に対する2つのアプローチ」情報研 宮尾

More Related Content

奥辞谤诲2惫别肠の理论背景