羅燦峰
(武漢傳媒學(xué)院,湖北 武漢 430205)
人臉識別技術(shù)通過圖像采集設(shè)備采集目標(biāo)人臉圖像,并利用相應(yīng)的算法識別目標(biāo)身份。與其他生物特征識別技術(shù)相比,人臉識別具有識別過程友好方便、操作簡便、多人同時識別等優(yōu)點。人臉識別技術(shù)具有廣泛的應(yīng)用場景。除傳統(tǒng)的門禁系統(tǒng)外,還可以與視頻監(jiān)控系統(tǒng)、手機解鎖、計算機登錄身份認(rèn)證等結(jié)合使用。尤其是目前,公安安全技術(shù)要求最為迫切。人臉識別技術(shù)可用于協(xié)助公安機關(guān)解決案件。因此,如果人臉識別領(lǐng)域能夠突破其技術(shù)瓶頸,將充分挖掘其巨大的潛在市場價值。
在整個人臉識別過程中,除了人臉的檢測和對齊外,最重要的是人臉特征的提取。不同的方法可以不同地提取特征。卷積神經(jīng)網(wǎng)絡(luò)模型主要是基于監(jiān)督學(xué)習(xí),獲得具有類間差異的人臉特征向量,將不同的人臉圖像分為不同的類別,訓(xùn)練網(wǎng)絡(luò)利用交叉熵?fù)p失函數(shù)進(jìn)行多分類任務(wù)學(xué)習(xí),最終去除了Softmax層,采用全連接。SoftMax前一層的部分。層的輸出用作面部特征表示。
這兩種算法都是通過深度卷積網(wǎng)絡(luò)從原始圖像數(shù)據(jù)中自動提取特征。最后,在人臉識別中,常用余弦相似度和歐氏距離來度量不同人臉之間的相似度。對于人臉檢索任務(wù),直接對查詢圖像與數(shù)據(jù)庫中圖像的相似性進(jìn)行排序輸出。人臉驗證的任務(wù)還可以訓(xùn)練二元分類器確定查詢圖像是否是同一個人的相似性閾值。
1.基本模型結(jié)構(gòu)
卷積層使用連續(xù)的小尺寸卷積核代替單個大尺寸的卷積核,全部使用 3×3 大小,步長設(shè)定為1,通過零填充保持輸出數(shù)據(jù)體的尺寸與輸入相同。相比單個大尺寸的卷積核,連續(xù)小尺寸卷積核可以達(dá)到同樣的提取效果,且由于層數(shù)增加,經(jīng)激活函數(shù)進(jìn)一步增加了非線性,增強模型表達(dá)力。
在訓(xùn)練過程中在前兩個全連接層后都增加Dropout層,Dropout 層的作用在于按照一定比例隨機暫時舍棄部分該層的神經(jīng)元,這樣使得在使用批梯度下降進(jìn)行網(wǎng)絡(luò)訓(xùn)練時,每次訓(xùn)練的網(wǎng)絡(luò)結(jié)構(gòu)都不相同,在更新權(quán)重時被舍棄的神經(jīng)元的權(quán)重就保持不變。
2.相似性度量
通過訓(xùn)練完成的卷積網(wǎng)絡(luò)模型提取出人臉特征向量,在應(yīng)用于最終的人臉識別時,主要通過比較兩個人臉特征向量之間的相似度判定人物身份。常用的相似性度量方法包括歐氏距離、余弦相似度等,本文所提出的方法最終都選擇使用余弦相似度比較人臉之間的相似程度。
余弦相似度計算的是兩個向量間夾角的余弦值,公式定義如下式(2-1):
余弦相似度的值范圍在-1 到 1 之間,兩特征向量方向一致時夾角較小,相似度趨于 1,說明兩個特征越相似,更可能是同一人。相反的,夾角越大相似度越小,說明屬于不同人。
1.CACD數(shù)據(jù)集及圖像預(yù)處理
CACD數(shù)據(jù)集由Chen等在2014年公開,是當(dāng)時數(shù)據(jù)量最大的跨年齡變化人臉數(shù)據(jù)集。在收集該數(shù)據(jù)集時,研究人員首先考慮了兩點重要的原則,一是數(shù)據(jù)集中的人需要包含不同年齡,二是這些人的面部圖片能夠通過互聯(lián)網(wǎng)方便、大量地采集。鑒于此研究人員選擇了IMDb.com上不同年齡的名人作為待收集的對象,最終從1951年至1990年出生的名人中,每年選取排名前50位,一共包含了2000位名人。然后通過Google搜索這些名人的圖片,以名人“名字+年份”作為關(guān)鍵詞。每個人采集2009年至2018年的圖片,因而年齡跨度為十年。但此方法獲取的圖片也包含大量噪聲影響,如檢索到的圖片包含多人或某些名人在有的年份公開的圖片很少等,研究人員僅對測試集數(shù)據(jù)進(jìn)行了人工檢驗。在對所有收集的圖片進(jìn)行人臉檢測、去重后,最終CACD數(shù)據(jù)集得到了年齡在16到62歲的共163446張人臉圖片,其中20-60歲的圖片居多,平均每人有80張左右的圖片數(shù)據(jù)。
CACD 數(shù)據(jù)集包含足夠的數(shù)據(jù)量,且每個人包含的圖片數(shù)較為均勻,可用于深度卷積神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練,為提高模型的識別效果,在訓(xùn)練前還需要對圖像數(shù)據(jù)進(jìn)行一些預(yù)處理操作。
為進(jìn)一步增強模型的泛化能力,在訓(xùn)練過程中使用圖像增強技術(shù)構(gòu)建更多的訓(xùn)練樣本,更有效抑制過擬合。對于訓(xùn)練集數(shù)據(jù)主要采取兩種圖像增強技術(shù):水平翻轉(zhuǎn)和隨機裁剪。由于人臉具有一定的對稱性,通過水平翻轉(zhuǎn)圖像可以使訓(xùn)練得到的模型對同一人不同角度具有一定魯棒性。
經(jīng)檢測對齊處理后人臉區(qū)域的圖像大小為 256×256,進(jìn)一步通過隨機裁剪至224×224 大小的圖片作為最終訓(xùn)練的輸入,可以成倍增加訓(xùn)練樣本數(shù)量,促使網(wǎng)絡(luò)模型對部分位置的平移變換甚至是面部遮擋不敏感,有效提升模型的泛化能力。
2.實驗結(jié)果與分析
本節(jié)實驗選擇40年中每年排名3至5的名人共120名作為測試集,以這120人在2013年的圖片作為查詢圖片,另外將剩余圖片分為2004至2006年、2007至2009年、2010至2012年三組,作為待檢索的數(shù)據(jù)庫圖片,分別測試在不同年齡區(qū)間上的檢索效果。
(1)批規(guī)范化的影響
本小節(jié)主要通過實驗比較批規(guī)范層對深度網(wǎng)絡(luò)訓(xùn)練的影響,一個模型ModelA 保持原狀,一個模型 ModelB 在卷積層和全連接層后增加批規(guī)范化層,使用相同的 SGD 優(yōu)化算法及0.1的學(xué)習(xí)率,在CACD數(shù)據(jù)集上訓(xùn)練多分類模型。
圖2-1 兩種網(wǎng)絡(luò)模型分類loss曲線
(a)訓(xùn)練集 loss 曲線;(b)驗證集 loss 曲線
圖2-1所示為兩個模型的loss曲線,可以明顯發(fā)現(xiàn)批規(guī)范化操作加速了模型的收斂,在前期 loss 值能夠更加快速下降,最終也更傾向收斂于較低值。深層的網(wǎng)絡(luò)結(jié)構(gòu)給梯度的更新帶來了困難,實驗證明批規(guī)范化操作確實能有效解決這一問題。從在CACD測試集上的檢索效果看,選取 ModelA 訓(xùn)練集迭代 20 輪得到的模型與 ModelB 迭代 6 輪得到的模型比較第一識別率。ModelA 在不同年份數(shù)據(jù)庫上的第一識別率分別為 82.4%、76.5%、74.46%,ModelB 則分別為 88.3%、86%、82.6%,直觀地體現(xiàn)了兩種模型提取的特征間的差距。
(2)特征維數(shù)影響
基于深度卷積神經(jīng)網(wǎng)絡(luò)的模型以倒數(shù)第二層全連接層的輸出作為人臉特征向量,然后通過余弦相似度計算兩個人臉圖像間的相似性,因而訓(xùn)練得到的特征維數(shù)會對相似性計算產(chǎn)生一定的影響。高維特征向量在進(jìn)行有監(jiān)督分類訓(xùn)練時,能夠更快達(dá)到收斂,但向量相對稀疏且可能包含更多噪聲;低維的特征向量相對更緊密,但訓(xùn)練中準(zhǔn)確率提升更緩慢。
在同樣采取 SGD優(yōu)化算法進(jìn)行模型訓(xùn)練的條件下,特征維數(shù)選擇128、256、512、1024 進(jìn)行實驗。圖2-2給出了不同特征維數(shù)下在各年份區(qū)間數(shù)據(jù)庫檢索的MAP曲線,由圖中可以看出更高維的特征在檢索準(zhǔn)確率上反而效果更差,最高維的1024維特征在各年份區(qū)間上的MAP值都是最低的。隨著特征向量維數(shù)的逐步降低,檢索的MAP值均有一定的提升,特征維數(shù)為256時提升較為明顯,在相隔最久的2004至2006的數(shù)據(jù)庫上檢索準(zhǔn)確率均值達(dá)到了63.42%。
圖2-2 不同特征維數(shù)下檢索 MAP 曲線
在進(jìn)一步降低特征維數(shù)至 128 維時,MAP 值沒有繼續(xù)提升且比 512 維的模型效果還稍有降低,可能是由于維數(shù)過低,在進(jìn)行 1584 類的多分類任務(wù)模型訓(xùn)練時,未能很有效將特征壓縮至 128 維,觀察訓(xùn)練過程中驗證集loss 曲線也可見趨于收斂時的 loss 值相對較大。
人臉識別因其廣泛的實際應(yīng)用場景而引起了眾多研究者的關(guān)注。同時,人臉識別的準(zhǔn)確性往往受到諸多因素的影響。本文針對年齡變化引起的認(rèn)知問題,研究了基于深度學(xué)習(xí)的認(rèn)知方法在這一問題上的有效性。利用Web技術(shù)設(shè)計并實現(xiàn)了一個人臉識別應(yīng)用程序。介紹了該應(yīng)用程序的設(shè)計目標(biāo)和開發(fā)環(huán)境。詳細(xì)介紹了應(yīng)用程序各模塊的實現(xiàn)方法,并對其基本功能進(jìn)行了測試。該應(yīng)用具有輕便、跨平臺的特點,能夠滿足人臉識別的日常需要。