埋め込み(Embedding/埋め込み表現)は、テキストなどを数値のベクトル(配列)に変換し、意味が近いものほどベクトル空間上で近くなるように表現する技術です。本記事はword2vecの数式復習ではなく、RAG・検索での役割——なぜベクトルが必要か——に焦点を当てます。
試験で問われる見方
G検定では古典的な単語埋め込み(word2vec等)と、音声のMFCCを混同しない問題があります(G-344)。MFCCは音声特徴量であり、単語埋め込みモデルではありません。
生成AIパスポート第3章では、埋め込みベクトルを保存・検索するDBはベクトルデータベースの説明であり、チャンクやRAGの定義ではありません(HQ-0448の誤答パターン)。
埋め込みとは
コンピュータは文字列をそのままでは「意味の距離」を計算できません。埋め込みは、文書・単語・画像などを固定長の実数ベクトルに写像し、機械学習や検索で扱える形にします。
学習方法は時代とともに進化しています(BoW、TF-IDF、word2vec、Transformer系の埋め込みモデルなど)。試験では「意味が近いほどベクトルも近い」という概念が中心です。
ベクトル空間のイメージ
2次元に射影すると次のようにイメージできます(実際は数百〜数千次元)。
- 「犬」「子犬」「ペット」 — 近い位置に集まりやすい
- 「犬」「株価」 — 離れた位置
- 類似度 — コサイン類似度やユークリッド距離で測る
対照学習のContrastive Lossは、似たペアを近く・異なるペアを遠くにする損失です(G-127)。埋め込み学習の一例として出ることがあります。
RAGでの使われ方
LLMとの違い
| 埋め込み | LLM | |
|---|---|---|
| 主な出力 | 固定長ベクトル | テキスト(次トークン列) |
| 典型用途 | 検索・クラスタリング・推薦 | 対話・要約・生成 |
| RAGでの役割 | 検索のための表現 | 最終回答の生成 |
よくある質問
埋め込み=トークン?
いいえ。トークンはLLMの処理単位、埋め込みは意味を表すベクトルです。LLM内部でもトークン埋め込み層がありますが、用語としては区別します。
埋め込みモデルは必須?
意味検索ベースのRAGでは実質必須です。キーワードのみのRAGなら別経路もあります。
画像にも使える?
はい。マルチモーダル埋め込みで画像とテキストを同じ空間に載せる手法もあります。