記事一覧へ戻る
RAG・検索

GLIE、少数のベクトルで視覚文書検索を圧縮

読了目安 3 分

背景

視覚文書の検索では、本文だけでなく、表、画像、レイアウト、ページ内の局所的な情報も一致判定に影響する。後期相互作用型の検索器は、ページを多数のベクトルとして保持し、クエリの各ベクトルとページ側のベクトルを MaxSim で比較することで、こうした細粒度の情報を扱う。精度面では有効だが、1ページあたり約1,000個のベクトルを保存する必要があり、文書数が増えるほどストレージ負担が大きくなる。

論文が提案する Generative Late-Interaction Embeddings(GLIE)は、文書エンコーダーを再学習せずにこの問題へ対応する。単にベクトルを削除したり平均したりするのではなく、少数のベクトルをページ表現のコンパクトなコードとして学習し、必要な候補だけ詳細な表現へ戻す。

主なポイント

  • ベクトルの幾何構造を利用する。 3種類のエンコーダーを調べた結果、ページベクトルは厳密に単位球面上にあり、内在次元がおよそ5〜6の多様体付近に集中していた。見かけ上のベクトル数ほど、独立した情報の自由度は多くないことを示す。
  • k-means中心をそのまま使わない。 通常のクラスタ中心は球の内部に位置する一方、元のベクトルは球面上にある。そのため、中心を直接使うと MaxSim スコアを系統的に低く見積もる。中心を球面へ再正規化すると、未修正の中心に対して nDCG@5 が最大0.093改善した。
  • 検索と再生成を同じコードで行う。 GLIE はページごとに、元の数よりはるかに少ない k 個のベクトルを学習する。このコードは軽量な検索インデックスになるだけでなく、完全なベクトル集合を復元するデコーダーの基礎にもなる。文書エンコーダーは固定され、小型のリファイナーとデコーダーが学習される。
  • 高コスト処理を候補に限定する。 まずコンパクトなコードだけで検索し、報告された評価では上位20件だけを展開して MaxSim による再ランキングを行う。

結果と意義

ViDoRe v1で1ページあたり4ベクトルを保存した場合、GLIE は未圧縮システムの nDCG@5 を約80%維持した。比較対象となった最良の既存後処理圧縮手法は約70%だった。また、追加ネットワークは415Kパラメーターで構成される。

この研究の重要な点は、マルチベクトル検索の圧縮を「代表ベクトルを残すだけ」の問題として扱っていないことだ。圧縮コードを、必要になったとき詳細な表現を再構成するための座標系として設計している。これにより、全ページを高コストに処理するのではなく、検索上位候補にだけ計算を集中できる。

もっとも、結果は使用したエンコーダー、データセット、保存ベクトル数、候補数などに依存する。実運用では、インデックス容量、デコード時間、再現率のバランスを検証する必要がある。それでも、低いストレージ予算の中で後期相互作用の細粒度性能を活用するための、現実的な方向性を示している。

出典:Hugging Face Daily Papers

コメント

ログイン状態を確認中…

コメントを読み込み中…

関連記事

CCTest · Blog
低価格CPUでLLMウェブ検索を高速化する三層キャッシュ構成
RAG・検索
cctest.ai
RAG・検索

低価格CPUでLLMウェブ検索を高速化する三層キャッシュ構成

OreoLookは、会話コンテキスト、意味的に類似した検索クエリ、URL埋め込みを対象にした三層キャッシュを提案する。検索やキャッシュは一般的なCPUサーバーで動かし、最終的な回答合成は外部推論プロバイダーに委ねる構成だ。

続きを読む
CCTest · Blog
回答する前に「答えられるか」を判断するRAG
RAG・検索
cctest.ai
RAG・検索

回答する前に「答えられるか」を判断するRAG

RAGの失敗は、必要な情報が見つからない場合だけでなく、検索された文書同士が食い違う場合にも起こります。新たな研究は、言語モデルの内部信号を読み取り、回答可能・情報不足・情報矛盾を生成前に判定する方法を検討しました。

続きを読む
CCTest · Blog
検索性能が上がるほど頑健性が下がる:マルチホップRAGとASR誤り
RAG・検索
cctest.ai
RAG・検索

検索性能が上がるほど頑健性が下がる:マルチホップRAGとASR誤り

音声によるマルチホップ質問応答では、より高度な検索構造が絶対的な性能を高める一方、上流の音声認識誤りを増幅する可能性がある。特に、質問中のエンティティの誤認識が大きな失敗要因となっている。

続きを読む