論文提要 Deep Face Recognition

cv_family_z發表於2015-11-16

本文是關於深度人臉識別,British Machine Vision Conference, 2015
Visual Geometry Group Department of Engineering Science
University of Oxford
VGG網路提出的那幫傢伙

開原始碼 http://www.robots.ox.ac.uk/~vgg/software/vgg_face/

本文主要說了兩件事:
1)從零開始構建一個人臉識別資料庫,一共 2.6M images, over 2.6K people,構建過 程主要是程式實現的,少量人工參與。
2)通過對比各種CNN網路,提出了一個簡單有效的CNN網路,在各種公開的人臉識別資料庫上得到很好的效果。

首先來看看各種資料庫的比較:

這裡寫圖片描述

Google 的資料庫資料量最大,但是人家不是公開的。

下圖是我們資料庫裡的六個人的人臉照片

這裡寫圖片描述

2 Related Work
人臉識別一開始大家都是基於 shallow 方法來解決, SIFT, LBP, HOG等。最近隨著CNN網路的優異表現,很多學者用CNN來做人臉識別, DeepFace,一系列DeepID, Facenet。

3 Dataset Collection
下面來說說我們的資料庫是怎麼構建的。
Stage 1. Bootstrapping and filtering a list of candidate identity names
Stage 2. Collecting more images for each identity
Stage 3. Improving purity with an automatic filter
Stage 4. Near duplicate removal
Stage 5. Final manual filtering

這裡寫圖片描述

4 Network architecture and training
受文獻【19】的啟發,我們使用了 很深的網路

這裡我們將人臉識別看做分類問題,有多少個人臉就有多少個類。參考文獻【17】,我們使用 triplet loss 來訓練得到一個 face embedding,這可以提高效果。最小化triplet loss 如下:

這裡寫圖片描述

4.3 Architecture
這裡我們考慮了三個網路結構,A,B,D。 網路A 的結構如下:

這裡寫圖片描述

這裡我們將全連結層看做卷積層。網路B,D比網路A分別多了2個和5個卷積層。輸入的人臉影象大小是 224*224。

4.4 Training
這裡主要說了一下訓練時的一些引數設定。

5 Datasets and evaluation protocols
在兩個資料庫上進行了測試 :
Labeled Faces in the Wild dataset (LFW), YouTube Faces (YTF)

6 Experiments and results

硬體配置: NVIDIA Titan Black GPUs with 6GB of onboard memory, using
four GPUs together

不同網路結構效果如下:
這裡寫圖片描述

在LFW上和其他演算法的結果對比:
這裡寫圖片描述

在 Youtube 上和其他演算法的結果對比:
這裡寫圖片描述

6.1 Component analysis
Dataset curation: 在網路A上,資料淨化後的效果要差一下,可能原因有兩個:1)更多的有噪聲的資料會好些,2)可能是淨化後把一下較難的訓練資料去除了。
Alignment: 對測試影象進行 2D對齊是有幫助的,但是對訓練影象進行2D對齊沒有幫助
Architecture: 網路B的效果最好。可能的原因比較多。
Triplet-loss embedding: 這個對結果的改善還是挺大的。

相關文章