我試圖在Lucene中實現一個與tf-idf無關的自定義評分公式(因此只改變相似性,例如,將不起作用)。Lucene自定義評分(Lucene 3.2)涉及遍歷索引中的所有文檔 - 最快的方式?
爲了做到這一點,我需要能夠接受我的自定義查詢併爲存儲在索引中的每個文檔生成一個分數 - 而不僅僅是匹配查詢中條款的分數(因爲我的評分涉及檢查什麼基本上都是同義詞,所以即使文檔沒有確切的術語,它仍然可以產生積極的分數)。是簡單創建IndexReader併爲所有文檔調用Document d = reader.doc(i)
(如描述here)的最佳方法,然後當場生成分數?
我一直在環視Lucene的得分內部,特別是各種Scorer和Collector類,看來會發生什麼(對於Lucene 3.2)是一個Weight提供了一個Scorer,它與Collector一起循環遍歷所有文檔匹配查詢。我能否以某種方式利用此結構,但是再次獲得自定義Scorer實現來考慮所有文檔?
我很好奇你想要實現什麼樣的得分。 –