本文へスキップ

ベクトル検索ってなに?

この記事は7で読めます

ざっくり言うと

ベクトル検索とは、文章や画像などを数字の並び(ベクトル)で表し、質問のベクトルに近い候補を探す検索方法です。

使う埋め込みモデルが似た特徴を近くに配置できれば、単語が一致しない候補も見つけられます。RAGでよく使われる検索方法の一つです。

文章や画像をベクトルに変換する技術そのものが、埋め込み(Embedding)です。埋め込みが変換の道具で、ベクトル検索はその道具を使った探し方にあたります

イメージ

どこまでを近いと見なすかは、使う埋め込みモデルと元のデータで変わります。目的に合う近さになっているかどうかは、自分のデータで確かめてください。

正確には

ベクトル検索を、AWSとIBMはそれぞれこう説明しています。

AWS

埋め込みで表したデータの類似性や距離にもとづいて検索する手法として説明しています。対象は文章だけではありません。画像や音声も、そのデータ向けの埋め込みモデルでベクトルにできる場合があります。

IBM

資料と質問を同じベクトルの空間に置き、近い候補を返す方式として説明しています。「意味が近い」という言い方をよく見かけますが、実際に計算しているのはベクトル同士の距離や類似度です。

探すまでの流れは、大きく3ステップです

公式ドキュメント(AWS / Google Cloud / Microsoft等)が共通して説明している流れは、おおむね次の3ステップです。

ステップやっていること関連用語
1. ベクトル化文章・画像などを埋め込みモデルで数字の並びに変換Embedding
2. 保存・索引ベクトルと元データへの参照を、検索できる形で保存する専用データベース・検索サービス・既存データベースのベクトル機能など
3. 類似検索質問も同じ空間へ変換し、距離や類似度で近い候補を返すコサイン類似度・内積・ユークリッド距離など

候補が多い場合は、ANN(近似最近傍探索)で探す範囲を減らす方法があります。速度と、取りこぼしの少なさ(再現率)のバランスを取るやり方です。

一方で、Azure AI Searchの公式資料には、近似ではない方式も載っています。近似探索のHNSWに加えて、全候補を調べるexhaustive KNNも記載されています。ベクトル検索は、必ずしも近似検索とは限りません

キーワード検索との違いは、一致のしかたと得意分野です

観点キーワード検索(従来型)ベクトル検索
一致のしかた語やフレーズ、出現統計などで評価ベクトルの距離・類似度で評価
苦手になりやすいもの同義語設定などがない場合の言い換えベクトルだけで探す場合(dense embedding単独)の品番・IDの厳密一致
得意なこと東京駅のような固有名詞「駅ナカで時間つぶせる場所」のような曖昧な言い方
主な用途文書検索・商品コード検索など類似文書・画像検索・推薦候補など

この2つを組み合わせる、ハイブリッド検索という方法もあります。Azure AI Searchは全文検索とベクトル検索を並行して実行し、結果を統合する仕組みです。

こうすると、固有名詞や型番の一致と、言い換えへの強さを組み合わせられます。ただし、どの方式が最適かは実データで評価します。

生成AIの時代に注目されたのは、RAGの検索手段になったからです

ベクトル検索そのものは、生成AIより前からある技術です。よく名前を聞くようになったのは、大規模言語モデルと外部情報を組み合わせるRAGの検索手段として使われるからです。

RAGでは、質問に関係する情報を取得し、モデルへの入力に加えます。取得方法はベクトル検索に限りません。キーワード検索、ハイブリッド検索、データベースへの問い合わせ、Web検索なども候補です。

RAGの中核は必ずベクトルデータベースだ、と決めつけないでください。対象のデータと検索の要件から選びます。

ベクトルを保存して検索する場所は、1つではありません

置き場所には、いくつかの形があります。

  • 専用のベクトルデータベース
  • 検索エンジンのベクトル検索機能
  • 既存のデータベースに追加されたベクトル型や索引
  • クラウドのマネージド検索サービス

専用のベクトルデータベースが必須というわけではありません。必要なデータ量、更新頻度、絞り込み、権限管理、既存システムとの統合で、選択肢が変わります。

どれを選べばよいかは、規模・運用体制・すでに使っている仕組みで答えが変わります。話題性だけで専用製品を選ばないでください。料金、データの置き場所(海外か国内のリージョンか)、既存データベースとの相性を、各社の公式ドキュメントで確認してください。

自分で作らない場合でも、この4種類を知っておくと、頼んだ相手の説明が分かりやすくなります。

使う場面

ベクトル検索は、こんな場面で使われています

注意点

関連用語

やってみよう

よくある質問

Q. ベクトル検索とは何ですか?
A. 文章や画像などを数字の並び(ベクトル)で表し、質問のベクトルに近い候補を探す検索方法です。使うモデルしだいで、単語が一致しない候補も見つけられます。
Q. ふつうのキーワード検索と何が違いますか?
A. 一致のしかたが違います。キーワード検索は語やその出現統計を手がかりに探すので固有名詞や完全一致に強く、ベクトル検索はベクトルの近さで探すので言い換えを拾える場合があります。
Q. 埋め込み(Embedding)とは何が違うのですか?
A. 埋め込みは、文章や画像をベクトルへ変換する技術そのものです。ベクトル検索は、その道具を使った探し方にあたります。変換する側と、探す側の違いです。
Q. ベクトル検索が苦手なことはありますか?
A. 文字の厳密な一致が苦手です。商品コード、電話番号、人名のつづりのような完全一致は扱いにくいので、キーワード検索やフィルターとの併用を検討してください。

公開: 更新: ✓ 公式情報と照合:

参考ソース

判断クイズ

「RAGにはベクトルデータベースが要ります」を、そのまま受け取ってよいですか?

3問です。答えるとその場で解説が出ます。全問終えたら、「回答を記録する」で学習の記録に残せます。

1. 「社内文書のRAGを作るので、まず専用のベクトルデータベースを契約しましょう」と言われました
2. ベクトル検索だけで作った社内検索について、「型番で検索しても出てこない」と相談されました
3. 「言い換えでも見つかったので、この製品はベクトル検索ですね」と言われました

全問に答えると、回答を記録できます。

残るのは「答えたかどうか」だけで、正解数は保存されません。この端末の中だけに残り、別の端末には引き継がれません。

この教科書は無料で全文公開しています。仕事で使えるところまで進みたい方は、実習と資料がそろった生徒プランをどうぞ。

生徒プランを見る(14日間無料)

あわせて読みたい