Yolo 深圳
深セン
今すぐ参加
用語集

ベクトルデータベース

ベクトルデータベースが、効率的な類似性検索、セマンティック検索、およびインテリジェントシステムのための異常検出を可能にすることで、AIに革命をもたらす様子をご覧ください。

ベクトル・データベースは、高次元のベクトル・データを管理、索引付け、照会するために設計された特殊なストレージ・システムである、 エンベッディングと呼ばれることもある。従来の ベクトルデータベースは、行と列に構造化されたデータを格納し、キーワードを正確にマッチングさせる従来のリレーショナルデータベースとは異なり、意味的な類似性に基づいて項目を検索するために最適化されている。 意味的な類似性に基づいて項目を見つけるために最適化されている。この機能により 人工知能(AI) システムは、画像、音声、テキストなどの非構造化データを、それらの間の文脈的関係を理解することによって処理することができる。 これらの間の文脈的関係を理解することによって、システムは画像、音声、テキストなどの非構造化データを処理することができる。これらは基本的に 機械学習アプリケーション 同一ではなく概念的に関連する情報を効率的に検索することができる。

ベクトルデータベースの仕組み

ベクトル・データベースの核となる機能は、生のデータを特徴抽出というプロセスを通じて数学的なベクトルに変換することにある。 特徴抽出A ディープラーニングモデル ヴィジョン・トランスフォーマー(ViT)や Convolutional Neural Network (CNN)などのディープラーニングモデルがデータを分析し、ベクトル(データの特徴を表す数値の長いリスト)を出力する。

これらのベクトルが生成されると、データベースは次のような特殊なアルゴリズムを使ってインデックスを作成する。 近似最近傍(ANN)。ユーザーがクエリを実行すると、システムは検索語(画像またはテキスト)をベクトルに変換し、次のような距離メトリックを使用して、保存されているベクトルとの近接性を計算します。 のような距離メトリクスを使用して、保存されているベクトルとの近さを計算します。 コサイン類似度 ユークリッド距離のようなこれにより、データベースは は、最も関連性の高い結果を表す「最も近い」隣人を特定します。

以下のコード・スニペットは、YOLO11モデルを使って埋め込みデータを生成する方法を示している。 これはYOLO11 ・データベースにデータを格納する前の最初のステップです。 ベクトル・データベースにデータを格納する前の最初のステップです。

from ultralytics import YOLO

# Load a pre-trained YOLO11 classification model
model = YOLO("yolo11n-cls.pt")

# Generate feature embeddings for an image file
# This converts the visual content into a numerical vector
results = model.embed("bus.jpg")

# Output the shape of the resulting embedding vector
print(f"Embedding vector shape: {results[0].shape}")

実際のアプリケーション

ベクターデータベースは、商用および企業向けソフトウェアの多くのインテリジェント機能を支えるエンジンである。

  • ビジュアル・レコメンデーション・エンジン:小売業におけるAIの領域で 小売業におけるAIの領域では、プラットフォームはベクターデータベースを使用して ショップ・ザ・ルック」機能を提供する。顧客が商品を見ると、システムはベクトル・データベースに問い合わせを行う。 を照会し、スタイル、色、パターンが一致する商品を提案する。これにより ユーザー体験を向上させる 単純なカテゴリータグを超えたパーソナライズされたレコメンデーションを提供することで、ユーザーエクスペリエンスを向上させます。
  • 検索拡張世代(RAG):ベクターデータベースは 検索-拡張生成(RAG) システムに不可欠である。膨大な内部知識ベースの埋め込みを保存することで、企業は以下を可能にする。 大規模言語モデル(LLM)が 答えを生成する前に、正確で最新のコンテキストを取得することができる。これにより、幻覚を減らし、AIが以下のような回答を提供することを保証する。 検索された文書に基づいた事実に基づいた回答を提供することを保証する。

関連概念の区別

エコシステムを理解するためには、ベクター・データベースを関連用語と区別することが役に立つ:

  • ベクトルデータベースとベクトル検索 ベクトル検索とは、類似したベクトルを見つけるアクションまたはアルゴリズムプロセスです。ベクトルデータベースは これらのベクトルを保存し、スケーラブルかつ永続的に検索を実行するために構築されたインフラストラクチャまたはソフトウェアシステムです。 持続的に実行するために構築されたインフラストラクチャまたはソフトウェアシステムです。
  • ベクターデータベースとエンベッディングの比較: エンベッディングは実際のデータペイロード、つまり入力の数値表現である。ベクトルデータベースは これらのエンベッディングを高速にアクセスできるように整理するコンテナです。
  • ベクターデータベース vs. フィーチャーエンジニアリング フィーチャーエンジニアリング フィーチャーエンジニアリングは、モデルのフィーチャーを作成する広範なプロセスである。ベクター・データベースは ディープラーニングモデルによって自動化されたフィーチャーエンジニアリング(埋め込み)の出力を格納する。

人気のベクターデータベースソリューション

市場には、オープンソースのツールからマネージドサービスまで、ベクターストレージを実装するための堅牢なオプションがいくつかあります。 サービスがある:

  • Pinecone完全に管理されたクラウドネイティブのベクターデータベース 高速なスケーラビリティとプロダクションでの使いやすさを追求。
  • Milvus:スケーラブルな類似検索のために構築されたオープンソースのベクトルデータベース。 スケーラブルな類似検索用に構築されたオープンソースのベクトルデータベース。 コンピュータビジョンアプリケーションでよく使用される。
  • QdrantRust で書かれた高性能なベクトル検索エンジン、 複雑なクエリのための高度なフィルタリング機能を提供。
  • WeaviateAIネイティブのベクトルデータベース。 ベクトルとキーワードを組み合わせた検索が可能。

これらのツールを MLOpsワークフローに統合することで、開発者は以下のことが可能になります。 データ・コンテンツを真に「理解」するシステムを構築し、セマンティック検索や異常検知、パーソナライズされたコンテンツ配信などの高度な機能を実現できる、 異常検知、パーソナライズされたコンテンツ配信などの高度な機能を実現します。

Ultralytics コミュニティに参加する

AIの未来を共に切り開きましょう。グローバルなイノベーターと繋がり、協力し、成長を。

今すぐ参加