読解支援@2015 07-03
TRANSCRIPT
Distributed Representa/ons of Words and Phrases and their
Composi/onality
Tomas Mikolov, Ilya Sutskever, Kai Chen, Greg Corrado, Jeffrey Dean
In Advances on Neural InformaBon Processing Systems, 2013
プレゼンテーション
関沢祐樹
2015/07/03 1
概要
• conBnuous Skip-‐gram model – ベクトル表現の学習においてよい方法
• ベクトルの質、学習スピードが良い
– ベクトル表現の限界 • 単語の順番を考慮しない • 慣用句を表現できない
– この課題に対応できる方法を紹介する
2015/07/03 2
Skip-‐gram model
• 行列の積を 必要としない – 効率的学習が可能
• 線形計算ができる
2015/07/03 3
Skip-‐gram model
• ある文( ) に対して、以下の平均対数確率を最大にする
• c:文脈のとる範囲 – 大きいほど高正解率
2015/07/03 4
Skip-‐gram の確率式
w:単語 vw:単語wに対する入力ベクトル v’w:単語wに対する出力ベクトル W:単語語彙数 (105 〜 107 になることも)
• 計算量がWに比例するため、実用的でない
– Σの部分
2015/07/03 5
Skip-‐gram modelの拡張
• 訓練中に高頻度語のサブサンプリング – 2〜10倍ほどの速さになる – 低頻度単語表現の正解率向上
• 訓練にNoise ContrasBve EsBmaBon の異形を使用 – より複雑な hierarchical soSmax の代用 – 訓練が速い – 高頻度単語ベクトル表現の向上
2015/07/03 6
Hierarchical SoSmax (HS)
• full soSmax の近似: W→log2(W) – 出力層Wに、2分木を使うことで実現
– 葉の部分に単語がある (上の例では3つ) – 本実験では、2値ハフマン木を使用
• 高頻度語ほど、ビット数が少ない(探索しやすい) 2015/07/03 7
単語ベクトルの限界
• 単語ベクトルは、単語1つ1つの意味を持つ – 慣用句を表現できない – 例:”Boston Globe” ・・・ 新聞の名前 Boston + Glove = ボストンの手袋?
• ここから、提案手法を紹介
2015/07/03 8
Noise ContrasBve EsBmaBon(NCE)
• 雑音対照推定 – 良いモデルは、ロジスティック回帰で、 データと雑音を区別できるべきであるという仮定
– サンプルと、雑音分布確率が必要 – ソフトマックスの対数確率を、おおよそで最大化
• 計算量が減る
2015/07/03 9
NegaBve Sampling(NS)
• 正しくないサンプリング – 単語数k に対して negaBve sampling をする
• ある事象(ここでは単語w)を1つ持ってくる • さらに、k個の事象選び、正しくないものとする • それらの事象がwに対応する確率を下げる – 間違った対応になりにくくなる
– サンプルのみを必要とする – 対数確率の最大化は重要でない
2015/07/03 10
Subsampling of Frequent Words
• 高頻度単語の部分サンプリング(平滑化、間引き) – in, a, the などの単語は、情報量が少ない – 頻度をバランスよくする必要がある
• 各単語を、以下の確率で訓練セットから捨てる
• wi : 単語 • f() : 単語の頻度 • t : 閾値(普通は10-‐5) • f > t でサブサンプリング • fが大きいほど、P(wi)も大きい
2015/07/03 11
実験
• Mikolov の実験を使用 – 5種類の意味的問題 問題数:8869 (表の上2つ) – 9種類の文法的問題 問題数:10675 (表の下2つ) – コサイン距離を使用し、正解の単語と比較
• Skip-‐gram の訓練:Google News – 頻度5回未満の単語は破棄→語彙数692,000
2015/07/03 12
��
��*�� �$���# �"���� �#� � "&�'
�*�� �" $��" #�#$�" �"���# � �"�����%��$�"
��� ! ##���' ��! ##���' �$����� %��$�����
� �"��$ �"��$�" $ %�� $ %���"
��)(+ ��)(,
実験結果
– NEG-‐5 :NegaBve Sampling を5単語にした場合 – HS-‐Huffman :HSで、頻度ベースのハフマン符号使用
– NEGがより良い結果となった。
2015/07/03 13
実験結果
– NEG-‐5 :NegaBve Sampling を5単語にした場合 – HS-‐Huffman :HSで、頻度ベースのハフマン符号使用
– サブサンプリングで、訓練スピードが数倍に – さらに、正解率がわずかに向上
2015/07/03 14
句を学習する
• 学習方法 – ある単語に対して、同時によく出る単語を探す – 他の文脈ではあまり出ない単語である
• 分母:各単語の1gram頻度 • 分子:単語の2gram頻度 • δ:頻度の低い単語からなる句の大量生成を防ぐ
2015/07/03 15
句ベクトルの正解率
• ベクトルの次元は300 • サブサンプリングをすると正解率向上 – 特にHS-‐Huffmanで大きな伸び
2015/07/03 16
まとめ
• 提案手法 – 良い単語ベクトル、句ベクトルを生成 – 計算を効率的に行う
• 低頻度単語はサブサンプリングで実現
– ネガティブサンプリングは高頻度語正解率向上
2015/07/03 17