SolrのSynonymGraphFilterFactoryは、スキーマで定義されたアナライザーを使用します

トピック作成者:ks-solruserml-bot (2024/06/14 22:36 投稿)
2
CloseClose

(The bot translated the original post https://lists.apache.org/thread/wsqjbl2dt7ot2pwlg7qyslllgfj45pd4 into Japanese and reposted it under Apache License 2.0. The copyright of posted content is held by the original poster.)

みなさん、こんにちは

要点を述べますと、SynonymGraphFilterFactoryのanalyzerフィールドを、schema.xmlで定義されたアナライザーに設定することは可能でしょうか。

参考のため、以下に私の質問をStack Overflowで紹介しています。
https://stackoverflow.com/questions/70437100/solr-synonymgraphfilterfactory-use-analyzer-defined-in-schema

よろしくお願いします。

最良のご挨拶

返信投稿者:ks-solruserml-bot (2024/06/14 22:37 投稿)

こんにちは、Robertさん

コードを確認しましたが、このファクトリはクラスをパス上で探し、Solrのスキーマで定義されたアナライザーはそのようには読み込まれません。もしかすると何かトリッキーな方法があるかもしれませんが、それに賭けることはできないでしょう。

純粋なLuceneベースのアナライザークラスを作成することは簡単ですが、すべてを設定するには少し手間がかかります。それ以外の方法として、シノニムファイルの用語をコンパイルする際に、シノニムフィルターの前にステマー(語幹処理)フィルターを設定し、シノニムファイルの用語全体をステマーと/またはフィルターのシーケンスを通過させることをお勧めします。

私たちは後者のトリックを使っており、うまく機能しています。もちろん、奇妙なステマーによる不規則性は除きますが。

よろしくお願いします。
Markus

返信投稿者:ks-solruserml-bot (2024/06/14 22:37 投稿)

あの、「奇妙なステマーによる不規則性」についてですが、私が言及したことに関してです。

これらは、インデックスとクエリの解析チェーンでKeywordRepeatFilterを使用することで緩和できます。

例えば、いくつかの言語のステマーは接尾辞の -s を複数形と見なし、それを除去します。これは "pils, bier" のシノニムセットにとって良くありません。オランダ語では、pilsen は pils になりますが、単数形の pils は pil になり、pil はビールではありません。

ここでKeywordRepeatは役立ちますが、インデックスのサイズをかなり増加させます。

また、Repeatフィルタは、ステマーによって同じ形に簡約された関連しない用語と区別できなくなることを防ぐのにも役立ちます。強く推奨されます!

よろしくお願いします。
Markus

トピックへ返信するには、ログインが必要です。

KandaSearch

Copyright © 2006-2024 RONDHUIT Co, Ltd. All Rights Reserved.

投稿の削除

この投稿を削除します。よろしいですか?