IR的評價指標-MAP,NDCG和MRR

IR的評價指標-MAP,NDCG和MRR

MAP(Mean Average Precision):

單個主題的平均準確率是每篇相關文檔檢索出後的準確率的平均值。主集合的平均準確率(MAP)是每個主題的平均準確率的平均值。MAP 是反映系統在全部相關文檔上性能的單值指標。系統檢索出來的相關文檔越靠前(rank 越高),MAP就可能越高。如果系統沒有返回相關文檔,則準確率默認爲0。
例如:假設有兩個主題,主題1有4個相關網頁,主題2有5個相關網頁。某系統對於主題1檢索出4個相關網頁,其rank分別爲1, 2, 4, 7;對於主題2檢索出3個相關網頁,其rank分別爲1,3,5。對於主題1,平均準確率爲(1/1+2/2+3/4+4/7)/4=0.83。對於主題2,平均準確率爲(1/1+2/3+3/5+0+0)/5=0.45。則MAP= (0.83+0.45)/2=0.64。”

NDCG(Normalized Discounted Cumulative Gain):

計算相對複雜。對於排在結位置n處的NDCG的計算公式如下圖所示:

在MAP中,四個文檔和query要麼相關,要麼不相關,也就是相關度非0即1。NDCG中改進了下,相關度分成從0到r的r+1的等級(r可設定)。當取r=5時,等級設定如下圖所示:

(應該還有r=1那一級,原文檔有誤,不過這裏不影響理解)

例如現在有一個query={abc},返回下圖左列的Ranked List(URL),當假設用戶的選擇與排序結果無關(即每一級都等概率被選中),則生成的累計增益值如下圖最右列所示:

考慮到一般情況下用戶會優先點選排在前面的搜索結果,所以應該引入一個折算因子(discounting factor): log(2)/log(1+rank)。這時將獲得DCG值(Discounted Cumulative Gain)如下如所示:

最後,爲了使不同等級上的搜索結果的得分值容易比較,需要將DCG值歸一化的到NDCG值。操作如下圖所示,首先計算理想返回結果List的DCG值:

然後用DCG/MaxDCG就得到NDCG值,如下圖所示:

MRR(Mean Reciprocal Rank):

是把標準答案在被評價系統給出結果中的排序取倒數作爲它的準確度,再對所有的問題取平均。相對簡單,舉個例子:有3個query如下圖所示:

(黑體爲返回結果中最匹配的一項)

可計算這個系統的MRR值爲:(1/3 + 1/2 + 1)/3 = 11/18=0.61。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章