Deep Learning 論文筆記 (3): Deep Learning Face Attributes in the Wild


 這是Xiaogang Wang和Xiaoou Tang組的一篇technical report,作者是優秀的學弟Ziwei Liu。

 

 通常人臉識別里面先要對人臉圖像進行檢測和對齊,然后在相應的地方提取特征,但是在自然場景中,由於背景混亂,人臉檢測和對齊會受到影響,進而影響特征提取和最后的識別效果。

 這篇論文的主要思想是通過學習兩個deep network來構建face attributes recognition的系統,其中第一個用來localization,第二個用來提取feature。

 主要流程:

 (a)(b)是corse to fine去localize人臉的位置,經過(a)的CNN得到臉和肩膀部分的圖片,經過(b)的CNN進一步得到人臉部分的圖片。

 (c)的CNN是用來學習人臉部分圖片的特征,最后將fully connected layer的特征拼在一起,用(d)的SVM去得到分類結果。

 

 Learning algorithm:

 1. 用ImageNet里面的object categories去pre-train (a)和(b)中的兩個CNN。使用判斷圖片里面是否含有object的task去pre-train一個希望能夠自動定位人臉位置的CNN,有一定道理的,知道object,基本上也知道人臉在哪一塊了。

 2. 用CelebFaces數據集的face identity的信息去pre-train (c)中用來提取人臉特征的CNN。從(c)中可以看出來,它和一般的CNN有一點不一樣,在中間兩層是局部的卷積,前后兩層是全局卷積,局部卷積的效果在於能夠保持圖片的位置信息,具體細節參考原論文

 3. 最后再用attribute的label分別對(a)(b)(c)三個CNN進行fine-tune。

 

 實驗結果:

 作者給出的實驗結果平均來說比FaceTracker,PANDA-w, PANDA-l好8%,10%,3%。但是文章在pre-train (a)(b)中的CNN時用到了額外的ImageNet里面的dataset,在pre-train (c)中的CNN時用到了額外的CelebFaces dataset。作者提到PANDA-l有用到ground truth bounding box和landmark positions,但是由於本人不清楚FaceTracker,PANDA-w, PANDA-l這三種比較的方法是否有用到其他額外的dataset或者其他information,因此對於實驗結果的比較是否公平不好給出意見。

 

 結果分析:

 文章里面有一些分析比較有意思。第一個是分析在(c)中的CNN最后的fully connected layer的每一個neuron的作用。如果把face images對每一個neuron的響應分成強,中,弱三類,對每一類算出一個平均臉,最后發現其實每一個neuron都有一個semantic concept。如下圖所示:

 

 第二個分析是(c)的CNN的最后fully connected layer的weight matrix,每一個列向量(我覺得好像是行向量)都相當於對應着分開一個attribute的正負樣本的hyperplane,那么所有的列向量就是分開所有attributes的hyperplanes。將這些向量用K-means聚類,最后得到下圖,相似的attributes聚類在一起,表明相似的attributes的hyperplane也相似。

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM