新製品・アップデートのご紹介MongoDB は、Voyage AI の買収を通じて、Atlas における生成 AI アプリケーションの精度と信頼性を強化します。詳しく見る
新着情報今すぐチェック!:AI 対応開発向け MongoDB MCP Server(パブリックプレビュー)ブログを読む
新着情報MongoDB 8.0:圧倒的な速度と性能を提供。詳しく見る

ベクトルデータベースとは何ですか?

今すぐ始める

目次

ベクトルデータベースとは何ですか?

ベクトルデータベース(ベクトル検索データベースまたはベクトル類似性検索エンジンとも)は、高次元空間におけるベクトルとして表現されたデータを保存、検索、検索します。用語の完全一致に頼るのではなく、ベクトル埋め込みを比較することで、効率的な類似性検索を有効にします。

どのように機能しますか?一般的なユースケースにはどのようなものがありますか?また、MongoDB Vector Search が生成系 AI の議論で重要な役割を果たしている理由は何ですか?

ベクトルデータベースを理解するには、まず「ベクトル」を理解する必要があります。

数学や物理学において、ベクトルとは大きさ(またはサイズ)と方向の両方を持つ量のことです。ベクトルは成分に分解できます。例として、2次元空間において、ベクトルはX(水平)成分とY(垂直)成分を持ちます。

データサイエンスや機械学習において、ベクトルとは、データを表す数字の順序付きリストまたはシーケンスのことです。ベクトルは、テキストから画像、音声、動画に至るまで、非構造化データ(あらかじめ定義されたデータモデルやスキーマを持たないデータ)を含め、あらゆる種類のデータを表現することができます。ベクトルは通常、数値の配列やリストとして表され、リスト内の各数値はそのデータの特定の機能や属性を表しています。

例えば、大量の猫の写真コレクションがあると想像してください。各イメージは非構造化データの一部ですが、機能を抽出することで各画像をベクトルとして表現できます。例えば、以下の通りです。

  • 平均的な色
  • 色ヒストグラム
  • テクスチャヒストグラム
  • 耳、ひげ、しっぽの有無

ベクトル化は、単語、画像、音声などのデータを数値ベクトル埋め込みに変換するプロセスで、各データ点は高次元空間で表現されます。

リレーショナルデータベースに典型的な行や列の代わりに、ベクトルデータベースは多次元空間内の点としてデータを表現します。ベクトルデータベースは、正確な値ではなく類似性に基づいてデータを迅速かつ正確に照合する必要があるアプリケーションに最適です。

生成系AIアプリケーションを構築する場合、ベクトルデータベースは大量のベクトル化データを効率的に処理するように設計されており、クエリや処理速度の高速化を実現します。

ベクトルデータベースは、ベクトル埋め込みを管理し、インデックスを付けるためのネイティブ機能を提供します。MongoDB Atlas を含め、大規模なデータセットを効率的に取り扱うために、複数のノードに分散された拡張を提供するものもあります。

ベクトルデータベースはどのように機能するのですか?

ベクトルデータベースの機能の中心は埋め込みの原理です。本質的に、ベクトルまたは埋め込みモデルはデータを一貫した形式、すなわちベクトルに変換します。

ベクトルは本質的に数字の順序付けられたリストですが、埋め込みは機械学習モデルによって生成されるベクトルの一種で、テキスト、画像、音声などの複雑なデータを共有の数値空間で表現します。

実際には、ベクトルデータベースは機械学習モデルや大規模言語モデル(LLM)によって生成されたベクトル埋め込みを取り扱い、セマンティックな内容に基づいて迅速に検索できるようインデックスの作成を行います。

変換(データをある形式から別の形式に変換するプロセス)は、多次元ベクトル空間にベクトルを配置します。このベクトル空間では、類似した属性や特徴を持つデータ点は互いに近くに位置し、データに共通する機能を反映したクラスターを形成します。

ベクトル埋め込みは単なる数値的な変換ではなく、元のデータのより深いセマンティックな本質と文脈的なニュアンスを包含しています。これにより、自然言語処理(NLP)からセンチメント分析、テキスト分類に至るまで、AI アプリケーションのレンジにおいて貴重なアセットとなります。

ベクトルデータベースへのクエリは、従来のデータベースへのクエリとは異なります。クエリベクトル埋め込みが保存されたデータと比較される場合、データベースはコサイン類似度、ユークリッド距離、またはドット積などの距離メトリクスを使用して類似性を測定し、最も関連性の高い結果を返します。

同一のベクトル間で完全に一致するものを検索する代わりに、ベクトルデータベースは類似性検索を使用して、多次元空間内で特定のクエリベクトルに近接するベクトルを識別します。このアプローチは、データの本質により近く合致するだけでなく、従来の検索では実現できない速度と効率を提供します。

単語、文章、ドキュメント全体でも、その要素をキャプチャするベクトルに変換できます。例えば、標準的な単語埋め込み手法は Word2Vec です。Word2Vec では、意味が似ている単語は、多次元空間で近いベクトルによって表されます。

典型的な Power2Vc の例では、埋め込みによって関係がエンコードされる方法を示し、「king – man + woman ≈ queen」といった関係のコードを使用します。この例えはセマンティックな関係を示していますが、新しいトランスフォーマーベースの埋め込みは、より複雑かつ非線形の方法で意味を捉えます。

複雑なパターンと色があっても、画像はベクトルに変換できます。例えば、動物の画像がたくさんあるデータセットでは、訓練された畳み込みニューラルネットワーク(CNN)は、すべての犬の画像を、たとえば猫や鳥のクラスターとはっきり区別して、近づけてクラスター化します。

このプロセスにより、ベクトルデータベースはベクトルを効率的に保存し、高次元データ構造間でも文脈に沿った関連性の高い一致を提供できます。

データ構造やデータ内のパターンを捉えることで、ベクトル埋め込みは意味的に豊かな描写を提供します。これにより、データをより深く理解できるだけでなく、異なるエンティティ間の関係の決定や類似性の測定に関連する計算が迅速化します。

生成系 AI はベクトルデータベースとどのように関連しているのでしょうか?

生成系 AI についての話題は耳にしたことがあるでしょう。医療から金融、小売りから政府機関まで、経済全体で、組織はこれを活用する方法を模索しています。 どの CEO もアプリケーションをできるだけ早く展開したいと思っているようです。

これは単なる誇大広告ではなく、生成系 AI は世界経済に数兆ドルの付加価値をもたらす可能性があります。

この変革的な技術の中心に、ベクトルという数学的概念があります。ベクトル化と大規模言語モデル(LLM)の優れた能力により、生成系 AI は画期的な可能性を実現します。生成系 AI の初期段階では、ベクトル埋め込みが基盤となります。ベクトルデータベースは、その影響を強化します。定義済みのスキーマと完全一致に依存する従来のデータベースとは異なり、ベクトルデータベースは多次元空間における類似性検索を通じて、複雑な非構造化データを取り扱います。

ベクトル検索が重要な理由とは?

ベクトル検索は、高次元データ全体でセマンティックかつ類似度に基づく検索を有効にする機能です。現在では、専用のベクトルデータベースに加えて、MongoDB Atlas などの汎用データベースにも統合されています。正確なキーワードの照合に依存する代わりに、文脈的に類似した結果を抽出するため、レコメンデーションシステムや生成系AIなどのアプリケーションに不可欠です。

MongoDBがどのようにこれらの機能を支えているかを詳しく知りたい方は、MongoDB Vector Searchページをご覧ください。

ベクトルデータベースのユースケース

世界の経済情勢は複雑かつ競争が激しく、データは依然としてその中核を成しています。過去には、多くの人がデータを「新しい石油」と呼んでいました。生成系 AI 時代の到来により、ベクトル埋め込みは石油のような存在となり、ベクトルデータベースは高次元データを処理し、類似性検索を実行する洗練された精製所として台頭してきました。

経営幹部にとって、生成系 AI は単なる流行語ではなく、戦略です。開発者にとって、ベクトルデータベースの主な利点は効率です。従期のデータベースでは、特に大量のデータセットを処理する場合、関連データを取得するために複雑なクエリス構造が必要になる場合があります。ベクトルデータベースはこれを簡素化し、開発者が類似性に基づいてデータを取得できるようにし、コードの複雑さとデータ取得にかかる時間の両方を短縮します。

​ベクトルデータベースのユースケースの例

画像および映像認識:ビジュアルコンテンツは私たちのビジュアル文化を支配しており、ベクトルデータベースはその中で輝いています。膨大な画像や動画のリポジトリを精査し、指定された入力と驚くほどよく似たものを特定することに長けています。これは単にピクセル単位で一致させることだけではなく、その基礎のパターンや機能を理解することです。こうした機能は、顔認識やオブジェクト検出、さらにはメディアプラットフォームにおける著作権侵害の検出といったアプリケーションにおいて極めて重要です。

自然言語処理とテキスト検索:同義語、言い換え、文脈などにより、テキストの完全一致検索は困難なタスクとなる場合があります。ただし、ベクトルデータベースはフレーズや文章のセマンティックな本質を識別できるため、文言は異なっていても文脈的に類似した一致を識別できます。この卓越した能力はチャットボットにとって画期的であり、ユーザーのクエリに適切に応答できることを保証します。同様に、検索エンジンはより関連性の高い結果を提供し、ユーザー体験を向上させることができます。

レコメンデーションシステム:ベクトルデータベースはパーソナライズにおいて極めて重要な役割を果たします。これらのデータベースはユーザーの嗜好を理解し、パターンを分析することで、リスナーの嗜好に共有するものや、購入者の嗜好と一致する製品を提案することができます。重要なのは、類似性を見極め、ユーザーの心に響くコンテンツや製品を提供することです。

新たなアプリケーション:ベクトルデータベースの可能性は、ますます広がり続けています。ヘルスケアにおいては、潜在的な治療特性を持つ分子構造を分析することで、創薬を支援しています。金融分野では、ベクトルデータベースが異常検出を支援し、不正行為を示す異常パターンの検出を行っています。

これらのユースケースは、高次元のベクトルデータ全体で効率的な類似性検索を実行するベクトルデータベースの能力に依存しています。それぞれのシナリオで、ベクトルインデックスは保存されたベクトルを整理して、迅速な最近傍検索を可能にし、クエリのレイテンシを短縮し、スケーラビリティを向上させます。

生成系 AI の台頭により、ベクトルデータベースは重要な支援ツールとして浮上し、開発者が複雑な AI 設計を実用的で価値のあるツールへと変換することを支援します。

MongoDB Vector Search:ゲームチェンジャー

MongoDB Vector Search は MongoDB の最新機能です。MongoDB のベクトルデータベース機能により、チームはセマンティックデータ、テキストデータ、構造化データクエリを統合し、複雑な統合プロセスなしで利用できます。この機能により、任意のタイプのデータに対してセマンティック検索と生成系 AI によって駆動されるインテリジェントアプリケーションをビルドすることが有効になります。MongoDB Vector Search クイックスタートガイドにアクセスし、数分で最初のインデックスを作成できます。

これまで、画像や効率的な類似検索などのタスクでベクトルデータベースを求める開発チームは、ボルトオンのベクトルデータベースを選択して技術スタックに新たなツールを追加するか、検索ツールとオープンソースのソリューションを組み合わせて運用するかというジレンマに直面していました。セマンティック機能のために全文検索を使用すると、開発者が広範な同義語マッピングに煩わされることがよくありました。制限は明確であり、ユーザーのクエリが正確でない場合、結果は関連性が低るというものでした。

こうした課題は以下につながります。

  • 監視すべきシステムが増える。
  • 専門的なスキルセットの必要性。
  • 同義語マッピングを絶えず更新する精神的な負担。
  • 不正確なクエリによるユーザー体験の質の低下。
  • コアタスクから貴重なエンジニアリング時間が奪われること。

MongoDB Vector Search は、セマンティック検索とジェネレーティブ AI を活用し、動画からソーシャルメディアコンテンツまで幅広いデータ型を処理できるアプリケーションの設計を簡素化します。MongoDB Atlas の堅牢性を活用し、Vector Search は、統合されたクエリインターフェイスを備えた信頼できるプラットフォーム上で、開発者が最先端の関連性ベースの検索ツールを構築できるようにします。

Vector Search は、MongoDB Atlas が定義済みの同義語を必要とせずに、意味的に関連する結果を取得できる機能です。ユーザーが探しているものがわからない場合でも、ベクトル検索はクエリの意味に基づいて関連性の高い結果を返すことができます。例として、「アイスクリーム」を検索すると、ユーザーがサンデーの存在を知らなくても「サンデー」が返されます。

Vector Search を使用すると、MongoDB Atlas の元のデータとメタデータと共にベクトル埋め込みが保存されます。これにより、ベクトルデータへのアップデートや追加が即座に同期され、アーキテクチャが効率化され、統合された開発者エクスペリエンスが提供されます。

ベクトル検索では、HNSW などの近似最近傍探索(ANN)アルゴリズムを使用してデータをインデックス化し、クエリを実行します。これらのアルゴリズムは、高次元空間内で類似するベクトルを効率的に特定します。MongoDB は、複数の距離メトリクスと、ベクトル、テキスト、構造化フィルターを組み合わせたハイブリッド検索をサポートしています。

従来の検索ツールでは対応できないユースケースに対処する、次のような大幅に改善された検索体験を作成できます。

  • セマンティック検索:文脈に応じた検索が可能になります。例えば、「アイスクリーム」を検索すると、「サンデー」のような結果があらかじめ設定された同義語なしで表示される可能性があります。
  • 推奨機能の強化:ユーザーが芝刈り機を検索すると、システムは関連する芝生ケア用品も提案する場合があります。
  • 多様なメディア検索: 「幸せな家族」のような言葉に共鳴する画像を探したり、特定のフレーズを音声ログから探したりと、ベクトル検索はそのタスクをしっかりとこなします。
  • ハイブリッド検索:ベクトル検索の強みと従来の全文検索の強みを組み合わせて、結果を充実させます。
  • LLM の長期メモリ:これにより、LLM に専有のビジネスデータのコンテキストが提供され、出力の精度が向上します。

MongoDB Vector Search は、LlamaIndex や LangChain などの一般的なアプリケーションフレームワークと互換性があります。また、Google Vertex AI、AWS、Azure、Databricks などのエコシステムパートナーとシームレスに統合され、独自のビジネスデータによって AI を活用したアプリケーションのパフォーマンスと精度が確実に向上します。

ベクトルデータベースは、独自のデータストレージと取得アプローチで、私たちのデータベースへの考え方を変えつつあります。迅速な類似性検索を行う能力を備えているため、今日のデータ主導型社会において、これらは欠かせない存在となっています。そして、MongoDB Atlas のパワーと柔軟性と組み合わせることで、他に負けないソリューションを提供します。

MongoDB Vector Search は、従来の全文検索では対応できない、セマンティック検索、画像検索、類似度検索といった高度なユースケースを実現します。開発者は、ベクトル埋め込みを MongoDB に保存し、既存の検索機能に機械学習モデルを組み込み、クエリを実行することで、関連性が高く文脈に沿った結果を取得することができます。エンジニアリングリーダーは、完全管理された最新のマルチクラウドデータベースである Atlas を実行することで安心感のという恩恵を受けられます。

レコメンデーションシステム、検索エンジン、または高速で正確なデータマッチングを必要とするその他のアプリケーションを構築する場合には、ベクトルデータベースと MongoDB の組み合わせの力を活用することを検討してください。未来はベクトル化されており、MongoDB はその未来を切り開くお手伝いをいたします。

MongoDBのAIソリューションについて詳しく学ぶには、AIラーニングハブ をご覧ください。

よくある質問

今すぐ Atlas を利用する

すぐに利用を開始することができます。無料のクラスターには 512 MB のストレージが付属しているため、サンプル データを使用してプラットフォームに慣れ親しんでいただけます。
無料トライアルご相談・お問い合わせ
トライアルには以下が含まれています。
  • 世界中の 115 以上のリージョンで利用可能
  • サンプルデータセット
  • 常時認証
  • エンドツーエンドの暗号化
  • コマンドラインツール