0

我有一個包含500萬個條目的Lucene索引。我用索引文件的「扭曲」片段查詢這個索引。然後,我得到前1個文件及其得分。從這些數據中,我需要判斷返回的文檔是否正確。我的第一種方法是使用返回文檔的ID和分數來訓練一個隨機森林(也就是說,對於每個搜索的片段,我將一個訓練實例插入包含返回數據的隨機森林中)。然而,雖然它對一些文件來說相當有效,但對其他文件的表現卻很差。分類Lucene的結果更好的精度

對於每一個文件,對Lucene索引查詢已經能夠找到正確的文檔一些片段,但不是爲別人(這讓我有100%的召回,但低精度)。

如何設置告訴其結果是正確有效的啓發?

回答

0

如果我正確地得到你的問題,你要檢索其扭曲的形式是當前查詢該文檔。這種情況類似於通常用字級n-gram(稱爲帶狀皰疹)解決的近似重複檢測問題。 Jaccard coeff。的一組帶狀皰疹是確定這種情況的有效方法。欲瞭解更多詳情,請參閱近複製文檔檢測安德烈·布羅德的paper ..

+0

感謝Debasis。查詢只是一個扭曲的片段,而不是文件本身。事實上,我沒有索引原始內容,而是刪除了停用詞,創建了2克剩餘條款並生成了索引。片段從流源收集,並且類似地移除停用詞併產生2克。它在召回方面表現相當出色(對於每個流式文檔,我至少能夠正確檢測一個代碼段)。我的問題是精確。我需要能夠很好地分辨出top1文檔對於給定的片段是否正確。 – 2014-12-03 13:45:41