Embeddingとは? 一言でいうと…
- *「言葉に『意味の住所』を割り振る技術」**のことです。
人間は「りんご」と「みかん」が果物仲間で、「りんご」と「パソコン」は全然違うものだと、感覚的に分かります。しかし、コンピュータは文字をただの記号としてしか認識できません。
そこで、言葉の意味的な近さや遠さを、コンピュータが計算できる「数字の羅列(座標や住所のようなもの)」に変換する。この魔法のような技術がEmbeddingです。
「巨大な図書館」でイメージしてみよう
Embeddingを理解するために、言葉の世界を一つの巨大な図書館だと想像してみてください。
ステップ1: 言葉がバラバラに置かれている(Embeddingがない状態)
- 図書館には「犬」「猫」「ペット」「動物」「クルマ」「エンジン」といった言葉(本)が、何のルールもなく散らばっています。
- この状態では、「犬」を探しても、その隣に「クルマ」があったりして、関連する本を探すのが非常に大変です。コンピュータにとっては、この状態です。
ステップ2: 凄腕の司書さんが登場する(これがEmbeddingモデル)
- そこに、すべての本の内容を理解している凄腕の司書さん(Embeddingを行うAIモデル)が現れます。
- 司書さんは、一冊一冊の本(言葉)を読んで、その内容に応じて図書館内の適切な棚に配置していきます。
ステップ3: 言葉が意味の近い場所に整理される(Embeddingされた状態)
- 司書さんの作業が終わると、図書館は美しく整理されています。
- 「動物」コーナーには、「犬」「猫」「ペット」といった本が近くに並んでいます。
- 「乗り物」コーナーには、「クルマ」「エンジン」「タイヤ」といった本が固まって置かれています。
- そして、「動物」コーナーと「乗り物」コーナーは、図書館の中でも全く違う離れた場所にあります。
この「図書館のどこに置かれたか」という場所の情報(例:「3階の動物コーナー、B-2の棚」)が、コンピュータが扱える**数字の住所(ベクトル)**にあたります。
Embeddingとは、この司書さんが言葉を意味の近い場所に整理整頓していく作業そのものを指します。
Embeddingで何が嬉しいの?
言葉に「意味の住所」を割り振れると、AIは以下のような賢いことができるようになります。