1行定義
分散表現とは、単語などの意味を、多数の要素に情報を分散させた数百次元程度の実数ベクトルで表す表現方法のことです。
くわしく
分散表現は、単語などの意味を、数百次元程度の実数のベクトルで表す方法です。自然言語処理では、単語を分散表現のベクトルに変換することを、単語埋め込み(word embedding)とも呼びます。
ワンホットベクトルとの違い
単語をベクトルにするいちばん単純な方法は、ワンホットベクトルです。語彙が1万語なら1万次元のベクトルを用意し、その単語に対応する1か所だけを1、ほかを0にします。この方法には2つの弱点があります。
- 語彙が増えるほど次元が大きくなり、ほとんどが0のベクトルになる。
- どの2つの単語のベクトルも直交するため、「犬」と「猫」が似ていることを表せない。
分散表現では、1つの単語を、たとえば300個の実数の組み合わせで表します。意味の情報が多くの次元に少しずつ分かれて書き込まれていることが、「分散」という名前の由来です。似た文脈で使われる単語ほどベクトルが近くなるように学習するので、コサイン類似度などで意味の近さを測れます。
どう学習するか
代表的な手法がword2vecです。「似た文脈に現れる単語は意味も似ている」という分布仮説にもとづき、周辺の単語から中心の単語を予測する(CBOW)、またはその逆(スキップグラム)の課題を解かせて、ベクトルを学習します。学習した分散表現では、「王様」−「男性」+「女性」の結果が「女王」のベクトルに近くなる例が知られています。
word2vecでは単語ごとにベクトルが1つに固定されますが、その後、文脈に応じてベクトルが変わるELMoやBERTが登場しました。
背景
分散表現の考え方は、1980年代にHintonらが論じたものです。2003年にはBengioらが、単語の分散表現を学習するニューラル言語モデルを提案し、次元の呪いへの対策として位置づけました。
覚え方
「分散表現は、意味を多くの次元に少しずつ分けて書き込む」と覚えます。
G検定での出題
出題のされ方
ワンホットベクトルとの違い(次元の大きさ、意味の近さを表せるか)、word2vecなどで学習されること、ベクトルの演算で意味の関係を表せること、単語埋め込みとの関係が問われます。
混同しやすい用語
| 用語 | 意味 |
|---|---|
| 分散表現このページの用語 | 単語などの意味を、多数の要素に情報を分散させた数百次元程度の実数ベクトルで表す表現方法 |
| ワンホットベクトル | 語彙やカテゴリの数だけ次元をもち、該当する1つの要素だけが1で、残りの要素がすべて0のベクトル |
◯×チェック
次の文が正しいか、誤りかを選んでください。
-
分散表現では、ベクトルの1つの次元が1つの単語に対応し、その単語のときだけその次元の値が1になる。
答えを見る
答え × 誤り
それはワンホットベクトルの説明です。分散表現では、1つの単語の意味が多くの次元の値の組み合わせで表され、1つの次元は多くの単語の表現に関わります。
-
語彙が10万語あっても、分散表現なら各単語を数百次元程度のベクトルで表せる。
答えを見る
答え ◯ 正しい
ワンホットベクトルでは、語彙数と同じ10万次元が必要です。分散表現は次元数を語彙数と切り離して決められるため、少ない次元に情報を密に詰め込めます。
-
分散表現と分布仮説は、同じ考え方を指す別名である。
答えを見る
答え × 誤り
分布仮説は「似た文脈に現れる単語は意味も似ている」という考え方です。分散表現は意味をベクトルで表す方法です。word2vecは、分布仮説にもとづいて分散表現を学習します。
この用語の練習問題
出典
- G検定 試験出題範囲(シラバス2024)第1.4版 (技術分野 項目27 自然言語処理)
- Geoffrey E. Hinton, James L. McClelland, David E. Rumelhart, Distributed Representations, in D. E. Rumelhart, J. L. McClelland (eds.), Parallel Distributed Processing, Vol. 1, MIT Press (1986) (Chapter 3)
- Yoshua Bengio, Réjean Ducharme, Pascal Vincent, Christian Jauvin, A Neural Probabilistic Language Model, Journal of Machine Learning Research 3, 1137–1155 (2003)
- Tomas Mikolov, Kai Chen, Greg Corrado, Jeffrey Dean, Efficient Estimation of Word Representations in Vector Space (2013)