2

/select?q=私のアプリケーションは、SOLR を使用した通常の検索 ( ) で正常に動作しています。

通常のクエリ URL: /select?q=title:lovely

アプリケーションに More Like This (MLT) を実装したいと考えています。以下のようにSolrでMLTを設定しました。

solrconfig.xml

  <requestHandler name="/mlt" class="solr.MoreLikeThisHandler">
  <lst name="defaults">
            <str name="mlt.fl">title</str>
            <str name="mlt.mintf">1</str>
            <str name="mlt.mindf">2</str>
            <str name="mlt.boost">true</str> 
  </lst>
  </requestHandler>

URL :

/mlt?q=title:lovely&mlt.fl=title

通常の選択クエリと同じように、MLT で結果とカウントを取得しています。MLT の構成に誤りがあった場合は、ご案内いただけますか?

前もって感謝します、

アニルジャヤンティ

4

2 に答える 2

2

solrconfig.xml の設定は正しいように見えます。termVectors=truePaige Cook が彼の回答で言及しているように、使用しているフィールドが用語ベクトルを schema.xmlに格納するように設定されていると、より良い結果が得られます。単語ベクトルは事後に追加することはできないため、インデックスを再構築して追加する必要がありますmlt.count。上位 N 件の結果のみを取得するには、リクエストにパラメーターを追加することを検討してください。

良好な MLT 結果を得るための私の経験では、実験に基づいてパラメータを微調整する必要がありますmlt.mintf。低く始めて、「正しいと感じる」結果が得られるまでゆっくりと増やしてください。類似性は定量化しようとする非常に主観的なものであり、適切な設定を得るにはいくつかの実験が必要です.

于 2012-10-05T22:35:26.207 に答える
0

Solr Wiki のMoreLikeThisドキュメントによると、スキーマ内のフィールドに対して TermVectors を有効にするか、フィールドを保存する必要があります。

また、上記のリンクで説明されているように、SearchHandler で MoreLikeThisComponent を使用することを検討することもできます。ただし、これは、アプリケーションで MLT 機能をどのように使用/実装するかによって異なります。

于 2012-10-05T17:14:59.437 に答える