🔍

[翻訳] ハイブリッド検索のための Z スコア正規化手法の紹介

に公開

本投稿は OpenSearch Project Blog "Introducing the z-score normalization technique for hybrid search" の日本語訳です。


検索エンジンや機械学習において、データ正規化は異なる特徴やスコア間の公平で正確な比較を行うために不可欠です。

ハイブリッドクエリは、最終結果を準備するために複数の正規化技術を使用します。主な 2 つのタイプは、スコアベースの正規化とランクベースの組み合わせです。スコアベースの正規化では、デフォルトの手法である min-max 正規化は外れ値をうまく処理できません。外れ値とは、データセットの他のデータポイントと大きく異なるデータポイントのことです。min-max スケーリングや Z スコア正規化などの手法では、外れ値が結果に大きな影響を与える可能性があります。

このブログ記事では、OpenSearch 3.0-beta1 で追加された Z スコア正規化について紹介します。この技術が何であるか、なぜ重要なのか、そして OpenSearch がどのようにそれを使用するかを探ります。

Z スコア正規化とは?

Z スコア正規化(標準化とも呼ばれる)は、平均値と標準偏差を使用してデータをスケーリングする方法です。Z スコアを計算する式は次のとおりです。

Z = (X – μ) / σ

  • X は元の値です。
  • μ は母集団の平均値です。
  • σ は母集団の標準偏差です。

Z スコア正規化を使用するタイミング

インデックスの構造によって、どの正規化技術を使用するかを決定するのに役立ちます。それぞれに独自の利点があるためです。ドキュメントが非常に類似しており、典型的なクエリがインデックス内で密接にクラスタ化されたトップ k の結果を返す場合は、次のグラフに示すように、min-max 正規化がより良い選択かもしれません。

しかし、結果がより均等に分布し、次のグラフに示すように正規分布に似たパターンに従う場合は、Z スコア正規化がより良い選択です。

min-max と Z スコア正規化の間で選択するための基本的なプロセスを、以下の図で表します。

Z スコア正規化の使用方法

Z スコア正規化を使用するには、検索パイプラインを作成し、z_score を技術として指定します

PUT /_search/pipeline/z_score-pipeline
{
    "description": "Zscore processor for hybrid search",
    "phase_results_processors": [
        {
            "normalization-processor": {
                "normalization": {
                    "technique": "z_score"
                }
            }
        }
    ]
}

次に、ハイブリッドクエリを作成し、パイプラインをクエリに適用します:

POST my_index/_search?search_pipeline=z_score-pipeline
{
   "query": {
     "hybrid": [
         {}, // 最初のクエリ
         {}, // 2 番目のクエリ
         ... // その他のクエリ
     ]
   }
}

開発環境での Z スコア正規化のベンチマーク

ベンチマーク実験は、コーディネーターノードとして 1 つの r6g.8xlarge インスタンスと、1 つのシャードを持つ 3 つの r6g.8xlarge インスタンスをデータノードとする OpenSearch クラスターを使用して実施されました。Z スコア正規化のパフォーマンスを包括的に評価するために、5 つの異なるデータセットにわたって 2 つの主要なメトリクスを測定しました。使用されたデータセットの詳細については、データセットを参照してください。

サンプルクエリとパッセージ

次の表は、各データセットのサンプルクエリとパッセージを提供しています。

データセット サンプルクエリ サンプルパッセージ
SciDocs 建物の外部表面における対流熱伝達係数の CFD 分析 この論文は、屋外環境のための建物性能シミュレーションにおける CFD の応用の概要を提供し、4 つのトピックに焦点を当てています...
FiQA 請求書の「営業日」と「支払期日」 土曜日も営業日ではないと思います。金曜日の午後 4 時以降に銀行のドライブインで小切手を預けると、領収書には月曜日に預けたかのように記載されます。企業のコンピュータが平日の支払期日に請求を調整しない場合...
NQ バランスシートの非支配持分とは何か 会計では、少数株主持分(または非支配持分)は、親会社が所有していない子会社の株式の一部です。子会社における少数株主持分の大きさは一般的に発行済み株式の 50% 未満であり、そうでなければ一般的にその会社は親会社の子会社ではなくなります
ArguAna 密猟はより高度になっている 密猟がより...になるにつれて、より強力な軍事的アプローチが必要です。アフリカの自然保護区のより厳しい保護は、より多くの流血をもたらすだけでしょう。軍隊が武器、戦術、兵站を強化するたびに、密猟者は対抗するために自分たちの方法を改善します...
Touche-2020 大学教育は価値があるか? Pro が使用した決議は、オーストラリアがすでに「重要な」国ではないと「仮定」していますが、実際には重要です。まず、重要性が何を意味するかを明確にすべきです:1.a 重要であることの状態または質 1.b 結果または..

検索の関連性は、業界標準の正規化割引累積利得(NDCG@10)を使用して定量化されました。また、検索レイテンシー測定を使用してシステムパフォーマンスを追跡しました。このセットアップにより、検索品質と運用効率の両方を評価するための強固な基盤が提供されました。

NDCG@10

次の表は、min-max 正規化と Z スコア正規化を使用したハイブリッド検索の NDCG@10 スコアを比較し、5 つのデータセットにわたる検索関連性のパーセント差を示しています。

データセット ハイブリッド (min-max) ハイブリッド (z-score) パーセント差
SciDocs 0.1591 0.1633 +2.45%
FiQA 0.2747 0.2768 +0.77%
NQ 0.3665 0.374 +2.05%
ArguAna 0.4507 0.467 +3.62%
Touche-2020 0.841 0.8542 +1.54%
平均 2.08%

検索レイテンシー

次の表は、min-max と Z スコア正規化を使用したハイブリッド検索の異なるパーセンタイル(p50、p90、p99)でのミリ秒単位の検索レイテンシー測定を示しています。「パーセント差」列は、これらの方法の相対的なパフォーマンスへの影響を示しています。

p50 p90 p99
ハイブリッド (min-max) ハイブリッド (z-score) パーセント差 ハイブリッド (min-max) ハイブリッド (z-score) パーセント差 ハイブリッド (min-max) ハイブリッド (z-score) パーセント差
SciDocs 76.25 77.5 1.64% 99 100.5 1.52% 129.54 133.04 2.70%
FIQA 80 81 1.25% 104.5 105 0.48% 123.236 124 0.62%
NQ 117 117 0% 140 140 0% 166.74 165.24 -0.90%
ArguAna 349 349 0% 382 382 0% 417.975 418.475 0.12%
Touche-2020 77 77.5 0.64% 100 100.5 0.50% 140 140 0%
平均: 0.70% 平均: 0.50% 平均: 0.50%

結論

私たちのベンチマーク実験は、ハイブリッド検索で min-max 正規化の代わりに Z スコア正規化を使用することの利点とトレードオフを次のように強調しています

  • 検索品質(4 つのデータセットにわたる NDCG@10 で測定)

    • Z スコア正規化は検索品質に適度な改善を示し、NDCG@10 スコアが平均 2.08% 増加しました。
    • これは、Z スコア正規化がデフォルトの min-max 正規化と比較して、わずかに優れた検索結果の関連性を提供する可能性があることを示唆しています。
  • レイテンシーへの影響

    • Z スコア正規化は、次の表に示すように、異なるパーセンタイルでわずかなレイテンシー増加を示しています。
    レイテンシーパーセンタイル パーセント差
    p50 0.70%
    p90 0.50%
    p99 0.50%
    • 正のパーセンテージは、Z スコア正規化が min-max 正規化と比較してわずかに高いレイテンシーを持つことを示していますが、その差は最小限です(平均で 1% 未満)。
  • トレードオフ

    • 検索品質とレイテンシーの間にわずかなトレードオフがあります。Z スコア正規化は検索関連性の改善(NDCG@10 が 2.08% 増加)を提供しますが、わずかなレイテンシー増加(異なるパーセンタイルで 0.50% から 0.72%)という代償があります。
  • 全体的な評価

    • Z スコア正規化は、レイテンシーへの影響がほとんどなく、検索品質に適度な改善をもたらします。
    • Z スコアと min-max 正規化の選択は、ユースケースによって異なる場合があります。検索関連性が優先事項である場合、特にシステムがわずかなレイテンシー増加を許容できる場合は、Z スコア正規化がより良い選択かもしれません。

本番環境での Z スコア正規化のベンチマーク

ベンチマーク実験は、コーディネーターノードとして 1 つの r6g.8xlarge インスタンスと、12 シャードを持つ 3 つの r6g.8xlarge インスタンスをデータノードとする OpenSearch クラスターを使用して実施されました。

NDCG@mean

次の表は、min-max 正規化と Z スコア正規化を使用したハイブリッド検索の NDCG@mean スコアを比較し、5 つのデータセットにわたる検索関連性のパーセント差を示しています。

データセット ハイブリッド (min-max) ハイブリッド (z-score) パーセント差
FiQA 0.3105 0.3120 +0.48%
NQ 0.4563 0.4540 -0.50%
ArguAna 0.4713 0.4700 -0.28%
Touche-2020 0.3788 0.3719 -1.82%
平均 -0.53%

P@mean

次の表は、min-max 正規化と Z スコア正規化を使用したハイブリッド検索の平均精度(P@mean)スコアを比較し、4 つのデータセットにわたる検索関連性のパーセント差を示しています。

データセット ハイブリッド (min-max) ハイブリッド (z-score) パーセント差
FiQA 0.0921 0.0925 +0.43%
NQ 0.0943 0.0935 -0.85%
ArguAna 0.0878 0.0878 0%
Touche-2020 0.2364 0.2318 -1.95%
平均 -0.59%

結論

本番実験では、ハイブリッド検索アプローチにおける Z スコア正規化と min-max 正規化を比較した以下の側面が強調されています

検索品質

  • Z スコア正規化は検索品質にわずかな低下を示し、NDCG@mean スコアが平均 0.53% 減少しました。
  • P@mean の結果も同様の傾向を示し、データセット全体で平均 0.59% 減少しました。
  • FIQA データセットのみが一貫した改善(NDCG@mean で +0.48%、P@mean で +0.43%)を示しました。
  • 最大の低下は Touche-2020 データセット(NDCG@mean で -1.82%、P@mean で -1.95%)で観察されました。

トレードオフ

  • 本番メトリクスは、検索関連性に一貫しているがわずかな劣化を示しています。
  • データセットのサイズがパフォーマンスに影響を与えるようで、より大きなデータセットではより顕著な減少が見られます。
  • FIQA データセットは、特定のシナリオでは Z スコア正規化が min-max 正規化よりも優れたパフォーマンスを発揮できることを示しています。
  • パフォーマンスへの影響は、異なるデータセット間で大きく異なります。

全体的な評価

  • Z スコア正規化は本番設定では min-max 正規化をわずかに下回るパフォーマンスを示します。
  • 結果は、データセットの特性が正規化の有効性に大きく影響することを示唆しています。
  • 実装の決定は、特定のユースケース要件とデータセットの特性を優先すべきです。

これらの調査結果は、Z スコア正規化が依然として実行可能なオプションである一方で、min-max 正規化は本番シナリオでより信頼性の高いパフォーマンスを示すことを示しています。方法の選択は、特定のデータセットとユースケースでの徹底的なテストに基づいて行うべきです。

今後の展開

私たちは、カスタム正規化関数を実装することで、Z スコア正規化を超えて OpenSearch のハイブリッド検索機能を強化し続けています。これにより、独自の正規化ロジックを定義し、検索結果のランキングの微調整が可能になります。この強化により、信頼性と一貫性のあるハイブリッド検索結果を確保しながら、検索結果のランキングをより細かく制御できるようになります。詳細については、この Issue を参照してください。

参考文献

  1. 正規化
  2. ハイブリッド検索 2.0:より良い検索の追求
  3. [RFC] 正規化プロセッサのための Z スコア正規化技術

Discussion