2012-03-07 24 views
1

我知道默認詞頻率(tf)只是計算爲一個字段中搜索的特定詞語的次數的sqrt。因此,包含您正在搜索的詞彙的多個出現的文檔將具有更高的tf,並因此具有權重。更大的TF總是提高Lucene中的文檔分數嗎?

什麼我不能確定的是這是否有助於增加文檔得分,因爲重較高或降低文檔得分,因爲它的移動文檔向量與查詢向量的書Hibernate Search的行動遠似乎在說(第363頁)。我承認我很努力地看到文檔向量模型如何適用於lucene評分公式

回答

1

我沒有這本書來檢查,但基本上(如果我們忽略了可以在索引編制時手動設置的不同提升時間),有三個原因,一些文件的分數可能比得分的其他文件與Lucene的默認評分模型和給定的查詢更高(或更低):

  • 查詢的術語具有低文檔頻率(提高得分的IDF部分),
  • 查詢期限在文檔中出現的次數很多(提升TF部分評分),
  • 查詢的術語出現在文檔的一個相當小的字段中(提高了評分的norm部分)。

這意味着,對於兩個文件D1和D2以及一個查詢術語T,如果

  • 出現t n的D1倍,
  • 出現t P> n的D2倍,
  • D2的查詢字段與D1具有(幾乎)相同的大小(字詞的數量),

D2將具有比D1更好的分數。

+0

感謝這是我最初的理解,但我需要更多一點,這個得分如何適合矢量空間模型,我沒有看到它。 – 2012-03-08 08:34:56

+0

Lucene沒有嚴格使用VSM,而是VSM和布爾模型的組合。但是,對於不連續查詢,VSM適用。維基百科有一篇非常好的文章,解釋TF-IDF評分如何應用於VSM http://en.wikipedia.org/wiki/Vector_space_model#Example:_tf-idf_weights – jpountz 2012-03-08 09:50:55

+0

對不起,我已經閱讀了幾次鏈接,但我仍然沒有得到如何適合Lucene方程。我知道Lucene使用布爾模型去除不匹配任何術語的文檔,但無法看到它何時將文檔向量與查詢向量進行比較,它似乎只對與查詢匹配的文檔中的每個匹配術語執行tf * idf *規範並取得最高分。你也可以擴展你關於析取查詢的觀點,因爲我試圖實現這個版本。 – 2012-03-08 10:04:11

相關問題