2017-09-15 4 views
1

ケース・イン・ケース:非常に関連性の高いものからほとんど関連性の低いものまで2000件の検索結果を返す検索クエリがあります。これが関連性によってソートされている場合、最も関連性の高い結果が最初のページに表示されるので、これは問題ありません。Solr:関連性によってソートしていないときに無関係な結果を管理する方法は?

しかし、別のフィールド(ユーザーの評価など)でソートすると、最初のページの結果はほとんど関連性のない結果になります。これはクライアントにとって問題です。どういうわけか、最も関連度の高い結果だけを表示する必要があります。 - 関連性スコアがしきい値未満の場合Solrの側のリストをフィルタリング

1:私はほんの数ソリューションと考えることができます

は、すべてが問題を抱えています。私はこれを行う方法がわかりません、そして、これを読んだことから、とにかく良いアイデアではありません。例えば結果が10のリスティングのみを返した場合は、フィルタリングする代わりにすべてを表示することができます。ボード全体で動作するしきい値を決定することは不可能です。もし誰かが私を見せてくれたら、どうか私に見せてください!

2 - スコアに基づいてアプリケーション側のリストを除外します。これは、パフォーマンス/帯域幅などに影響する、全体のセットを返さずにフィルタリングされた結果の総数を判断する方法がないため、今私は問題なしで行うことができますが、ページネゴシエーションを実装できません。最初の点の問題。

3 - 結果を並べ替える関連度とユーザー評価のスコアを集計する「結合」並べ替えを作成します。まず、これが可能かどうかはわかりません.2番目に、結果が実際に評価の順に表示されていない場合は、ユーザーにとって奇妙なことになります。

これは以前どのように解決されていますか?私はどんなアイデアにもオープンです!

ありがとうございます。

答えて

0

関連性がない場合は、結果セットから除外する必要があります。専用のフィールド(つまりユーザーの評価)で注文したいので、結果にどのドキュメントを含めるかを決める方法を調整する必要があります。

いずれにしても、「関連性が十分です」と定義する必要があります。なぜなら、スコアは実際にはクエリ間で比較できないため、「これはxyzに関連しました!

あなたは、含まれているドキュメントが関連性がなく、その基準に基づいてそれらのドキュメントを除外する理由を決定しなければなりません。さらに、それらをさらに上げる手段としてレビュースコアを使用します。関連性によって有機的に表示されます)。それ以外の場合は、それらを除外してユーザスコアで並べ替えることができます。ただし、ユーザーのエクスペリエンスとしてのユーザースコアは通常harder problem to make relevant than just order by the average of the votesです。

0

通常、クライアントは関連性や評価などによって異なる注文オプションを選択できます。しかし、あなたは、評価による注文は、おそらく十分ではないことは間違いありません。あなたができることは、関連性スコアリングの評価を考慮に入れることです。たとえば、「オーガニック」スコアに小さなブーストとして変換されたレーティングを掛けることによって、あなたはFunction Queriesでこれを行うことができます。それは難しい科学ではなく、いくつかの魔法が関与しています。多くは常識です。そして、何が最も効果的かを知るためには、非常に良い評価とテストが必要です。

また、検索の問題として扱わない場合は、ファセットを適用して、ユーザーが評価によって結果をフィルタリングできるようにすることができます。ユーザーが自分を助けてもらいましょう。しかし、私はこれがすべてのドメインで機能しないと想像することができます。

エンジニアは、関連性を定義できます。コンテンツ類似度スコアリングは、関連性を構成するものだけではありません。多くの情報検索の研究者と技術者は、コンテンツの類似性だけでなく文脈情報も使用すべきであることに同意します。これにより、検索モデルを定義するための余地が広がります。たとえば、普及したのはランク付けの学習(LTR)にアプローチし、ユーザープロファイルと以前の検索動作を考慮して、さまざまな機能を検索ログから学習し、より関連性の高いドキュメントをユーザーに提供します。 Solrはmoduleとしています。

関連する問題