2

約1500のドキュメントを返すsolrで検索しました。これらのドキュメントは基本的に製品です。たとえば、データセットにはたくさんの婦人靴があります。私のデータセットにはさまざまな女性用の靴がありますが、非常によく似た結果もあります。たとえば、サイズ11の女性用ナイキトレーナー、サイズ10の女性用ナイキトレーナーなどです。女性用の靴を検索すると、solrスコアリングが表示されます。これらの結果の特定のセットがすべて非常に類似している上部にバブルします。たとえば、1つの特定の靴モデルのすべての色が上部に表示される場合があります。それらは間違いなく異なる製品ですが、ナイキのトレーナーシューズのすべての色よりも幅広い結果を得たいと思います。

誰か提案はありますか?注意してください、私はすべての個別に着色された製品を排除したくありません。誰かが青い女性のナイキトレーナーを検索するとき、私は彼らに青いモデルを最高の結果として取得してもらいたいです。メインクエリとしてdismaxクエリを使用しています。私がやりたいのは、基本的に、ある種の「他の結果と比較した名前の一意性」の要素を後押しすることです。

4

1 に答える 1

2

色などのフィールドで折りたたむことができます。

http://wiki.apache.org/solr/FieldCollapsing

または、インデックス作成時にほぼ重複する検出を使用できます。

http://wiki.apache.org/solr/Deduplication

http://karussell.wordpress.com/2010/12/23/detect-stolen-and-duplicate-tweets-with-solr/

後者のアルゴリズムはツイート用にjetwickに実装されているため、タイトルに対しては機能するはずですが、大きなドキュメントに対しては十分なパフォーマンスが得られません(したがって、「短い」文字列の盗用検出のみ)。長いテキストの場合、ローカルセンシティブハッシュが必要になります。

http://en.wikipedia.org/wiki/Locality_sensitive_hashing

于 2011-02-25T21:56:52.773 に答える