ROC受試者工作特征曲線AUC(Area Under Curve):ROC曲線下的面積,因為ROC“隨機(jī)猜測”模型通常對應(yīng)于其對角線,因而通常AUC的值范圍為0.5~1,其值越大說明模型算法的性能越好,AUC為0.5時模型算法為“隨機(jī)猜測”,其值為1時說明模型算法達(dá)到理想狀態(tài)。通常我們可以使用sklearn.metrics.auc(fpr, tpr)來求得AUC值。PRC(Precision-Recall Curve):精準(zhǔn)率-召回率曲線也叫PR曲線,其以Recall為X軸坐標(biāo),以Precision為Y軸坐標(biāo),通過對模型算法設(shè)定不同的閾值會得到不同的precision和recall值,將這些序列繪制到直角坐標(biāo)系上就得到了PR曲線,PR曲線下的面積為1時則說明模型算法性能最為理想。 以上評估指標(biāo)大部分用于圖像分類圖像識別圖像分割等等任務(wù)中,下面讓我們來看一下在目標(biāo)檢測里經(jīng)常用來評估模型算法性能的指標(biāo)。 IOU(Intersection over Union):交并比,指的是ground truth bbox與predict bbox的交集面積占兩者并集面積的一個比率,IoU值越大說明預(yù)測檢測框的模型算法性能越好,通常在目標(biāo)檢測任務(wù)里將IoU>=0.7的區(qū)域設(shè)定為正例(目標(biāo)),而將IoU<=0.3的區(qū)域設(shè)定為負(fù)例(背景),其余的會丟棄掉,形象化來說可以用如下圖來解釋IoU:
IoU形象化公式
如果我們用A表示ground truth bbox的面積,B表示predict bbox的面積,而I表示兩者的交集面積,那么IoU的計算公式如下:
AP(Average Percision):AP為平均精度,指的是所有圖片內(nèi)的具體某一類的PR曲線下的面積,其計算方式有兩種,第一種算法:首先設(shè)定一組recall閾值[0, 0.1, 0.2, …, 1],然后對每個recall閾值從小到大取值,同時計算當(dāng)取大于該recall閾值時top-n所對應(yīng)的最大precision。這樣,我們就計算出了11個precision,AP即為這11個precision的平均值,這種方法英文叫做11-point interpolated average precision;第二種算法:該方法類似,新的計算方法假設(shè)這N個樣本中有M個正例,那么我們會得到M個recall值(1/M, 2/M, …, M/M),對于每個recall值r,該recall閾值時top-n所對應(yīng)的最大precision,然后對這M個precision值取平均即得到最后的AP值。mAP(Mean Average Percision):mAP為均值平均精度,指的是所有圖片內(nèi)的所有類別的AP的平均值,目前,在目標(biāo)檢測類里用的最多的是mAP,一般所宣稱的性能是在IoU為0.5時mAP的值。常見的目標(biāo)檢測評估指標(biāo)輸出樣式如下: