埋め込みEmbedding

言葉の意味を位置を示す数字に書き写したもの

ポイント
  • 埋め込みは言葉や文の意味を位置を示す数字の束に書き写したものです。意味が近ければ位置も近くなります。
  • 位置を人が決めたわけではありません。膨大な文章からどんな言葉が似た位置に出てくるかを見て、学習の中で自然に決まりました。
  • 数字一つひとつに名前はありません。大事なのは値そのものではなく、他との距離と向きです。
  • 埋め込みのおかげで文字が違っても意味が同じなら見つけられます。 検索やおすすめが大きく変わった理由です。
  • 言葉だけでなく、文、文書、画像、音も同じ方法で位置をもらえます。
目次

1たとえで理解する

登山道の道しるべには地名だけが書かれているわけではありません。「湧き水0.6、山頂2.4」のように、基準になる何か所までの距離が一緒に書かれています。この数字さえあれば、地図を広げなくても二つの道しるべが近いのか遠いのかが分かります。数字の組み合わせが似ていれば、実際に近い場所だからです。埋め込みは言葉にこの道しるべの数字を付ける作業です。

道しるべに書かれた数字は、その地点の名前とは何の関係もありません。「岩陰休憩所」という名前には位置の情報がありませんが、距離の数字には位置がそのまま詰まっています。埋め込みも同じです。文字の形ではなく、意味が置かれた場所を数字で書き記します。

だから名前がまったく違う二つの地点でも、数字が似ていれば隣どうしです。「携帯電話」と「スマートフォン」がそんな隣どうしです。

2くわしく

意味が似ていれば位置も近くなります

埋め込みが作る場所では、距離がそのまま意味の似ている度合いです。「りんご」と「梨」は隣り合い、「りんご」と「地下鉄」は遠く離れます。果物どうしが一つの区域に、乗り物どうしが別の区域に集まります。

この性質がすごいのは、文字が一つも重ならない二つの言葉の関係を計算でつかめるからです。以前の検索は「返金」と打ち込んで初めて「返金」と書かれた文書が見つかりました。埋め込みを使うと「お金を返してほしい」と書いても返金案内が出てきます。二つの表現が近い位置にあるからです。

距離を測る方法は、たいてい二つの位置が原点から見てどれだけ同じ方向を向いているかで決めます。長さより向きのほうが意味をよく表すからです。

位置は学習の中で自然に決まりました

誰かが「りんごはここ、梨はその隣」と座標を書いてくれたわけではありません。方法は単純です。膨大な文章を読みながら似た位置に出てくる言葉どうしを近づける作業を繰り返します。

「りんごをむいた」「梨をむいた」のように二つの言葉が似た文脈に何度も出てくると、学習が進むほど二つの位置が引き寄せられます。反対に、同じ文脈に一緒に出たことがほとんどない言葉どうしは遠ざかります。この引き寄せと押し出しを数えきれないほど繰り返すと、意味が似たものどうしが自然に集まります。

そのため埋め込みには、学習に使った文章の性質がそのまま染み込みます。特定の職業名の隣に特定の性別の表現が近く置かれるような偏りも、この過程で一緒に入り込みます。

数字一つひとつには名前がありません

埋め込みの数字はふつう数百から数千個です。一番目の数字が「甘さ」、二番目が「大きさ」というように決まっていればよいのですが、そうではありません。それぞれの位置は学習が勝手に決めた軸なので、人が名前を付けるのは難しいのです。

それでも向きには意味が宿ります。「王」から男性的な性質の向きを取り除き、女性的な性質の向きを足すと「女王」の近くに届くという観察がよく知られています。国名から首都へ向かう向きが、いくつもの国で似た形で表れることもあります。

こうした関係がいつもぴったり成り立つわけではありません。うまくいく例を選んで見せている場合が多く、めずらしい言葉ではあまり成り立ちません。

同じ言葉も文脈によって位置が変わります

初期の方式は単語ごとに位置を一つだけ与えていました。そのため「お腹が痛い」の腹と「船に乗る」の船が同じ位置に置かれていました。

今使われている方式は、文を丸ごと入れて初めて位置が出ます。前後の言葉を一緒に見てそのつど位置を計算するので、同じ文字でも文脈によって違う位置に置かれます。病院の話の中の「腹」と港の話の中の「船」が互いに遠く離れるわけです。

文章だけが位置をもらうのではありません

文一つ、文書一編にも位置を与えられます。長い文章を丸ごと入れると、その文章の要旨を含んだ数字の束が出てきます。これをあらかじめ作って保存しておけば、あとで意味から文書を探せます。

画像や音も同じ場所に一緒に置けます。写真とその写真を説明する文が近い位置に来るよう学習させると、文で写真を検索したり、写真に合う説明を探したりできるようになります。

3もう少し正確に

埋め込みは、離散的な対象を連続的なベクトル空間の一点に対応させることをいいます。次元の数はふつう数百から数千で、この値が大きいほど細かな違いを含められますが、保存する場所と計算量も一緒に大きくなります。

似ている度合いはたいていコサイン類似度で測ります。二つのベクトルが作る角度が狭いほど値が1に近づく方式です。検索に使うときはこの値が大きい順に文書を選んできます。

たとえがずれる点もあります。登山道の道しるべの距離は実際の地面の上の長さなので人が確かめられ、基準点も決まっています。埋め込みの数字はどこが基準点なのか誰も指定しておらず、その値自体は別のモデルの値と比べることもできません。異なる埋め込みモデルが作った数字を並べて距離を測ることには意味がありません。同じモデルが作ったものどうしでだけ比較が成り立ちます。

4やってみる

5よくある誤解

  • 埋め込みの数字を読めば意味が分かると思われがちですが、実際には数字一つひとつに名前がなく、他の埋め込みとの距離によってのみ意味が生まれます。

  • 同じ単語は常に同じ埋め込みを持つと考えられがちですが、実際には今の方式は前後の文脈を一緒に見るため、文が違えば位置も変わります。

  • 埋め込みは中立な数字だと思われがちですが、実際には学習に使った文章に含まれる偏りが位置の配置にそのまま残ります。

7ひとこと要約

つまり埋め込みは言葉の意味を道しるべの距離のように数字で書き写し、文字が違っても意味が近いものどうしを見つけられるようにしたものです。

誤りや、もっと良いたとえがありますか? 修正を提案する · 最終更新2026-09-02