【深度学习】同款商品识别的克星--ArcFace!
作者:杰少,一品煉丹師
ArcFace: Additive Angular Margin Loss for Deep Face Recognition(CVPR2019)
簡 介
利用深度卷積神經(jīng)網(wǎng)絡(luò)(DCNNs)進(jìn)行大規(guī)模人臉識別特征學(xué)習(xí)的一大挑戰(zhàn)是設(shè)計合適的損失函數(shù)以提高識別能力。
在歐氏空間中,中心損失是對深層特征與其對應(yīng)的類中心之間的距離進(jìn)行懲罰,以實(shí)現(xiàn)類內(nèi)緊性;
SphereFace假設(shè)最后一個全連接層中的線性變換矩陣可用作角度空間中類中心的表示,并以乘法的方式懲罰深度特征與其相應(yīng)權(quán)重之間的角度。
最近,一個流行的研究路線是將margins納入已建立的損失函數(shù),以最大限度地提高人臉類別可分性。
在本文中,我們提出了一個附加的角Margin損失(ArcFace)來獲得高分辨的人臉識別特征。由于與超球面上的測地距離精確對應(yīng),所提出的弧面具有清晰的幾何解釋。通過大量的實(shí)驗,我們證明了ArcFace的效果始終優(yōu)于目前最好的模型,并且可以輕松實(shí)現(xiàn),計算開銷可以忽略不計。
背 景
目前訓(xùn)練人臉識別的DCNN方案主要有兩種:
訓(xùn)練一個多分類器,它可以將訓(xùn)練集合中的不同實(shí)體分開;
訓(xùn)練embeddings,例如triplet loss。
但是softmax的loss和triplet loss都存在一些缺點(diǎn),
對于softmax來說:
線性轉(zhuǎn)化矩陣和是線性相關(guān)的;
學(xué)習(xí)得到的特征對于閉集分類問題是可分離的,而對于開集人臉識別問題,學(xué)習(xí)到的特征是不可分辨的;
對于triplet loss來說:
特別是對于大規(guī)模數(shù)據(jù)集,人臉三元組的數(shù)量會出現(xiàn)組合爆炸,導(dǎo)致迭代步驟的數(shù)量顯著增加;
semi-hard樣本挖掘?qū)τ谟行У哪P陀?xùn)練是一個相當(dāng)困難的問題;
提出的方法
1. ArcFace
softmax loss:
其中,表示第個樣本的深度特征,屬于類。表示權(quán)重的第列,表示偏差項。和分別表示batch大小和類的個數(shù)。但是,softmax函數(shù)沒有直接優(yōu)化特征的embedding來加強(qiáng)類內(nèi)樣本的相似度以及不同類樣本之間的不一致性。
為了方便,此處我們將設(shè)置為0,然后令
其中,是權(quán)重和特征之間的權(quán)重,我們通過范數(shù)令,同樣的我們可以做相同的處理,然后對其rescale,于是我們得到:
由于embedding特征分布在超球面上的每個特征中心,我們在和加入一個增量的角度margin懲罰,以是的我們類內(nèi)更緊,類間更可區(qū)分。由于所提出的增加角度margin懲罰函數(shù)等于在超球面中標(biāo)準(zhǔn)化測地距離margin的懲罰,因此我們將該方法命名為ArcFace。
我們從8個不同身份的人臉圖像中選取足夠的樣本(約1500張/類)分別訓(xùn)練具有softmax和ArcFace損失的二維特征嵌入網(wǎng)絡(luò)。如圖3所示,softmax損失提供了大致可分離的特征嵌入,但在決策邊界中產(chǎn)生了明顯的模糊性,
如上圖所示,softmax損失提供了大致可分離的特征embedding,但在決策邊界中產(chǎn)生了明顯的模糊性,ArcFace損失顯然可以在最近的類之間得到更明顯的間隙。
ArcFace算法
2.與SphereFace和CosFace的比較
1.數(shù)值相似度
在SphereFace和CosFace和ArcFace中,我們都加入來margin的懲罰,我們用分別表示乘法角度margin,增加的角度margin和增加的cosine margin。從數(shù)值的角度來看,不同的margin懲罰都是希望相同類之間更為緊密,類之間分的更開。
通過將所有的margin懲罰放在一個框架中,我們有:
通過組合,我們往往可以獲得更好的結(jié)果。
2. 幾何區(qū)別
除了數(shù)值相似度之外,ArcFace擁有更好的幾何屬性,如下圖所示:
3. 和其它Loss比較
其他損失函數(shù)可以基于特征和權(quán)重向量的角度來設(shè)計。例如,我們可以設(shè)計一個loss來增強(qiáng)超球面上的類內(nèi)緊性和類間差異性。
Intra-Loss
這邊是加上后面的項,而我們的目標(biāo)是最小化,所以我們希望盡可能的小,這樣類內(nèi)就會被壓縮,從而變得更緊。
Inter-Loss
這邊是減去后面的項,所以我們需要減去的項盡可能大,也就是盡可能大,也就是不同類之間盡可能的角度大。
Triplet Loss
想加大三元組樣本的角度margin, 此處我們采用triplet-loss作為特征的角表示,
實(shí)驗
ArcFace在所有三個測試集上都達(dá)到了最高的驗證精度;
組合margin框架比單獨(dú)的SphereFace和CosFace有更好的效果,但都不如ArcFace效果好;
Triplet Loss優(yōu)于標(biāo)準(zhǔn)Softmax Loss,說明了margin對提高效果的重要性;
在三元樣本中使用margin懲罰比在樣本和中心之間插入margin效果要差,就像在ArcFace中一樣。最后,我們將累呢、類間丟失和Triplet Loss合并到ArcFace中,但是沒有觀察到任何改進(jìn),這讓我們相信ArcFace已經(jīng)加強(qiáng)了類內(nèi)更緊、類間差異性和分類margin。
ArcFace相較于Triplet-Loss有更好的margin;
小結(jié)
本文提出了一種Additive Angular Margin Loss ,該函數(shù)能有效地提高DCNNs學(xué)習(xí)的特征嵌入在人臉識別中的判別能力。在文獻(xiàn)報道的最全面的實(shí)驗中,我們證明了我們的方法始終優(yōu)于目前最好的方法。
參考文獻(xiàn)
ArcFace: Additive Angular Margin Loss for Deep Face Recognition,CVPR2019
總結(jié)
以上是生活随笔為你收集整理的【深度学习】同款商品识别的克星--ArcFace!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎么在pptv里下载电视剧
- 下一篇: 【论文解读】IPM2020 | 长短期兴