人臉識別sphereface,損失函式,論文詳解 SphereFace論文學習
SphereFace論文學習
2018年02月07日 14:00:30 cdknight_happy 閱讀數:2187</div> <div class="operating"> </div> </div> </div> </div> <article class="baidu_pl"> <div id="article_content" class="article_content clearfix csdn-tracking-statistics" data-pid="blog" data-mod="popu_307" data-dsm="post"> <div class="article-copyright"> 版權宣告:本文為博主原創文章,未經博主允許不得轉載。 https://blog.csdn.net/cdknight_happy/article/details/79268613 </div> <div id="content_views" class="markdown_views prism-atom-one-dark"> <!-- flowchart 箭頭圖示 勿刪 --> <svg xmlns="http://www.w3.org/2000/svg" style="display: none;"><path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path></svg> <p>論文 《SphereFace: Deep Hypersphere Embedding for Face Recognition》 <br>
程式碼: https://github.com/wy1iu/sphereface
摘要
論文主要是針對開集的人臉識別任務,在超球面上做到特徵分佈高內聚、低耦合。作者提出了一種新的損失函式,叫做angular softmax(A-Softmax)。
簡介
閉集的人臉識別是一個分類問題,只需要特徵是可分的即可;開集的人臉識別更加符合實際業務需要,本質上是一個度量學習的問題,需要學習到有判別力的大間隔的特徵。
理想的開集人臉識別學習到的特徵需要滿足的條件是在特定的度量空間內,需要同一類內的最大距離小於不同類之間的最小距離。然後再使用最近鄰檢索就可以實現良好的人臉識別和人臉驗證效能。
center loss只是強調了類內的聚合度;對比損失和三元組損失需要精心地構建影象對和三元組,耗時並且構建的訓練對的好壞直接影響識別效能。
一般都是想在歐式空間中學習到有判別力的特徵,作者提出了一個問題:歐式空間的間隔總是適合於表示學習到了有判別力的特徵嗎?
在上圖中,對於一個二分類的softmax,決策邊界是(W1−W2)x+b1−b2=0(W1−W2)x+b1−b2=0,這樣設計的損失函式直接關注的是特徵的角度可分性,使得訓練出的CNN學習到具有角度判別力的特徵。
作者在修改的softmax的基礎上進一步加強了限制條件設計了A-Softmax,引入了一個整數m加大角度間隔。決策邊界變形為
核心思想
三種softmax函式的決策邊界對比
softmax-loss
二分類的softmax輸出:
Wi和bi是最後一個全連接層中和第i類關聯的參數Wi和bi是最後一個全連線層中和第i類關聯的引數.
Modified softmax
由於WTix+bi=||WT||||x||cos(θi)+biWiTx+bi=||WT||||x||cos(θi)+bi。多分類的情況下,分類邊界也是同樣的。
A-softmax
A-softmax是在modified softmax的基礎上新增更嚴格的限制,即要求cos(mθ1)>cos(θ2)或cos(mθ2)>cos(θ1)cos(mθ1)>cos(θ2)或cos(mθ2)>cos(θ1);
泛化形式為:
最優化A-Softmax損失本質上是使得學習到的特徵在超球面上更加具有可區分性。
A-Softmax損失的性質
- m越大,損失函式最優化的難度越大,形成的角度間隔越大;
- 由於要使得同類的最大角度分佈小於最小的不同類之間的間隔,所以m的取值有下限。對於二分類的情況,mmin≥2+3–√mmin≥2+3;求解過程可以參考https://www.cnblogs.com/heguanyou/p/7503025.html#_caption_5
實驗中,作者一般使用m=4.
實驗
預處理:MTCNN人臉檢測和特徵點提取;減127.5除128處理影象。
使用餘弦距離比較影象提取的特徵的相似度;
所有的測試影象的特徵都是原始人臉影象的特徵和水平翻轉之後的人臉影象的特徵的連線向量作為最終特徵。
m越大,準確率越高
A-Softmax準確率全面超越Softmax
對比其他演算法
附錄
移除倒數第二層的ReLU
移除倒數第二層(一般為全連線層)的ReLU,學習到的特徵分佈不被限制在第一象限,學習到的特徵分佈更加合理。
權重歸一化的作用
歸一化權重可以減小訓練資料不均衡造成的影響。
權重矩陣的第i行WiWi的範數主要取決於第i類訓練樣本的數量和分佈情況。
對於人臉驗證的任務和開集人臉識別的任務而言,測試影象的類是從未在訓練樣本中出現過的,所以應該消除上述先驗資訊。具體的做法就是歸一化和softmax函式直接連線的全連線層的W。
偏置項置0
偏置項置0,主要是為了方便幾何分析。作者分析了預訓練的CASIC的模型,發現大部分的偏置項取值都是0;還對比了在MNIST上加不加偏置項,學習到的特徵分佈基本沒什麼變化。
視覺化在MNIST資料集上通過A-Softmax loss學習到的特徵分佈
AFS Score
每一個idea有多大的作用
不同網路在MegaFace上的作用
A-Softmax的近似最優化策略
初始時,λλ逐漸減小到5。
A-Softmax 於 L-Softmax對比
轉載自:https://www.cnblogs.com/heguanyou/p/7503025.html#_caption_5