0

標準アナライザーで ElasticSearch と Lucene を使用しています。クエリが「Paleo」の場合、インデックスが「Paleontology」の結果を返さないようにしたいと考えています。ただし、「Paleo」に関連する「Paleolithic」の結果を返したいと思っています。言い換えれば、アナライザーをよりインテリジェントにして、キーワードに関連する語幹を維持しながら、キーワードに関連しない語幹を除外するようにしたいと考えています。どのようなソリューションを利用できますか?

4

1 に答える 1

0

独自のステミング フィルターを実装します (または既存のものを拡張します)。標準のアナライザーはステミングを使用しないため、正確にどのステマーを使用しているのかわかりません。ただし、これは Lucene の PorterStemmer です。

http://lucene.apache.org/core/4_1_0/analyzers-common/org/apache/lucene/analysis/en/PorterStemFilter.html

これが複雑すぎると思われる場合は、ステマーの後に StopWord フィルターを配置して、必要なトークンを拒否することができます。

于 2014-06-23T18:48:28.497 に答える