- エンベディングはテキスト・画像などを意味を保ちながら数値ベクトルに変換する技術で、AIが類似性を計算できるようにする基盤技術
- Word2VecからBERT、現代LLMエンベディングへの進化で、文脈を考慮した高精度な意味表現が実現している
- RAGシステムではエンベディングの品質が検索精度に直結するため、タスクに適したモデル選択が重要な設計判断となる
エンベディングとは何か
エンベディング(Embedding: 埋め込み表現)とは、テキストや画像・音声といったデータを、意味的な関係性を保ったまま数値の配列(ベクトル)に変換する技術です。コンピューターは本来「犬」という文字を直接理解できませんが、「犬」を [0.23, -0.85, 1.12, ...] のような数百次元のベクトルに変換することで、演算を通じて意味的な近さや遠さを扱えるようになります。
エンベディングの核心にある考え方は、「意味が似たものはベクトル空間でも近い位置に置かれる」という点です。「犬」と「猫」はどちらもペット・動物という文脈で使われるため、そのベクトルは互いに近くなります。一方「犬」と「銀行」は意味的に離れており、ベクトル空間上でも遠い位置に配置されます。この性質のおかげで、ベクトル間の距離を計算するだけで、単純なキーワード一致では捉えられない意味的な関連性を扱えるようになります。
現代のAIシステムにおいてエンベディングは、検索・推薦・質問応答・翻訳など多くの機能の土台です。大規模言語モデル(LLM: Large Language Model)の内部でも、入力テキストは最初にトークン単位でエンベディングへと変換されます。あらゆるAI応用の裏側で静かに動いている、地味ながら欠かせない技術といえるでしょう。
仕組みをやさしく図解

エンベディングがどのように生成されるかを見ていきましょう。モデルは大量のテキストデータを学習する過程で、「どの単語がどの文脈で一緒に現れるか」というパターンを学びます。よく似た文脈で登場する単語ほど、似たベクトルへと収束していきます。
生成されたベクトル同士の類似度は、主にコサイン類似度で測定します。2つのベクトルが同じ向きを向いているほどコサイン類似度は1に近づき、「意味が近い」と判定されます。直交(90度)するほど0に近づき、意味的なつながりがないことを示す指標です。この計算は単純な乗算と加算のみで完結するため、数百万件の文書を対象にした高速な類似検索が実現できます。
なお、エンベディングの次元数(ベクトルの長さ)も重要な設計パラメーターです。OpenAI の text-embedding-3-large は3072次元のベクトルを生成し、豊富な情報量を持ちます。一方で text-embedding-3-small は1536次元と軽量で、コストと速度のバランスが取れており、多くの用途で十分な精度を発揮します。次元数と精度・コストのトレードオフを理解したうえでモデルを選ぶことが、実用システム設計の第一歩です。
Word2VecからBERTへの進化
エンベディング技術の歴史を振り返ると、いくつかの大きなブレークスルーが確認できます。
Word2Vec(静的な単語ベクトル)
2013年にGoogleが発表したWord2Vecは、エンベディング普及の起点となったモデルです。「王 - 男 + 女 = 女王」という類推が成立するほど意味的に整合したベクトルを生成でき、当時大きな話題を呼びました。ただし、同じ単語は文脈に関わらず常に同一のベクトルに変換されるという根本的な制約があります。「銀行(river bank)」と「銀行(financial bank)」が同じ表現になってしまう「多義語問題」は、実応用での精度低下につながる要因でした。
BERTが切り開いた文脈依存表現
2018年にGoogleが発表したBERT(Bidirectional Encoder Representations from Transformers)は、この課題を解決した画期的なモデルです。Transformerアーキテクチャの Encoder 部分を活用し、文章全体の文脈を双方向に参照しながらエンベディングを生成します。そのため「銀行」という単語が川の文脈で使われているか、金融の文脈かを区別した異なるベクトルを出力できます。
BERTで重要な役割を果たすのがAttention機構です。文章中のどの単語が「今注目している単語」と関係が深いかを動的に計算する仕組みで、文脈依存エンベディングを実現する核心技術となっています。Attention機構の詳しい仕組みはAttention機構とは?Self-AttentionとMulti-Head Attentionの仕組みをわかりやすく図解で解説しています。
現代のLLMエンベディング
現在主流のエンベディングモデルは、BERT時代よりさらに大規模なデータと計算資源で訓練されています。OpenAIの text-embedding-3 シリーズや、オープンソースの BAAI/bge シリーズ、Cohereの Embed v3 などが代表例です。多言語対応が進んでいるため、日本語テキストのエンベディングも高品質に生成できます。また「Matryoshka Representation Learning(MRL)」という手法を採用したモデルでは、ベクトルの先頭部分を切り取るだけで次元数を柔軟に調整でき、精度とコストのバランスを取りやすい点が魅力です。
エンベディングの種類
エンベディングはテキストだけに限りません。様々なモダリティのデータを同じベクトル空間へ射影することで、異種データ間の比較や統合が可能になります。
- テキストエンベディング:文章・文・単語をベクトル化。RAGや検索に最も広く使われている
- 画像エンベディング:CNN(畳み込みニューラルネットワーク)やViTで画像の視覚特徴を数値化する
- 音声エンベディング:音声の周波数特徴を抽出し、話者認識や感情分析に活用
- マルチモーダルエンベディング:テキストと画像を同じ空間へ射影するOpenAIのCLIPが代表例
マルチモーダルエンベディングが特に興味深いのは、「犬の画像」と「犬という単語」のベクトルが近い位置に配置される点です。文章で画像を検索する「クロスモーダル検索」や、画像とテキストを統合した質問応答システムの基盤技術として、急速に普及しています。
RAGとベクトル検索への活用

エンベディングの最重要な応用領域の一つが、RAG(Retrieval-Augmented Generation: 検索拡張生成)です。RAGはLLMの回答生成の前段階として、外部ナレッジベースから関連情報を検索して引き渡す仕組みで、この「検索」がエンベディングによるベクトル検索です。
RAGパイプラインは大きく次の手順で動きます。まず、ナレッジベース内の全文書を事前にエンベディングしてベクトルデータベースに格納します。ユーザーから質問が届いたら、その質問も同じモデルでベクトルに変換します。次にコサイン類似度などの指標でベクトル間の距離を計算し、質問に近い意味を持つ文書を上位N件取得する流れです。取得した文書をコンテキストとしてLLMへ渡すことで、最新情報や社内データに基づいた回答を生成できます。
RAGシステムを設計する際、エンベディングモデルの選択は検索品質に大きく影響します。汎用的な text-embedding-3-small で十分なケースも多い一方、医療・法律・コードといった特定ドメインでは専門用語を多く含むデータで訓練されたドメイン特化モデルの方が高い精度を確保できます。また、文書の分割単位(チャンクサイズ)の設定も取得精度に影響を与えるため、慎重な判断が欠かせません。
主要モデルの比較
モデル | 次元数 | 特徴 | 主な用途 |
|---|---|---|---|
text-embedding-3-small | 1,536 | 軽量・低コスト | 一般的なRAG・検索 |
text-embedding-3-large | 3,072 | 高精度・MRL対応 | 高精度検索・分類 |
BAAI/bge-m3 | 1,024 | 多言語・オープンソース | 日本語対応RAG |
Cohere Embed v3 | 1,024 | 検索特化・多言語 | エンタープライズ検索 |
課題と今後の展望
エンベディング技術にはいくつかの課題も残っています。訓練データに含まれるバイアスがベクトル空間にそのまま反映される点は無視できません。性別・人種・文化に関するステレオタイプが埋め込まれるリスクが実際に報告されており、公平性を担保するための追加検討が必要です。また、ベクトルが何を表現しているかを人間が直感的に解釈するのは難しく、なぜ2つの文書が「似ている」と判定されたかの根拠が説明しにくいという課題もあります。
一方、技術の進化も目覚ましいものがあります。マルチモーダルエンベディングの高精度化、ベクトルの量子化による計算コスト削減、そして特定ドメインへの適応を低コストで実現するファインチューニングの普及が加速中です。量子化(ベクトルをより少ないビット数で表現する技術)により、大規模なベクトルデータベースの運用コストも着実に低下しています。
エンベディングは「AIが言葉を理解する」ための最初の一歩であり、今後もAI応用の土台であり続けるでしょう。RAGやセマンティック検索への関心が高まるにつれ、エンベディングの品質とモデル選択眼が問われる場面も増えていきます。

