Hello there, ('ω')ノ
「ベクトル」って聞くと、難しそう?
生成AIやRAGの話をしていると、よく登場するキーワードのひとつが 「ベクトル」。
数学っぽくて、理系じゃないと難しい…と感じていませんか?
でもご安心ください。今回の記事では、
🔸 そもそも「ベクトル」って何?
🔸 なぜAIが文章の意味を理解できるの?
🔸 RAGではどんな風に使われているの?
…といった内容を、図やたとえ話を交えてやさしく解説していきます!
「ベクトル」とは?ざっくり言うと…
ベクトル(vector)とは、ある情報を“数字の並び”で表したものです。
生成AIやRAGでは、文章や単語をベクトルに変換して、AIが意味を扱えるようにします。
✔ 例:文章をベクトルに変換すると…
| 文章 | ベクトル(イメージ) |
|---|---|
| 「りんご」 | [0.11, 0.78, -0.32, …] |
| 「みかん」 | [0.10, 0.80, -0.30, …] |
| 「飛行機」 | [0.95, -0.44, 0.12, …] |
このように、それぞれの言葉の“意味”が数字の形で表現されるわけです。
なぜ「ベクトル」で意味がわかるの?
AIは、言葉の意味を人間のように理解しているわけではありません。
でも「意味が似ている言葉は、数字の距離も近い」という特徴があります。
✏ たとえば…
| 組み合わせ | ベクトル間の距離 | 意味の近さ |
|---|---|---|
| 「りんご」–「みかん」 | 近い | 果物同士で意味が近い |
| 「りんご」–「飛行機」 | 遠い | 全く違う概念 |
このように、ベクトル化された言葉は「意味空間の中の座標」として扱えるのです。
🧭 つまり、ベクトルとは
✨「AIが意味を見分けるための“地図”」なんですね!
「埋め込み(Embedding)」=ベクトルを作ること
文章や言葉をベクトルに変換することを、AIの世界では「埋め込み(Embedding)」と呼びます。
この変換には、以下のような技術が使われています:
| 技術 | 特徴 |
|---|---|
| Word2Vec / Doc2Vec | 単語や文章をシンプルな数値に変換(やや古い) |
| BERT / RoBERTa | 文脈も考慮した高度な変換が可能(近年主流) |
| OpenAI Embedding | GPTシリーズと相性抜群の高性能変換API |
🛠 これらの技術を使って、「検索しやすい数字のかたまり=ベクトル」が作られているわけです。
RAGにおけるベクトルの役割とは?
RAGでは、以下のようにベクトルがフル活用されています:
🔹 STEP 1:社内データをベクトル化して保存
例:「業務マニュアル」「契約書」「FAQ」などの文書を、意味ごとにベクトルに変換し、データベースに保存。
🔹 STEP 2:質問もベクトルに変換
ユーザーの質問(例:「経費精算の期限は?」)を、同じくベクトルに変換。
🔹 STEP 3:意味の近い情報を検索
質問ベクトルと“近い位置にあるベクトル”の文書を検索。
距離が近い=意味が似ている=答えとして使える、というわけです。
🔹 STEP 4:AIが生成回答を出す
見つけた文書を元に、ChatGPTなどのLLMが回答を生成します。
図解で理解:ベクトル空間のイメージ
【ベクトル空間(意味マップ)】
↑
│ ●「飛行機」
│
│
│ ●「りんご」 ●「みかん」
└────────────────→
(意味の方向)
※「似た意味」の言葉は、近くに並ぶように配置される!
実感しよう:「AIが意味で探す」とは?
たとえば、こんな質問をしたとします:
「新入社員が提出すべき書類は?」
普通のキーワード検索だと「新入社員」「提出」「書類」と完全一致する言葉がないとヒットしません。
でもRAG+ベクトル検索なら:
- 「入社時の提出物」
- 「雇用契約書」「誓約書」
- 「初期登録に必要な書類」
といった“意味が近い表現”も含めて検索対象になります。
➡ これがRAGの「意味検索」の力なんです!
まとめ:ベクトルは「意味」を扱うAIの土台
- ベクトルとは、言葉を“数字”で表現したもの
- 「似た意味=数字も近い」という性質がある
- 埋め込み(Embedding)技術でベクトル化される
- RAGでは、質問と文書をベクトル化して“意味の近さ”で検索
- AIが文脈を理解したような回答ができるのは、ベクトルのおかげ!
Best regards, (^^ゞ