固有表現抽出 (Named Entity Recognition: NER) は、検索クエリ内の各単語の意味的役割(ブランド、製品カテゴリ、要素、マーケティング用語など)を特定し、その役割に基づいてクエリ句を書き換えることで、より関連性の高い検索結果を実現します。NER は、E コマース向け検索アプリケーションでのみ利用可能です。
たとえば、クエリ Nike Slim Dresses Delivery-free に対して NER を実行すると、以下の結果が得られます。
| 用語 | エンティティカテゴリ |
|---|---|
| Nike | Brand |
| Slim | Element |
| Dresses | Category |
| Delivery-free | Marketing |
その後、クエリ分析により句が再構成され、Dresses(優先度が高い Category エンティティ)が検索取得を主導し、Nike および Slim がそれを絞り込み、Delivery-free はランキングにのみ影響を与えます。
NER によるクエリの書き換え仕組み
NER は、識別された各エンティティに優先度レベルを割り当て、そのレベルに基づいて書き換え後のクエリ句を生成します。
エンティティの優先度レベル
| 優先度 | 取得への影響 |
|---|---|
| High | エンティティは常にドキュメント取得に使用されます |
| Medium | 書き換え処理のパスや High 優先度エンティティの有無に応じて、エンティティが取得に使用される場合があります |
| Low | エンティティはドキュメント取得には一切使用されず、ランキングにのみ影響を与えます |
クエリ分析では、1 つの句に対して最大 2 回の書き換えが実行されます。1 回目の書き換えは精度を重視し、2 回目は 1 回目の結果が少なすぎる場合に再現率を拡大するために実行されます。
書き換えルール
High 優先度のエンティティは、常に取得に含められます。
低優先度エンティティは、両方のパスで取得から除外されます。
Medium 優先度のエンティティは、以下のルールに従います(優先度は設定順に低下します):
句に High 優先度エンティティが含まれる場合:1 回目の書き換えでは Medium 優先度エンティティを含めますが、2 回目では除外します。
句に高優先度エンティティが含まれていない場合:最初の書き換えには中優先度エンティティが含まれます。2回目の書き換えには、最も高い優先度を持つエンティティのみを使用できます。
句が High 優先度エンティティのみ、または Medium・Low 優先度エンティティのみで構成される場合、クエリ分析は 2 回ではなく 1 回の書き換えのみを実行します。
句が Low 優先度エンティティのみ、または High・Medium 優先度エンティティがまったく含まれない場合、NER による書き換えは実行されません。
例
以下の例では、次の優先度設定を使用しています。
High: Category
Medium: Brand, Material, Element, Style, Color例 1 — High および Medium 優先度が存在する場合
入力: query=default:'Yang Mi Same-style Nike Slim Dresses Delivery-free'
NER 結果: Yang Mi (名前), Same-style (接尾辞), Nike (ブランド), Slim (要素),
Dresses (カテゴリ), Delivery-free (マーケティング)
最初の書き換え: query=default:'Nike' AND default:'Slim' AND default:'Dresses'
RANK default:'Yang Mi' RANK default:'Delivery-free' RANK default:'Same-style'
2 番目の書き換え: query=default:'Dresses'
RANK default:'Yang Mi' RANK default:'Nike' RANK default:'Delivery-free'
RANK default:'Same-style' RANK default:'Slim'例 2 — High および Low 優先度のみの場合
入力: query=default:'Dresses Delivery-free'
NER 結果: Dresses (Category), Delivery-free (Marketing)
1 回目の書き換え: query=default:'Dresses' RANK default:'Delivery-free'例 3 — High 優先度のみの場合
入力: query=default:'Dresses'
NER 結果: Dresses (Category)
1 回目の書き換え: query=default:'Dresses'例 4 — Medium および Low 優先度のみの場合
入力: query=default:'Nike Slim Delivery-free'
NER 結果: Nike (Brand), Slim (Element), Delivery-free (Marketing)
1 回目の書き換え: query=default:'Nike' AND default:'Slim' RANK default:'Delivery-free'
2 回目の書き換え: query=default:'Nike' RANK default:'Slim' RANK default:'Delivery-free'例 5 — 書き換えが実行されない場合
入力: query=default:'楊冪 同スタイル 送料無料'
NER 結果: 楊冪 (名前)、同スタイル (接尾辞)、送料無料 (マーケティング)
結果: 書き換えなし。すべてのエンティティの優先度が低いため、NER は適用されません。NER とカテゴリ予測
カテゴリ予測では、エンティティの重みを用いて、検索クエリに最も適合する製品カテゴリを決定します。長文のクエリでは、予測実行前に製品タイプと直接関係のないエンティティを除外することで、NER が予測精度を向上させます。以下のエンティティカテゴリが保持されます。
Category
People
Season
Element
Style
例
NER 結果 Yang Mi (名前)、Same-style (接尾辞)、Spring (季節)、Slim (要素)、Dresses (カテゴリ) に対して、OpenSearch はこれらの組み合わせに対して順にカテゴリ予測を実行します。
春用スリムドレス
春用ドレス
スリムドレス
ドレスエンティティカテゴリ
NER は、E コマース向けテキストに対して 36 のエンティティカテゴリをサポートしています。
Common、Material、Style、Element、Color、Brand、Function、Size、Quality、Scenario、People、Suit、Season、Model、New-release、Series、Marketing、Region、Name、Entertainment、Organization、Movie、Game、Number、Unit、Category、New-word、Adjective、Proper-noun、Category-modifier、Symbol、Prefix、Suffix、Gift、Negative、Agent
NER の構成
前提条件
開始する前に、以下の条件を満たしていることを確認してください。
OpenSearch Industry Algorithm Edition アプリケーション
OpenSearch コンソール へのアクセス権限
NER を含むクエリ分析ルールの作成
OpenSearch コンソール にログインします。左側ナビゲーションウィンドウで 取得構成 をクリックします。[基本構成] ページで、左側ペインから クエリ分析ルール構成 をクリックします。アプリケーションを選択し、アプリケーションのオンライン版またはオフライン版を指定した後、作成 をクリックします。

[ルールの作成] パネルで、ルール名を入力し、インデックス範囲を指定します。業種タイプ を E コマース向け強化クエリ分析 に設定し、エンティティ認識 を選択して、OK をクリックします。
エンティティの優先度 セクションでは、エンティティカテゴリの追加または削除が可能です。デフォルトでは、NER の組み込み辞書が使用されます。組み込み辞書に基づいて特定された特定のエンティティカテゴリが無効な場合は、代わりに介入辞書を指定してください。

検索テストを実行してルールを検証します。検索結果を確認し、クエリ分析プロセスを確認します。



クエリ分析プロセスが正しいことを確認した後、[クエリ分析ルール構成] ページで インデックス指向 をクリックし、このルールをデフォルトのクエリ分析ルールとして設定します。

デフォルトのクエリ分析ルールを検証します。

NER の介入辞書
エンティティの意味は、ビジネスシナリオによって異なります。介入辞書を活用することで、NER を以下の 2 つの方法でカスタマイズできます。
NER 結果の調整
エンティティカテゴリの優先度の調整
NER 結果が期待通りでない場合は、介入辞書を作成し、クエリ分析ルールに設定します。詳細については、「NER のための介入辞書」をご参照ください。