0Pricing
AI Agents · レッスン

Embeddingとは何か(ベクトル表現)

Embeddingはテキストの意味を表す数値のリストです。似たテキストは似たベクトルになります。

「Embeddingとは何か(ベクトル表現)」はCoddyKit上の無料AI Agentsレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはAI Agents学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 AI Agentsコースには全4レッスンが含まれています。

テキストから数値へ

embeddingとは、テキストの一部の意味を表す数値のリスト(ベクトル)です。意味が似ているテキストは、ベクトル空間内で互いに近いベクトルになります。

なぜベクトルなのか

コンピューターは単語そのものに対して計算できませんが、数値に対しては計算できます。embeddingによって、すべてのテキストに高次元空間内の位置を与えられるため、次のことが可能になります。

  • テキスト間の類似度を測定する
  • 関連する項目をクラスタリングする
  • キーワードだけでなく意味で検索する

Embeddingの例

OpenAIのtext-embedding-3-smallモデルは、テキストごとに1536個の数値を返します。「hello world」に対しては、次のような値が得られます。

embedding = [0.0123, -0.0456, 0.0789, 0.0234, -0.0567, 0.0089, -0.0321]
# Real embeddings have ~1536 floats, each between roughly -1 and 1; this is a shortened example.
print("Example embedding (7 of ~1536 dimensions shown):", embedding)

似たテキストは似たベクトルになる

次のペアは、互いに近いベクトルになります。

  • 「王」と「女王」
  • 「幸せ」と「楽しい」
  • 「車」と「自動車」

「王」と「ピザ」のペアは、互いに遠いベクトルになります。

次元数

次元数が多いほど表現できるニュアンスは増えますが、必要なストレージも増えます。一般的なサイズは次のとおりです。

  • OpenAI text-embedding-3-small:1536
  • OpenAI text-embedding-3-large:3072
  • Cohere embed-multilingual-v3:1024
  • BGE-small(OSS):384

セマンティック検索と字句検索

字句検索(Elasticsearch、BM25)はキーワードを一致させます。セマンティック検索(embedding)は意味を一致させます。

「車を修理するにはどうすればよいですか?」は、共通する単語が1つもなくても、「自動車修理のヒント」と意味的に一致します。

文書のEmbedding

次のものをembeddingできます。

  • 短いクエリ
  • 文
  • 段落(約500トークンが最適)
  • 文書全体(品質は低下します)

コードのEmbedding

コードに特化したembeddingモデル(例:Voyage Code、Jina Code)もあります。これらはプログラミング構文を理解し、コード検索では一般的なテキストembeddingを上回ります。

マルチモーダルEmbedding

画像、音声、動画をテキストと同じ空間にembeddingできるため、モダリティをまたいだ検索が可能になります。画像向けの有名な例がCLIPです。

Embeddingにおけるバイアス

embeddingには、学習データの特徴が反映されます。性別と職業の関連付け、人種的ステレオタイプなどのバイアスも符号化されます。人に関わるランキングの判断に使用する場合は注意してください。

Embeddingでできないこと

  • 数学の問題を解くことはできません
  • 論理的な推論はできません
  • テキストを生成できません
  • 因果関係について推論できません

embeddingは類似度を測定する手段であり、推論する手段ではありません。

Embeddingの定義

embeddingとは何でしょうか。

まとめ

embeddingはテキストをベクトルに変換します。ベクトルによって、セマンティック検索、クラスタリング、RAGが可能になります。次は、OpenAI APIを使ってベクトルを生成します。

よくある質問

「Embeddingとは何か(ベクトル表現)」レッスンは無料ですか?

はい。「Embeddingとは何か(ベクトル表現)」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、AI Agentsコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 AI Agentsコースには全4レッスンが含まれています。

「Embeddingとは何か(ベクトル表現)」で何を学びますか?

Embeddingはテキストの意味を表す数値のリストです。似たテキストは似たベクトルになります。 ブラウザで直接実行するハンズオンコードでAI Agentsを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

AI Agentsを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのAI Agentsは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。

「Embeddingとは何か(ベクトル表現)」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このAI Agentsレッスンでコードを書いて実行できますか?

はい。すべてのAI Agentsレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. Embeddingとは何か(ベクトル表現)
  2. text-embedding-3でEmbeddingを生成する
  3. 検索におけるコサイン類似度
  4. Embeddingモデルの比較(OpenAI、Cohere、OSS)
← AI Agentsに戻る