メソッドの説明

ステミングは、語形変化した単語をルート形式に単純化することによって検索の範囲を広げるのに役立ちますが、類義語は概念やアイデアを関連付けることによって範囲を広げます。 我々は上記のように、私たちを満たすことができる多くの問題の一つは、検索クエリで正確に適切ではない単語を使用しています。 たとえば、ドキュメントではフィールド名を"blue jacket"に、検索クエリでは名前"cyan jacket"にすることができます。 シノニムトークンフィルタを使用すると、分析プロセス中にシノニムを簡単に処理できます。 シノニムは、構成ファイルを使用して構成されます。

プロセスの説明

1)まず、シノニム型のトークンフィルタを定義し、シノニム形式を書式設定シノニムに追加する必要があります。 フィルタを設定する最初の方法:

そして、パスを使用してもう一つの方法synonym.txt:

"filter" : { "synonyms_filt" : {"tokenizer": "keyword", "type" : "synonym", "synonyms_path" : "analysis/synonym.txt" } } } }

ヒント:このファイルanalysis/synonym.txtは、クラスターの各ノードにある必要があります。 ファイル形式は次のとおりです:前述の

は、(設定場所に対する相対パス)analysis/synonym.txtを使用してシノニムフィルタを設定します。

Supergiant By Qbox:AWS請求書の最大60%を簡単に節約できる最初のデータセンター総合制御システムです。

 "analyzer": { "filter_synonyms": { "filter": , "tokenizer": "keyword" } }

青と金の2つの同義語を追加したことがわかります。 ユーザーが"cobalt dress"を検索すると、elasticは"cobalt"色の同義語"blue, Blue, blue-gold, dark blue/black/charcoal, duke blue, jade blue, scottsdale blue, blue/white/khaki, pacific blue"のスコープを返します。 たとえば、クエリを作成して同義語なしでテストし、analyzer"filter_synonyms"を追加することができます。

3)カスタムストップワードフィルタをテストしてみましょう:

第二として:

"hits" : { "total" : 36165,"max_score" : 0.62592113}

追加情報

インデックス時間と検索時間の両方で同じシノニムトークンフィルタを使用することは冗長です。 インデックス時にgoldをgold-blueとGoldの2つの用語に置き換えると、検索時にそれらの用語の1つだけを検索する必要があります。 あるいは、インデックス時にシノニムを使用しない場合は、検索時にgoldのクエリをGoldまたはgold-blueのクエリに変換する必要があります。

カテゴリー: Articles

0件のコメント

コメントを残す

Avatar placeholder

メールアドレスが公開されることはありません。