人臉識別中的rank-n
人臉識別中的rank-n 代表的意思
原創這個昵稱唯一 最后發布于2017-09-02 11:05:13 閱讀數 2247 ?
展開
Rank-1
看一些論文總是在結果中看到rank-1,等等,但是就不知道什么意思,今天終于搞明白了,備注一下。
意思
rank 1, 就是第一次命中
rank k,就是在第k次以內命中
人臉識別中,就代表,與目標人臉,最相似的k個人臉中,成功命中(找到正確人臉)的概率(和)。
RANK曲線,一般又被稱呼為CMC曲線。
擴展閱讀:人臉識別中常用的指標:
1、rank-n
搜索結果中最靠前(置信度最高)的n張圖有正確結果的概率。
例如: lable為 m1,在100個樣本中搜索。
如果識別結果是 m1、m2、m3、m4、m5……,則此時rank-1的正確率為100%;rank-2的正確率也為100%;rank-5的正確率也為100%;
如果識別結果是 m2、m1、m3、m4、m5……,則此時rank-1的正確率為0%;rank-2的正確率為100%;rank-5的正確率也為100%;
如果識別結果是 m2、m3、m4、m5、m1……,則此時rank-1的正確率為0%;rank-2的正確率為0%;rank-5的正確率為100%
當待識別的人臉集合有很多時,則采取取平均值的做法。
2、Precision &?Recall
一般來說,Precision就是檢索出來的條目(比如:文檔、網頁等)有多少是準確的,Recall就是所有準確的條目有多少被檢索出來了。
Precision:準確率 output為1中ground truth也為1的 占ground truth為1的概率
Recall:召回率 output為1中ground truth也為1的 占output為1的概率
正確率 = 提取出的正確信息條數 / 提取出的信息條數
召回率 = 提取出的正確信息條數 / 樣本中的信息條數
準確率和召回率都是針對同一類別來說的,并且只有當檢索到當前類別時才進行計算,比如在person re-id中,一個人的label為m1,在測試集中包含3張此人的圖像,檢索出來的圖像按照得分從高到低順序為m1、m2、m1、m3、m4、m1….,此時
第一次檢索到m1,提取出的正確信息條數=1,提取出的信息條數=1,樣本中的信息條數=3,正確率=1/1=100%,召回率=1/3=33.33%;
第二次檢索到m1,提取出的正確信息條數=2,提取出的信息條數=3,樣本中的信息條數=3,正確率=2/3=66.66%,召回率=2/3=66.66%;
第三次檢索到m1,提取出的正確信息條數=3,提取出的信息條數=6,樣本中的信息條數=3,正確率=3/6=50%,召回率=3/3=100%;
平均正確率AP=(100%+66.66%+50%)/3=72.22%
而當需要檢索的不止一個人時,此時正確率則取所有人的平均mAP。
3、F-score
recall和precision的調和平均數??2 * P * R / (P + R)
從上面準確率和召回率之間的關系可以看出,一般情況下,Precision高,Recall就低,Recall高,Precision就低。所以在實際中常常需要根據具體情況做出取舍,例如一般的搜索情況,在保證召回率的條件下,盡量提升精確率。
很多時候我們需要綜合權衡這2個指標,這就引出了一個新的指標F-score。這是綜合考慮Precision和Recall的調和值。
當β=1時,稱為F1-score,這時,精確率和召回率都很重要,權重相同。當有些情況下,我們認為精確率更重要些,那就調整β的值小于1,如果我們認為召回率更重要些,那就調整β的值大于1。
比如在上面的例子中,在第三次檢索到m1時的爭取率為50%,召回率為100%,則F1-score=(2*0.5*1)/(0.5+1)=66.66%,而F0.5-score=(1.25*0.5*1)/(0.25*0.5+1)=55.56%
4、mAP
PR曲線下的面積(PR曲線: 所有樣本的precision和recall繪制在圖里)
例如:query-id = 1,query-cam = 1,gallery共有5張圖,按照下圖方式計算出recall和precision,以recall為橫坐標,precision為縱坐標,繪制PR曲線,曲線下方面積即為AP,當需要檢索的不止一個人時,此時取所有人的平均mAP。。
曲線下方面積計算方法有多種,例如 ap = ap + (recall - old_recall)*((old_precision+precision)/2);
AP衡量的是學出來的模型在單個類別上的好壞,mAP衡量的是學出的模型在所有類別上的好壞
5、CMC
對于single gallery shot來說,每一次query,對samples排序,找到匹配上id的gallery后,排除掉同一個camera下同一個id的sample。
CMC曲線是算一種top-k的擊中概率,主要用來評估閉集中rank的正確率。舉個很簡單的例子,假如在人臉識別中,底庫中有100個人,現在來了1個待識別的人臉(假如label為m1),與底庫中的人臉比對后將底庫中的人臉按照得分從高到低進行排序,我們發現:
如果識別結果是m1、m2、m3、m4、m5……,則此時rank-1的正確率為100%;rank-2的正確率也為100%;rank-5的正確率也為100%;
如果識別結果是m2、m1、m3、m4、m5……,則此時rank-1的正確率為0%;rank-2的正確率為100%;rank-5的正確率也為100%;
如果識別結果是m2、m3、m4、m5、m1……,則此時rank-1的正確率為0%;rank-2的正確率為0%;rank-5的正確率為100%;
同理,當待識別的人臉集合有很多時,則采取取平均值的做法。例如待識別人臉有3個(假如label為m1,m2,m3),同樣對每一個人臉都有一個從高到低的得分,
比如人臉1結果為m1、m2、m3、m4、m5……,人臉2結果為m2、m1、m3、m4、m5……,人臉3結果m3、m1、m2、m4、m5……,則此時rank-1的正確率為(1+1+1)/3=100%;rank-2的正確率也為(1+1+1)/3=100%;rank-5的正確率也為(1+1+1)/3=100%;
比如人臉1結果為m4、m2、m3、m5、m6……,人臉2結果為m1、m2、m3、m4、m5……,人臉3結果m3、m1、m2、m4、m5……,則此時rank-1的正確率為(0+0+1)/3=33.33%;rank-2的正確率為(0+1+1)/3=66.66%;rank-5的正確率也為(0+1+1)/3=66.66%;
6、ROC
ROC曲線是檢測、分類、識別任務中很常用的一項評價指標。曲線上每個點反映著對同一信號刺激的感受性。具體到識別任務中就是,ROC曲線上的每一點反映的是不同的閾值對應的FP(false positive)和TP(true positive)之間的關系。
曲線上的每一點反映的是不同的閾值對應的FP(false positive)和TP(true positive)之間的關系。通常情況下,ROC曲線越靠近(0,1)坐標表示性能越好。
TP : True Positive 預測為1,實際也為1;TN:True Nagetive 預測為0,實際也為0
FP:False Positive 預測為1,實際為0的;FN:False Nagetive 預測為0,實際為1的
TPR=TP/(TP+FN)=Recall。
FPR=FP/(FP+TN),FPR即為實際為好人的人中,預測為壞人的人占比。
以FPR為x軸,TPR為y軸畫圖,就得到了ROC曲線。
人臉識別服務 FRS 機器學習
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。