Artificial Intelligence
スケーラブルなベクトル検索のための量子化技術の比較
単なるキーワードではなく、より深い洞察に基づいて類似のものを探すことを想像してみてください。これに役立つのがベクトル データベースと類似性検索です。 ベクトルデータベース ベクトル類似性検索を有効にします。ベクトル間の距離を使用して、検索クエリでデータ ポイントを検索します。
ただし、高次元データの類似性検索は時間がかかり、リソースを大量に消費する可能性があります。量子化テクニックを導入してください!これらは、ベクトル データベースでのデータ ストレージの最適化とデータ検索の高速化において重要な役割を果たします。
この記事では、さまざまな量子化手法、その種類、実際の使用例について説明します。
量子化とは何ですか?またその仕組みは何ですか?
量子化は、連続データを離散データ ポイントに変換するプロセスです。特に数十億規模のパラメータを扱う場合、管理と処理には量子化が不可欠です。ベクトル データベースでは、重要な特徴とベクトル距離を維持しながら、量子化により高次元データが圧縮空間に変換されます。
量子化によりメモリのボトルネックが大幅に軽減され、ストレージ効率が向上します。
量子化のプロセスには、次の 3 つの主要なプロセスが含まれます。
1. 高次元ベクトルの圧縮
量子化では、コードブック生成、特徴量エンジニアリング、エンコーディングなどの技術を使用します。これらの技術は、高次元のベクトル埋め込みを低次元の部分空間に圧縮します。言い換えれば、ベクトルは多数のサブベクトルに分割されます。ベクトル埋め込みは、オーディオ、画像、ビデオ、テキスト、または信号データの数値表現であり、処理が容易になります。
2. 離散値へのマッピング
このステップには、低次元のサブベクトルを離散値にマッピングすることが含まれます。マッピングにより、各サブベクトルのビット数がさらに削減されます。
3. 圧縮ベクトルストレージ
最後に、サブベクトルのマッピングされた離散値が、元のベクトルのデータベースに配置されます。同じ情報をより少ないビットで表す圧縮データにより、ストレージが最適化されます。
ベクトル データベースの量子化の利点
量子化にはさまざまな利点があり、その結果、計算処理が向上し、メモリ使用量が削減されます。
1. 効率的なスケーラブルなベクトル検索
量子化により、比較計算コストが削減され、ベクトル検索が最適化されます。したがって、ベクトル検索に必要なリソースが少なくなり、全体の効率が向上します。
2. メモリの最適化
量子化ベクトルを使用すると、同じ空間内により多くのデータを保存できます。さらに、データのインデックス作成と検索も最適化されます。
3。 速度
効率的な保存と取得により、計算が高速化されます。次元を減らすことで、データ操作、クエリ、予測などの処理を高速化できます。
いくつかの人気のあるベクター データベースには次のようなものがあります。 クドラント, 松毬, トビ さまざまなユースケースでさまざまな量子化手法を提供します。
使用事例
重要な情報を保持しながらデータ サイズを削減できる量子化機能により、データは有用な資産になります。
そのアプリケーションのいくつかを詳しく見てみましょう。
1. 画像およびビデオの処理
画像とビデオ データには幅広いパラメータがあり、計算の複雑さとメモリの占有量が大幅に増加します。 量子化 重要な詳細を失わずにデータを圧縮し、効率的な保存と処理を可能にします。これにより、画像やビデオの検索が高速化されます。
2. 機械学習モデルの圧縮
大規模なデータセットで AI モデルをトレーニングするのは集中的なタスクです。量子化は、 モデルのサイズと複雑さ 効率を損なうことなく。
3. 信号処理
信号データは、GPS や監視映像などの連続データ ポイントを表します。量子化によりデータが離散値にマッピングされ、より高速な保存と分析が可能になります。さらに、効率的な保存と分析により検索操作が高速化され、より高速な信号比較が可能になります。
さまざまな量子化手法
量子化により、数十億規模のパラメータをシームレスに処理できるようになりますが、不可逆的な情報損失が発生する危険性があります。ただし、許容できる情報損失と圧縮の間の適切なバランスを見つけると、効率が向上します。
各量子化手法には長所と短所があります。選択する前に、圧縮要件と各技術の長所と制限を理解する必要があります。
1. XNUMX値量子化
バイナリ量子化は、すべてのベクトル埋め込みを 0 または 1 に変換する方法です。値が 0 より大きい場合は 1 にマッピングされ、それ以外の場合は 0 としてマークされます。そのため、高次元のデータを大幅に低次元のデータに変換します。類似性検索の高速化。
式
式は次のとおりです。
バイナリ量子化の式。著者による画像。
以下は、ベクトルに対してバイナリ量子化がどのように機能するかを示す例です。
バイナリ量子化のグラフ表示。著者による画像。
強み
- スカラー技術と積量子化技術の両方を上回る最速の検索。
- メモリ使用量を 1 つ削減します 32の因数.
制限事項
- 情報損失の割合が高くなります。
- ベクトル成分には、ほぼゼロに等しい平均が必要です。
- 情報損失が大きいため、低次元データのパフォーマンスが低下します。
- 最良の結果を得るには再スコアリングが必要です。
ベクターデータベースのような クドラント & 弱める バイナリ量子化を提供します。
2. スカラー量子化
スカラー量子化は、浮動小数点数または 10 進数を整数に変換します。これは、各次元の最小値と最大値を特定することから始まります。次に、識別された範囲がいくつかのビンに分割されます。最後に、各次元の各値がビンに割り当てられます。
量子化ベクトルの精度または詳細のレベルは、ビンの数によって異なります。ビンが多いほど、より詳細な情報がキャプチャされるため、精度が高くなります。したがって、ベクトル検索の精度はビンの数にも依存します。
式
式は次のとおりです。
スカラー量子化の式。著者による画像。
スカラー量子化がベクトルに対してどのように機能するかを示す例を次に示します。
スカラー量子化のグラフィック表現。著者による画像。
強み
- 重要 メモリ 最適化。
- 小さな情報損失。
- 部分的に可逆的なプロセス。
- 高速圧縮。
- 情報損失が少ないため、効率的にスケーラブルな検索が可能。
制限事項
- 検索品質がわずかに低下します。
- 低次元ベクトルは、各データ ポイントが重要な情報を運ぶため、情報損失の影響を受けやすくなります。
ベクターデータベースなど クドラント & トビ スカラー量子化を提供します。
3. 積の量子化
積量子化では、ベクトルがサブベクトルに分割されます。各セクションの中心点、つまり重心は次を使用して計算されます。 クラスタリングアルゴリズム。それらの最も近い重心がすべてのサブベクトルを表します。
積量子化における類似性検索は、検索ベクトルを同じ数のサブベクトルに分割することによって機能します。次に、各サブベクトルの重心から各クエリ サブベクトルまでの距離の昇順で、類似した結果のリストが作成されます。ベクトル検索プロセスではクエリ サブベクトルから量子化ベクトルの重心までの距離を比較するため、検索結果の精度は低くなります。ただし、積の量子化により類似性検索プロセスが高速化され、サブベクトルの数を増やすことでより高い精度を実現できます。
式
重心の検索は反復的なプロセスです。収束するまで、各データ ポイントとその重心の間のユークリッド距離の再計算が使用されます。 n 次元空間におけるユークリッド距離の公式は次のとおりです。
積の量子化式。著者による画像。
以下は、積量子化がベクトルでどのように機能するかの例です。
積の量子化をグラフで表現。著者による画像。
強み
- 最高の圧縮率。
- 他の技術よりも優れたストレージ効率。
制限事項
- 低次元ベクトルには適していません。
- リソースを大量に消費する圧縮。
ベクターデータベースのような クドラント と Weaviate は製品の量子化を提供します。
適切な量子化方法の選択
各量子化方法には長所と短所があります。適切な方法の選択は、次のような要因によって決まりますが、これらに限定されません。
- データの次元
- 圧縮精度のトレードオフ
- 効率要件
- リソースの制約。
どの量子化手法が自分のユースケースに適しているかをよりよく理解するには、以下の比較表を検討してください。このグラフは、各量子化方法の精度、速度、圧縮率を示しています。
Qdrantによる画像
ストレージの最適化から検索の高速化に至るまで、量子化により、数十億規模のパラメータを保存する際の課題が軽減されます。ただし、実装を成功させるには、要件とトレードオフを事前に理解することが重要です。
最新のトレンドとテクノロジーの詳細については、次のサイトをご覧ください。 AIを統合する.