スキップグラム【Skip-Gram】
概要
スキップグラムとは、word2vecで用いられるニューラルネットワークのモデル構造の一つで、ある中心となる単語からその周囲に現れる単語を予測するもの。

word2vecは単語を意味的な特徴を持つ数値ベクトルとして表現する手法の一つで、大量のテキストデータから単語の意味を学習し、高次元のベクトル空間上の数値として表現する。主な学習モデルは二つあり、一つは中心の単語から周囲の単語を予測するスキップグラム、もう一つは周囲の単語から中心となる単語を予測する「CBOW」(Continuous Bag-of-Words)である。
スキップグラムでは、文章中のある単語を入力として、その周辺に出現する単語を予測する学習を行う。例えば、文中の特定の単語を中心語とし、その前後一定範囲に現れる単語を正解データとして扱う。例えば「空に白い雲が浮かぶ」という文で「雲」を中心語とした場合、スキップグラムは「白い」や「浮かぶ」といった周辺語を予測対象とする。
このような予測問題を大量のテキストに対して繰り返すことで、単語同士がどのような文脈で使われやすいかがモデル内部の重みとして学習される。意味的に関連の強い単語ほど似たベクトル表現を持つようになる。頻度の低い単語であっても、周囲の文脈との関係性を効果的に学習できる。
同じword2vecの手法であるCBOWが周辺語から中心語を予測するのと対照的に、スキップグラムは一つの情報から複数の情報を導き出そうとするため、より複雑な意味関係や希少な語彙のニュアンスを捉えるのに適している。反面、予測対象が多いため計算量はCBOWに比べて増加する傾向がある。