LLM基礎

埋め込み表現(Embeddings) うめこみひょうげん(えんべでぃんぐす)

埋め込み表現Embeddingsベクトル意味的類似性ベクトルデータベース自然言語処理
埋め込み表現について教えて

簡単に言うとこんな感じ!

単語や文章を「意味が近いものが空間上で近くなる」数値のベクトルに変換する仕組みだよ!「猫」と「ネコ」は意味が同じだから近い場所に、「猫」と「自動車」は遠い場所に置かれる。この「意味の地図」があるから、AIが類似文書検索や質問応答を行えるんだ!


埋め込み表現(Embeddings)とは

埋め込み表現(Embeddings) とは、テキスト(単語・文・文書)を高次元の実数ベクトルに変換したものです。コンピューターはテキストをそのまま扱えませんが、数百〜数千次元のベクトルに変換することで、意味的な近さ・遠さをコサイン類似度などで数値計算できます。

「王様 - 男性 + 女性 ≈ 女王」という有名な演算(Word2Vecによるもの)が示すように、適切な埋め込みは意味の類似性・関係性を幾何学的に表現します。LLMの内部でもトークンは最初に埋め込みベクトルに変換され、アテンション計算を経て最終的な回答が生成されます。また検索・RAG・推薦システムでの意味的類似検索にも広く使われます。


埋め込みの主な活用場面

用途仕組み
意味的検索質問と文書をベクトル化し類似度計算「同じ意味の別表現」でも検索ヒット
RAG関連文書を埋め込み検索でリトリーバル社内文書から関連箇所を抽出
クラスタリング類似ベクトルをグループ化顧客の問い合わせを自動分類
推薦システム商品・コンテンツの類似性判断「この商品を買った人は…」

歴史と背景

  • 2013年:GoogleがWord2Vecを発表(単語レベルの埋め込みの実用化)
  • 2014年:GloVe(スタンフォード)でグローバルな統計情報を活用した埋め込み
  • 2018年BERTによって「文脈を考慮した動的埋め込み」が実現
  • 2022年:OpenAI text-embedding-ada-002でAPIでの埋め込み活用が普及
  • 現在:多言語埋め込み・マルチモーダル埋め込みが発展

埋め込みの具体例(コサイン類似度)

埋め込みモデルでベクトル化した例(次元を大幅に省略):

「犬」     = [0.8, 0.2, 0.6, ...]
「猫」     = [0.7, 0.3, 0.5, ...]  ← 犬と近い(どちらもペット)
「自動車」 = [0.1, 0.9, 0.2, ...]  ← 犬と遠い

コサイン類似度(-1〜1、1が最も近い):
  犬 vs 猫:    0.92(高い類似度)
  犬 vs 自動車: 0.15(低い類似度)

関連用語