天天看點

人臉識别算法_人臉識别算法常用性能評價名額

人臉識别算法_人臉識别算法常用性能評價名額

01

算法性能測試要到實際場景中

人臉識别算法的準确率是PR宣傳最多的,還有各大國際比賽的排名也是時常引人注目,刷數字如同上學考試刷高分一樣具有興奮性。但在實際應用中,沒有經過場景測試的準确率都是不可信的,同時僅僅隻看準确率一個名額評估算法的性能也是不合理的。

首先,準确率不是一個靜止不變的數字,在不同場景中,準确率是有變化的,算法的性能名額永遠是和場景強相關的。

底庫數量

底庫一萬人和底庫十萬人,同時過來相同一撥人進行比對,準确率是遠遠不同的。随着人數的上漲,底庫中人的相似度也會大幅提升。通常千人級别的底庫,準确率可以達到98%以上,五萬人級别的底庫,準确率就會下降到95%甚至更低。

環境條件

此外,在不同的測試環境中,準确率也有所不同。同一個人在光線情況良好的情況下很容易比對成功,而在弱光、逆光、強光照、陰陽臉、歪曲變形、運動模糊的條件下捕捉到的人臉,就極有可能發生拒絕識别或者錯誤識别的狀況。

訓練資料

算法的準确率還與訓練資料和實際場景中的照片資料有關系。如果訓練的時候用的資料都是網上明星一樣完美光照、背景的圖檔,而實際場景中很多陰陽臉、昏暗、變形、運動模糊、遮擋等不完美的圖檔,準确率就會很低。

而訓練時用了很多實際場景中的照片,準确率也會大幅提升,訓練算法用的資料越多,準确率就越高。對于算法的精度而言,訓練用的資料是十分重要的。對于十萬或者以上的場景,将底庫資料加入算法的訓練庫,用來訓練算法,那麼基本上在實際場景中,對于這十萬人的比對,準确率也會大幅提升。在公安安防這種億級場景中,誰能擁有億級資料進行算法訓練,誰就比較容易在測試中勝出。

算法精度的讨論離不開場景,抛開場景談算法精度都是扯淡。我們常常看到在國際大型比賽中大家的算法精度都已經刷到99.9X%的高位數字,其實比賽中訓練算法常用的是網上公開集,測試的資料也是網際網路上的資料。這種情況下相當于在簡單場景下大家把算法的精度擡到很高,放到實際場景中,各家的算法差距就會拉開。

在平安城市、雪亮工程等實際應用中,通常要在上億的資料庫中進行人臉比對,這種情況下,主要比拼的是各家算法的實力以及訓練資料庫的豐富程度了。

02

常見的算法性能名額

算法的優秀程度并不僅僅表現在準确率上面,召回率、精确率、ROC曲線、mAP、IoU等也是重要衡量名額。

在介紹這幾個的概念之前,需要先了解幾個簡單的名額:

TP-True Positive 将正類預測為正類。真正

TN-True Negative 将正類預測為負類。正确的誤報為錯誤的

FP-False Positive 将負類預測為正類。真負

FN-False Negative 将負類預測為負類。錯誤的誤報為正确的

人臉識别算法_人臉識别算法常用性能評價名額

準确率:

Accuracy=(TP+TN)/(TP+TN+FP+FN);

錯誤率:

Error Rate=(FP+FN)/(TP+TN+FP+FN);

精确率:

Precision=TP/(TP+FP);被分類為正确的示例中分對的比例;找的對

召回率:

Recall=TP/(TP+FN);實際為正确的示例中,被辨認出來的比例;找的全

很多情況下,精确率和召回率是互相沖突的,就像來一個人過人臉閘機,如果他在庫中,你希望他在實際場景中幾乎都能通過,召回率很高,那有可能也會有很多陌生人被誤識别為庫中的人, 也可以進來,相應精度率就會下降。反過來,如果想提升精确度,不放一個陌生人進來,可能就會有庫中人在某些場景比如強光照、化妝等被識别為陌生人,而無法進來,召回率就會下降。

F1-Measure:

這時,就有一個綜合評價名額F1-measure,就是Precision和Recall的權重調和平均:

人臉識别算法_人臉識别算法常用性能評價名額

當a=1的時候,就是最常見的

人臉識别算法_人臉識别算法常用性能評價名額

PR曲線:

是Precision-Recall曲線

人臉識别算法_人臉識别算法常用性能評價名額

圖:https://zhuanlan.zhihu.com/p/33273532

AP(Average Precision)平均精度,PR曲線圍起來的面積就是AP值。AP值越高代表分類器的性能越好。

mAP(Mean Average Precision):均值平均精度。每個類别AP的平均值就是mAP。

AP衡量的是模型在每個類别上的好壞而mAP衡量的是模型在所有類别上的好壞。

交并比:IoU(Intersection over Union)

是模型所預測的檢測框和真實(ground truth)的檢測框的交集和并集之間的比例。可以了解為系統檢測出來的框與原來的框的重合度。

ROC(Recevier Operator Characteristic Curve)曲線:

了解ROC曲線,需要先了解真正率、假正率的概念

真正率TPR(True Positive Rate)=TP/(TP+FN),表示預測為正的值占實際為正的值的比例;

假正率FPR(False Postive Rate)=FP/(FP+TN),表示預測為正的中實際是負的執行個體占實際為負的比例;

ROC指的是真正率和假正率之間的關系,真正率其實和召回率表示的一樣,表示查全率。真正率很高的時候,假正率就會上去,就會将一些負的預測為正的。

每一個點代表一個門檻值,最理想的點是(0,1),真正率為1,假正率為0。是以對于曲線來說,最靠近(0,1)坐标的店對應的門檻值是最佳門檻值。曲線越偏離45度對角線,算法性能越好。

人臉識别算法_人臉識别算法常用性能評價名額

圖:http://blog.csdn.net/abcjennifer/article/details/7359370

AUC(Area Under Curve):AUC代表的是ROC曲線所覆寫的區域面積,AUC越大,分類器分類效果越好。

在傳統的指紋識别算法中常用到FAR、FRR、EER的名額來衡量算法,有時人臉識别算法也會使用相同的名額進行衡量。

誤識率FAR:是指在标準資料庫上測試識别算法時,不同的比對分數大于給定門檻值,進而被認為是相同的比例,簡單地說就是“把不應該比對的當成比對的”的比例。

拒識率FRR:是指在标準資料庫上測試識别算法時,相同的比對分數低于給定門檻值,進而被認為是不同的比例,簡單地說就是 “把應該互相比對成功的當成不能比對的”的比例。

FAR(False Accept Rate)=FP/(FP+TN);不該比對的比對成功了占總的比對失敗比例;

拒識率:FRR(False Reject Rate)=FN/(TP+FN);該比對的沒有比對占總的比對成功的比列;

FAR和FRR和門檻值有很大關系。門檻值高的時候,拒識率高,誤識率低;門檻值低的時候,拒識率低,誤識率高。

等錯誤率EER:Equal Error Rate

以門檻值為橫坐标,錯誤接受率值/錯誤拒絕率值為縱坐标,用不同門檻值Ti、錯誤接受率FARi、錯誤拒絕率FRRi資料繪制曲線,誤識率點等于拒識率率點的縱坐标值為等錯誤率值。且EER所對應的門檻值一般為最佳門檻值。 

相關文章:

站在AI的風口上,飛起來并不很容易

從社會學角度看中國人工智能

AI+教育,做什麼?

視覺AI公司戰略一窺

白話AI晶片

2018 AI終端視覺晶片一覽

2018 AI雲端晶片一覽

人臉識别算法_人臉識别算法常用性能評價名額