あいまい検索だけでは再現率の要件を満たせない場合(例:検索結果が不十分または無関係な場合)は、クエリ分析を組み合わせて同義語拡張を追加できます。この組み合わせにより、検索語における文字レベルの変動(誤字や部分一致など)を許容しつつ、介入辞書で定義された意味的に等価な語にもマッチします。
仕組み
あいまい検索は、検索語内の文字レベルでの編集操作(挿入・削除・置換など)を許容してドキュメントをマッチングします。クエリ分析は、検索語がインデックスに到達する前に同義語ルールに基づいて検索語を拡張することで、この機能をさらに拡張します。
SHORT_TEXT フィールドのインデックスはあいまい検索分析に使用できないため、同じデータソース列に対応する 2 つの並列フィールドが必要です。
| フィールド | タイプ | インデックス | アナライザ | 目的 |
|---|---|---|---|---|
brand | SHORT_TEXT | brand | Fuzzy Analyzer | 文字レベルの変動(誤字、部分一致)にマッチ |
brand_text | TEXT | brand_text | Chinese General | クエリ分析による同義語拡張を有効化 |
クエリ実行時には、OR 式を使用して両方のインデックスを同時に検索します。brand_qp パラメーターを使用して、TEXT フィールドに対して同義語拡張を伴うクエリ分析を有効化します。
あいまい検索とクエリ分析を併用する場合、ストップワードフィルターは利用できません。
前提条件
作業を開始する前に、以下の要件を満たしていることを確認してください。
Normal 状態の OpenSearch Industry Algorithm Edition アプリケーション
検索対象フィールド(例:
brand)を含むデータソース
あいまい検索とクエリ分析の構成
手順 1:アプリケーションの編集を開く
インスタンス管理 ページで対象のアプリケーションを見つけ、[詳細] をクリックします。
[オフラインアプリケーションの編集] をクリックします。

手順 2:検索フィールドの追加
スキーマ編集ページで、同じデータソース列に対応する 2 つのフィールドを追加します。
brand— タイプSHORT_TEXT、データソースのbrand列にマッピングbrand_text— タイプTEXT、同じデータソースのbrand列にマッピング
[次へ] をクリックします。

手順 3:インデックスとアナライザの構成
インデックススキーマ ページで以下の操作を行います。
brandフィールド用にbrandインデックスを作成し、[分析方法] を [Fuzzy Analyzer] に設定します。brand_textフィールド用にbrand_textインデックスを作成し、[分析方法] を [Chinese General] に設定します。[次へ] をクリックします。

手順 4:フィールドをデータソースにマッピング
データソース ページで、[編集] をクリックします。
ダイアログボックスで、
brandおよびbrand_textの両方をデータソースのbrand列にマッピングします。[完了] をクリックします。

手順 5:オフラインバージョンの適用待ち
オフラインバージョンを送信後、アプリケーションの状態が Normal に戻るまで待ちます。

手順 6:クエリアナライザで同義語拡張を有効化
クエリアナライザの構成を開き、[ルールの編集] をクリックします。
[ルールの編集] ダイアログボックスで、[有効な機能] を [Synonym] に設定します。
同義語構成用の介入辞書を選択します。

手順 7:同義語エントリの追加
介入辞書内で、テストしたい同義語マッピングを定義するエントリを作成します。たとえば、ブランドのエイリアスをその標準形にマッピングします。

構成の検証
以下のクエリを使用して、両方のインデックスをテストします。
brand_text:'soso' OR brand:'soso'このクエリを 2 回実行します。1 回目は brand_qp パラメーターなしでベースラインを確認し、2 回目は brand_qp を指定してクエリ分析と同義語拡張が有効になっていることを確認します。
`brand_qp` なしの場合 — あいまい一致のみが適用されます。

`brand_qp` ありの場合 — 検索前に同義語拡張が適用されます。

brand_qp を有効にすると、生の検索語がインデックス値と完全に一致しなくても、同義語エントリにマッチする結果が表示されます。期待した同義語が表示されない場合は、以下の点を確認してください。
同義語エントリが介入辞書に保存され、公開されていること。
クエリアナライザの [ルールの編集] ダイアログボックスで正しい介入辞書が選択されていること。
オフラインバージョン送信後にアプリケーションの状態が Normal になっていること。
次のステップ
同義語拡張のための介入辞書 — 同義語エントリの追加および管理
クエリ分析の概要 — クエリ分析の全機能について学ぶ
あいまい検索 — あいまいクエリの動作とパラメーターについて理解する