技術(shù)
導(dǎo)讀:隨著硬件性能的提升和人臉數(shù)據(jù)量的增大,人臉識(shí)別也越來(lái)越成熟,商業(yè)應(yīng)用也越來(lái)越多。經(jīng)常看到很多文章說(shuō),人臉識(shí)別算法做了什么什么改進(jìn)在LFW上的識(shí)別準(zhǔn)確率達(dá)到99.6%以上。
實(shí)際上,僅僅一個(gè)準(zhǔn)確率指標(biāo)是無(wú)法衡量一個(gè)模型的性能,準(zhǔn)確率無(wú)法體現(xiàn)出人臉識(shí)別中最重要的指標(biāo)通過(guò)率和拒絕率,通過(guò)率包含兩種情況同一個(gè)人通過(guò)的概率和不同人通過(guò)的概率,拒絕率包含兩種情況不同人被拒絕的概率和同一個(gè)人被拒絕的概率,通常我們希望模型在不同人通過(guò)率越低的情況下同一個(gè)人通過(guò)率越高越好,下面的評(píng)估指標(biāo)主要也是基于這兩個(gè)進(jìn)行演化的。
人臉識(shí)別
現(xiàn)在人臉識(shí)別的應(yīng)用多種多樣,如人臉考勤、實(shí)名驗(yàn)證、身份驗(yàn)證、人臉支付以及天網(wǎng)系統(tǒng)等。實(shí)際上底層的實(shí)現(xiàn)技術(shù)主要還是依靠人臉驗(yàn)證和人臉?biāo)阉?,人臉?yàn)證也稱為1:1人臉匹配,人臉?biāo)阉饕卜Q為1:N人臉匹配。
首先我們從包含人臉的圖片中通過(guò)人臉檢測(cè)提取出人臉的位置信息以及人臉關(guān)鍵點(diǎn),然后通過(guò)仿射變換結(jié)合人臉關(guān)鍵點(diǎn)進(jìn)行人臉對(duì)齊,獲取到對(duì)齊后的人臉圖片。再將人臉圖片通過(guò)人臉識(shí)別模型進(jìn)行人臉特征提取,提取出來(lái)的特征是一個(gè)高維向量,這個(gè)向量的維度通常是128、256、512、1024甚至更高。
判斷兩張人臉圖片是否相似的度量主要有兩個(gè)指標(biāo)歐式距離和余弦相似度。先通過(guò)人臉識(shí)別模型將人臉圖片轉(zhuǎn)換為特征向量。歐式距離顧名思義就是計(jì)算兩個(gè)向量的歐式距離,所以兩個(gè)向量的歐式距離越小表示他們?cè)较嗨?。余弦相似度就是?jì)算兩個(gè)向量的夾角的余弦值,cosθ的取值范圍在[?1,1],我們可以對(duì)其進(jìn)行歸一化操作到[0,1]通過(guò)0.5+0.5?cosθ來(lái)實(shí)現(xiàn),余弦相似度越大表示是同一個(gè)人的概率越大。
無(wú)論是1:1人臉匹配還是1:N人臉匹配,我們都需要先確定一個(gè)閾值(歐式距離或相似度),通常人臉相似的度量指標(biāo)都是用的相似度,我們后面所說(shuō)的閾值其實(shí)也就是一個(gè)相似度閾值。通過(guò)人臉數(shù)據(jù)集根據(jù)指定通過(guò)率或拒絕率來(lái)確定閾值,大于這個(gè)閾值表示為同一個(gè)人否則不是同一個(gè)人。
人臉驗(yàn)證
1:1人臉驗(yàn)證(verification),比對(duì)兩張圖片是否為同一個(gè)人,常見(jiàn)的應(yīng)用有火車(chē)站人臉閘機(jī)實(shí)名驗(yàn)證、手機(jī)人臉解鎖等。通過(guò)判斷比對(duì)圖片的相似度是否大于閾值,常用的性能評(píng)估指標(biāo)有如下幾個(gè)
FAR
FAR(False Accept Rate)認(rèn)假率,表示錯(cuò)誤的接受比例,與FPR(False Positive Rate)假正例率等價(jià),指不是同一個(gè)人卻被錯(cuò)誤的認(rèn)為是同一個(gè)人占所有不是同一個(gè)人比較的次數(shù),計(jì)算公式如下
關(guān)于詳細(xì)的混淆矩陣(TP、TN、FP、FN)說(shuō)明,請(qǐng)參考我的另一篇文章分類算法中常用的評(píng)估指標(biāo)
TAR
TAR(True Accept Rate)表示正確的接受比例,與TPR(True Positive Rate)真正率等價(jià),指是同一個(gè)人且被正確的認(rèn)為是同一個(gè)人占所有同一個(gè)人比較的次數(shù),計(jì)算公式如下
FRR
FRR(False Reject Rate)錯(cuò)誤拒絕率,與FNR(False Negative Rate)假負(fù)率,指是同一個(gè)人但被認(rèn)為不是同一個(gè)人占所有是同一個(gè)人比較的次數(shù),計(jì)算公式如下
在一些1:1的人臉識(shí)別比賽中,也會(huì)有一些其它的評(píng)估指標(biāo),F(xiàn)MR(false match rate)和FNMR(false non-match rate)。FMR指錯(cuò)誤匹配率等價(jià)于FAR,F(xiàn)NMR指錯(cuò)誤的不匹配率等價(jià)于FRR。
有時(shí)候還會(huì)看見(jiàn)類似于FNMR @ FMR = 0.000001,這種表達(dá)式所指示的是先在數(shù)據(jù)集上計(jì)算出FMR = 0.000001時(shí)的閾值,然后再根據(jù)這個(gè)閾值計(jì)算FNMR。類似于這種TAR=0.998@FAR=1e-6,表示的是當(dāng)不是同一個(gè)人通過(guò)率為1e-6時(shí),相同人的通過(guò)率為99.8%。對(duì)于1:1人臉驗(yàn)證來(lái)說(shuō)當(dāng)FAR越低的情況下,TAR越高越好
人臉?biāo)阉?/p>
1:N人臉識(shí)別評(píng)估分為兩種情況開(kāi)集識(shí)別(open-set identification)和閉集識(shí)別(close-set identification)。
在評(píng)估1:N的人臉識(shí)別時(shí)我們需要三組圖像,galleryG(底庫(kù),已注冊(cè)的人臉庫(kù)),probe(探針,待識(shí)別的人臉圖像),probe分為Pn和Pg,Pn中的人臉照片不在gallery中,被稱為imposter,Pg中的人臉照片在gallery中,被稱為genius。
開(kāi)集識(shí)別
開(kāi)集識(shí)別(open-set identification):開(kāi)集識(shí)別需要解決的問(wèn)題是判斷一個(gè)probePj在不在gallery中,如果在這個(gè)人是誰(shuí)。Pj可以在gallery中,也可以不在。
假設(shè)galleryG={g1,g2.....gn},gi表示gallery中的一個(gè)人,待測(cè)人臉Pj與每個(gè)gi計(jì)算一個(gè)相似度,用Sji表示,Sji表示兩張人臉圖片是同一個(gè)人的概率。我們將G中的每一個(gè)人與Pj計(jì)算相似度,得到一個(gè)集合S{sj1,sj2.....sjn},對(duì)集合S進(jìn)行由大到小的排序(用的歐式距離就是從小到大排序)。假定與Pj在gallery中對(duì)應(yīng)人的是g?,定義rank(Pj)=n表示Pj與g?的相似度排在第n位,rank1也稱為top match。
對(duì)于刷臉支付就是一個(gè)TOP1的open-set identification,人臉身份驗(yàn)證就是一個(gè)topk的open-set identification。
閉集識(shí)別
閉集識(shí)別(close-set identification):閉集識(shí)別需要解決的問(wèn)題是,在gallery中找到probePj,Pj屬于gallery中。與開(kāi)集識(shí)別一樣,閉集識(shí)別關(guān)心的也是在topk中是否包含正確的識(shí)別結(jié)果。
評(píng)估指標(biāo)
下面的評(píng)估指標(biāo)在開(kāi)集識(shí)別和閉集識(shí)別中都適用
DIR
DIR(Detection and Identification Rate):指Pj∈Pg與G中的真實(shí)的結(jié)果s?之間的相似度大于τ且大于其他所有與Pj不是同一個(gè)人的相似度在Pg中所占的比例,DIR衡量的是庫(kù)內(nèi)人員的通過(guò)性能。計(jì)算公式如下
下面我們來(lái)舉例說(shuō)明一下
假設(shè)G中有A、B、C三個(gè)人的人臉信息每個(gè)人有一張照片,Pj是屬于C的另一張人臉照片,如果Pj與A、B、C的相似度分別為0.5、0.6、0.9,τ為0.7,那么此時(shí)才算是匹配正確。如果Pj與C的相似度為0.68<τ,會(huì)被認(rèn)為是庫(kù)外人員從而導(dǎo)致漏匹配。如果Pj與A、B、C的相似度為0.6、0.8、0.78,那么此時(shí)Pj的TOP1匹配應(yīng)該是B,因?yàn)镃與Pj的相似度排在第二位是rank(Pj)=2,此時(shí)Pj匹配上了錯(cuò)誤的人。
FAR
FAR(False Alarm Rate):指Pj∈Pn與G中最相似的人相似度大于τ在Pn中所占的比例,F(xiàn)AR衡量的是對(duì)庫(kù)外人臉的拒絕性能也是人臉識(shí)別系統(tǒng)安全性的保證。計(jì)算公式如下
對(duì)于1:N的人臉?biāo)阉鱽?lái)說(shuō),當(dāng)FAR越低的情況下,DIR越高時(shí),表示模型的性能越好,下面我們通過(guò)一個(gè)例子來(lái)說(shuō)明一下,這兩個(gè)評(píng)估指標(biāo)是如何計(jì)算的
上表展示了Pg(照片在G中)和Pn(照片不在G中)在gallery(G)中的測(cè)試結(jié)果,a、b、c在G中分別對(duì)應(yīng)A、B、C,d、e、f均不在G中。閾值τ取0.7時(shí),我們來(lái)計(jì)算一下DIR和FIR
a與A的相似度最高,且SaA>τ,所以匹配成功雖然b與B的相似度SbB>τ,但SbBc與C的相似度最高,但ScC<τ,所以匹配錯(cuò)誤
所以DIR=1/3≈33.33%
d與A的相似度最高,且SdA<τ,因?yàn)閐不在庫(kù)中,所以匹配正確e與C的相似度最高,且SeC>τ,因?yàn)閏不在庫(kù)中,所以匹配錯(cuò)誤f與C的相似度最高,且SfC<τ,因?yàn)閒不在庫(kù)中,所以匹配正確
所以FAR=1/3≈33.33%