← ホームへ戻る
LESSON 021AI開発9 分

Embeddingとは?意味を座標に変えて、似たものを近くから探せるようにする

Embeddingは文章や画像をVectorへ変換し、意味の近さを数値で比較できるようにします。第021回ではDimension、Similarity、Semantic Searchを直感的に解説します。

今日のたとえ巨大な意味の地図に情報を配置し、意味が似ているものほど近い場所へ置くこと

メモの中から「空港近くの安い宿」を探したいとします。

Keyword Searchだけだと、「ターミナルに近いBudget Hotel」というメモを見落とすかもしれません。使われている単語が違うからです。

人間はすぐに意味が近いと分かります。

Computerでその近さを計算できるようにする方法の一つが**Embedding(埋め込み表現)**です。

EmbeddingはVector

**Vector(ベクトル)**は、順番を持った数値の列です。

たとえば [0.12, -0.48, 0.77, …] のような形です。

実際のEmbeddingは数百〜数千Dimensionを持つことがあります。

各Dimensionが単純に「犬らしさ」「高級さ」を意味するとは限りません。重要なのは、モデルが作るVector Space全体の位置関係です。

意味が似た文章は、Vector Spaceでも近い位置へ来るように学習されています。

巨大な「意味の地図」で考える

普通の地図は緯度と経度の2Dimensionです。

Embedding Spaceはもっと多くのDimensionを持つ地図だと考えられます。

「puppy」「young dog」「small canine」は近い地域に入り、「database backup policy」は遠い場所になるかもしれません。

辞書の意味を座標へ直接書いているのではなく、比較に役立つ数値配置をモデルが作っています。

近さをどう測る?

Vectorになれば数学的に比較できます。

よく使われるのは、

などです。

今は式を覚えなくても大丈夫です。

二つの情報をVectorへ変換し、Vector同士がどれくらい近いか/似ているかを測る

という流れを理解してください。

Text以外にも使える

モデルによっては、

などをEmbeddingへできます。

Multimodal Embeddingでは、TextとImageを互換性のあるSpaceへ置き、文章から似た画像を探すこともできます。

Keyword Searchは、正確な単語が重要なときに強い方法です。

Embedding Searchは、言い方が違っても意味が近いものを探したいときに役立ちます。

実際には両者を組み合わせるHybrid Searchもよく使われます。

Embeddingも完璧ではない

Vectorの近さは、Embedding Modelが学習したPatternに基づきます。

Biasがあったり、専門分野の微妙な違いを捉えられなかったりすることもあります。

自分のDataで評価することが重要です。

Vectorが大量になったら?

数百万のEmbeddingから毎回全部を比較するのは大変です。

そこでVectorを保存し、近いものを効率よく検索する仕組みが必要になります。

それが次の第022回で扱うVector Databaseです。

今日の一文

Embeddingとは、文章や画像などを数値Vectorへ変換し、意味やSimilarityをVector Space上で比較できるようにする表現です。

参考資料

たとえは直感をつかむ入口です。正式な定義や技術詳細は原典をご確認ください。

  1. OpenAI — Vector embeddings ↗
  2. Weaviate — Vector Search Concepts ↗
← 前の章020AI Agentとは?目標に向かって手順を選び、Toolを使い、結果を見て次へ進む仕組み
次の章 →022Vector Databaseとは?Embeddingを保存し、意味が近いものを高速に探す仕組み
COMMUNITY

コメント

質問、感想、補足したいことがあれば、ここに残せます。

0 / 1200