信息检索(IR)的评价指标介绍-准确率、召回率、F1、mAP、ROC、AUC
在信息檢索、分類體系中,有一系列的指標(biāo),搞清楚這些指標(biāo)對于評價(jià)檢索和分類性能非常重要,因此最近根據(jù)網(wǎng)友的博客做了一個(gè)匯總。
準(zhǔn)確率、召回率、F1
信息檢索、分類、識(shí)別、翻譯等領(lǐng)域兩個(gè)最基本指標(biāo)是召回率(Recall Rate)和準(zhǔn)確率(Precision Rate),召回率也叫查全率,準(zhǔn)確率也叫查準(zhǔn)率,概念公式:
? ? ? ? ? ? ?召回率(Recall)????? =? 系統(tǒng)檢索到的相關(guān)文件 / 系統(tǒng)所有相關(guān)的文件總數(shù)
準(zhǔn)確率(Precision) = ?系統(tǒng)檢索到的相關(guān)文件 / 系統(tǒng)所有檢索到的文件總數(shù)
圖示表示如下:
?
?
注意:準(zhǔn)確率和召回率是互相影響的,理想情況下肯定是做到兩者都高,但是一般情況下準(zhǔn)確率高、召回率就低,召回率低、準(zhǔn)確率高,當(dāng)然如果兩者都低,那是什么地方出問題了。一般情況,用不同的閥值,統(tǒng)計(jì)出一組不同閥值下的精確率和召回率,如下圖:
?
?
如果是做搜索,那就是保證召回的情況下提升準(zhǔn)確率;如果做疾病監(jiān)測、反垃圾,則是保準(zhǔn)確率的條件下,提升召回。
所以,在兩者都要求高的情況下,可以用F1來衡量。
?
[python]?view plaincopy?
?
公式基本上就是這樣,但是如何算圖1中的A、B、C、D呢?這需要人工標(biāo)注,人工標(biāo)注數(shù)據(jù)需要較多時(shí)間且枯燥,如果僅僅是做實(shí)驗(yàn)可以用用現(xiàn)成的語料。當(dāng)然,還有一個(gè)辦法,找個(gè)一個(gè)比較成熟的算法作為基準(zhǔn),用該算法的結(jié)果作為樣本來進(jìn)行比照,這個(gè)方法也有點(diǎn)問題,如果有現(xiàn)成的很好的算法,就不用再研究了。
?
AP和mAP(mean Average Precision)
?
mAP是為解決P,R,F-measure的單點(diǎn)值局限性的。為了得到 一個(gè)能夠反映全局性能的指標(biāo),可以看考察下圖,其中兩條曲線(方塊點(diǎn)與圓點(diǎn))分布對應(yīng)了兩個(gè)檢索系統(tǒng)的準(zhǔn)確率-召回率曲線
可以看出,雖然兩個(gè)系統(tǒng)的性能曲線有所交疊但是以圓點(diǎn)標(biāo)示的系統(tǒng)的性能在絕大多數(shù)情況下要遠(yuǎn)好于用方塊標(biāo)示的系統(tǒng)。
從中我們可以 發(fā)現(xiàn)一點(diǎn),如果一個(gè)系統(tǒng)的性能較好,其曲線應(yīng)當(dāng)盡可能的向上突出。
更加具體的,曲線與坐標(biāo)軸之間的面積應(yīng)當(dāng)越大。
最理想的系統(tǒng), 其包含的面積應(yīng)當(dāng)是1,而所有系統(tǒng)的包含的面積都應(yīng)當(dāng)大于0。這就是用以評價(jià)信息檢索系統(tǒng)的最常用性能指標(biāo),平均準(zhǔn)確率mAP其規(guī)范的定義如下:(其中P,R分別為準(zhǔn)確率與召回率)
ROC和AUC
ROC和AUC是評價(jià)分類器的指標(biāo),上面第一個(gè)圖的ABCD仍然使用,只是需要稍微變換。
?
回到ROC上來,ROC的全名叫做Receiver Operating Characteristic。
ROC關(guān)注兩個(gè)指標(biāo)
True Positive Rate ( TPR ) ?= TP / [ TP + FN] ,TPR代表能將正例分對的概率
False Positive Rate( FPR ) = FP / [ FP + TN] ,FPR代表將負(fù)例錯(cuò)分為正例的概率
在ROC 空間中,每個(gè)點(diǎn)的橫坐標(biāo)是FPR,縱坐標(biāo)是TPR,這也就描繪了分類器在TP(真正的正例)和FP(錯(cuò)誤的正例)間的trade-off。ROC的主要分析工具是一個(gè)畫在ROC空間的曲線——ROC curve。我們知道,對于二值分類問題,實(shí)例的值往往是連續(xù)值,我們通過設(shè)定一個(gè)閾值,將實(shí)例分類到正類或者負(fù)類(比如大于閾值劃分為正類)。因此我們可以變化閾值,根據(jù)不同的閾值進(jìn)行分類,根據(jù)分類結(jié)果計(jì)算得到ROC空間中相應(yīng)的點(diǎn),連接這些點(diǎn)就形成ROC curve。ROC curve經(jīng)過(0,0)(1,1),實(shí)際上(0, 0)和(1, 1)連線形成的ROC curve實(shí)際上代表的是一個(gè)隨機(jī)分類器。一般情況下,這個(gè)曲線都應(yīng)該處于(0, 0)和(1, 1)連線的上方。如圖所示。
用ROC curve來表示分類器的performance很直觀好用。可是,人們總是希望能有一個(gè)數(shù)值來標(biāo)志分類器的好壞。
于是Area Under roc Curve(AUC)就出現(xiàn)了。顧名思義,AUC的值就是處于ROC curve下方的那部分面積的大小。通常,AUC的值介于0.5到1.0之間,較大的AUC代表了較好的Performance。
AUC計(jì)算工具:
http://mark.goadrich.com/programs/AUC/
P/R和ROC是兩個(gè)不同的評價(jià)指標(biāo)和計(jì)算方式,一般情況下,檢索用前者,分類、識(shí)別等用后者。
參考鏈接:
http://www.vanjor.org/blog/2010/11/recall-precision/
http://bubblexc.com/y2011/148/
http://wenku.baidu.com/view/ef91f011cc7931b765ce15ec.html
出處:https://yongyuan-workbench.rhcloud.com/%E4%BF%A1%E6%81%AF%E6%A3%80%E7%B4%A2ir%E7%9A%84%E8%AF%84%E4%BB%B7%E6%8C%87%E6%A0%87%E4%BB%8B%E7%BB%8D-%E5%87%86%E7%A1%AE%E7%8E%87%E3%80%81%E5%8F%AC%E5%9B%9E%E7%8E%87%E3%80%81f1%E3%80%81map%E3%80%81r/
 
總結(jié)
以上是生活随笔為你收集整理的信息检索(IR)的评价指标介绍-准确率、召回率、F1、mAP、ROC、AUC的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: libSVM应用举例
- 下一篇: Gray-level Co-occurr
