郭天偉 齊金山 楊海東 王超
摘 要:近年來(lái),隨著各行業(yè)對(duì)安全認(rèn)證和監(jiān)控系統(tǒng)的需求激增,如何準(zhǔn)確識(shí)別身份信息已經(jīng)成為了學(xué)術(shù)界的熱點(diǎn)研究方向。生物學(xué)信息識(shí)別技術(shù)由于個(gè)體特征的唯一性在識(shí)別的準(zhǔn)確度上有著得天獨(dú)厚的優(yōu)勢(shì)而迅速崛起?;谏疃葘W(xué)習(xí)和特征融合理論提出一種人臉識(shí)別算法。首先,分析了人臉識(shí)別的行業(yè)發(fā)展現(xiàn)狀;其次,闡述了深度神經(jīng)網(wǎng)絡(luò)的原理并分析了各種模型的特征;再次,提出一種人臉特征融合算法;最后,在實(shí)驗(yàn)中,以不同膚色、人種、性別的人臉圖像為實(shí)驗(yàn)對(duì)象,驗(yàn)證了所提出算法在多種條件下的有效性。
關(guān)鍵詞:深度學(xué)習(xí);卷積神經(jīng)網(wǎng)絡(luò);特征融合;人臉識(shí)別
中圖分類(lèi)號(hào):TP 242.3
文獻(xiàn)標(biāo)志碼:A
文章編號(hào):1007-757X(2020)11-0005-04
Abstract:In recent years, with the increasing demand for security authentication and monitoring system in various industries, how to accurately identify the identity information has become a hot research direction in academia. Due to the uniqueness of individual characteristics, biological information recognition technology has a unique advantage in the accuracy of recognition and is rising rapidly. This paper proposes a face recognition algorithm based on deep learning and feature fusion theory. Firstly, the development status of face recognition industry is analyzed. Secondly, the principle of deep neural network is expounded and the characteristics of various models are analyzed. Thirdly, a face feature fusion algorithm is proposed. Finally, face images of different skin color, race and gender are taken as experimental objects to verify the effectiveness of the proposed algorithm under various conditions.
Key words:deep learning;convolutional neural network;feature fusion;face recognition
0?引言
近年來(lái),信息的實(shí)時(shí)傳輸在云計(jì)算、計(jì)算機(jī)科學(xué)和大數(shù)據(jù)等現(xiàn)代化電子信息科學(xué)的支持下成為了現(xiàn)實(shí),這有助于保障人們的個(gè)人隱私及信息安全[1]。當(dāng)今的挑戰(zhàn)在現(xiàn)代世界中,快速有效地識(shí)別個(gè)人身份信息是保護(hù)個(gè)人隱私和財(cái)產(chǎn)的必要工具。傳統(tǒng)的識(shí)別方法(身份證,個(gè)人身份證,訪問(wèn)代碼,銀行卡帳戶密碼等)面臨重大危機(jī)。使用帳戶密碼作為個(gè)人身份驗(yàn)證方法,很難防止帳戶密碼被遺忘或丟失。很難使用證書(shū)作為個(gè)人身份驗(yàn)證的手段來(lái)驗(yàn)證文檔不是偽造的,并且使用密碼作為個(gè)人身份驗(yàn)證的手段來(lái)驗(yàn)證密碼是否被盜有。在這方面,身份專家提出了準(zhǔn)確可靠的生物識(shí)別技術(shù)。
生物識(shí)別技術(shù)是指通過(guò)驗(yàn)證人體的生理特征來(lái)準(zhǔn)確識(shí)別個(gè)體身份的技術(shù)[2]。指紋識(shí)別、人臉識(shí)別、掌紋識(shí)別等手段作為常用的生物識(shí)別方法已經(jīng)逐漸商用化,走進(jìn)了成為人們?nèi)粘I钪胁豢苫蛉钡囊徊糠?,為普羅大眾提供著方便快捷的途徑。人臉識(shí)別在一眾信息識(shí)別方法中以其便捷性、低成本等優(yōu)勢(shì)脫穎而出,迅速占領(lǐng)了民用市場(chǎng)。作為一種依據(jù)面部特征信息進(jìn)行匹配的識(shí)別方法,人臉識(shí)別識(shí)別技術(shù)可提取大量個(gè)人信息識(shí)別率較高。目前是最為常用的識(shí)別手段,也是當(dāng)下相關(guān)領(lǐng)域最為熱點(diǎn)的研究話題。
人臉識(shí)別涉及多學(xué)科信息,囊括了圖像處理、機(jī)器學(xué)習(xí)、計(jì)算機(jī)科學(xué)和生物科學(xué)等多個(gè)前沿學(xué)科,而隨著該項(xiàng)技術(shù)在各個(gè)領(lǐng)域的飛速發(fā)展,在公共安全、安全認(rèn)證系統(tǒng)以及支付系統(tǒng)等領(lǐng)域尤為顯著。文獻(xiàn)[3]利用均勻LBP算子分別提取圖像各局部的LBP直方圖特征,將得到的LBP特征作為深度信念網(wǎng)絡(luò)(DBN)的輸入。文獻(xiàn)[4]將歸一化的人臉圖像均勻分割為多個(gè)小塊,對(duì)每個(gè)小塊進(jìn)行LTP運(yùn)算,然后用統(tǒng)計(jì)直方圖獲得最后圖像特征,將其作為DBN的輸入數(shù)據(jù),利用逐層貪婪學(xué)習(xí)法對(duì)整個(gè)網(wǎng)絡(luò)進(jìn)行訓(xùn)練識(shí)別。文獻(xiàn)[5]通過(guò)引入深度學(xué)習(xí)算法進(jìn)行多層次的學(xué)習(xí),然后提取高層特征進(jìn)行人臉描述,最后應(yīng)用最大間距準(zhǔn)則減小最小二乘估計(jì)產(chǎn)生的重建誤差。這些文獻(xiàn)中所闡述的方法都針對(duì)局部的特征進(jìn)行分析,且識(shí)別率較低。
1?深度神經(jīng)網(wǎng)絡(luò)
作為人工智能(AI)領(lǐng)域的核心研究分支,機(jī)器學(xué)習(xí)涵蓋了概率論、神經(jīng)生物學(xué)、控制科學(xué)與工程、哲學(xué)和信息理論等融合理論[6]。讓計(jì)算機(jī)模擬人類(lèi)的認(rèn)知手段來(lái)進(jìn)行“學(xué)習(xí)”,從而獲得一定的客觀規(guī)律,最后通過(guò)“學(xué)習(xí)”到的規(guī)律對(duì)現(xiàn)實(shí)的工作進(jìn)行“舉一反三”,預(yù)測(cè)未知的結(jié)果是機(jī)器學(xué)習(xí)的本質(zhì)。
在數(shù)十年的穩(wěn)步發(fā)展后,機(jī)器學(xué)習(xí)已經(jīng)自成體系,諸如支持向量機(jī)、決策樹(shù)、人工神經(jīng)網(wǎng)絡(luò)等分支在理論體系的構(gòu)建和工程應(yīng)用上都已經(jīng)取得較為豐碩的成果。
1.1?人腦視覺(jué)原理和深度學(xué)習(xí)
早在上世紀(jì)80年代初,加拿大裔美國(guó)科學(xué)家David Hubei和瑞典科學(xué)家Torsen Wiesel對(duì)于人腦的視覺(jué)系統(tǒng)已經(jīng)取得了一定成果,他們共同提出人腦的視覺(jué)系統(tǒng)的分層信息處理機(jī)制,如圖1所示。
顯示了從人眼接收視網(wǎng)膜圖像信息的人類(lèi)視覺(jué)。通過(guò)將目標(biāo)的簡(jiǎn)單邊緣和角度傳遞到V1區(qū)域來(lái)提取和形成V4區(qū)域圖像的基本輪廓[7]。本地信息形成整個(gè)AIT的目標(biāo)抽象,并最終對(duì)PFC域中的對(duì)象進(jìn)行分類(lèi)。可以看出,人腦從眼睛接收信息,逐層處理最終分類(lèi),并且順序地抽象和概念化下層的特征以形成層的特征[8]。
深度學(xué)習(xí)構(gòu)建深層網(wǎng)絡(luò)結(jié)構(gòu)和訓(xùn)練方法是受到人類(lèi)大腦工作原理的啟發(fā),其分層結(jié)構(gòu)類(lèi)似于傳統(tǒng)神經(jīng)網(wǎng)絡(luò)[9]。然而,深度學(xué)習(xí)中的隱藏層是一種多層體系結(jié)構(gòu),其中來(lái)自每一層的輸入取自前一層的輸出[10]。這種深層體系結(jié)構(gòu)在提取圖像基本特征方面具有很大的優(yōu)勢(shì),網(wǎng)絡(luò)結(jié)構(gòu)越深,相應(yīng)的表達(dá)能力越強(qiáng)。但是,隨著層數(shù)的增加,深度神經(jīng)網(wǎng)絡(luò)依賴于大型訓(xùn)練集和高性能硬件的特點(diǎn)也逐漸暴露。
1.2?卷積神經(jīng)網(wǎng)絡(luò)
當(dāng)人類(lèi)感知外部世界時(shí),他們的視覺(jué)皮層神經(jīng)元通常在查看全局信息之前從外部世界接收本地信息,使用局部信息來(lái)感受野(Receptive Field)來(lái)感知局部圖像。這顯著減少了需要學(xué)習(xí)的參數(shù)。圖像中距離接近的像素在空間上密切相關(guān),但是分開(kāi)的像素在空間上不相關(guān)。因此,卷積神經(jīng)網(wǎng)絡(luò)獲得下層網(wǎng)絡(luò)上的圖像的局部感知信息,然后通過(guò)合成和分析上層網(wǎng)絡(luò)上的局部信息來(lái)獲得圖像的全局信息。因此,在卷積神經(jīng)網(wǎng)絡(luò)中,網(wǎng)絡(luò)參數(shù)大大減少,并且網(wǎng)絡(luò)模型的復(fù)雜性降低,因?yàn)槊總€(gè)神經(jīng)元不需要感知圖像的整體信息。
將圖像輸入視為二維矩陣,通常是方陣。每個(gè)神經(jīng)元緊接在第一個(gè)隱藏層連接到其中一個(gè)區(qū)域之后。卷積神經(jīng)網(wǎng)絡(luò)中的卷積處理是通過(guò)卷積核與圖像的卷積來(lái)執(zhí)行的,并且所使用的卷積核通常是由N×N個(gè)不同參數(shù)組成的濾波器窗口。為提取整個(gè)圖像的特征信息,卷積核以固定的步長(zhǎng)移動(dòng),遍歷圖像,通過(guò)對(duì)不同的部分進(jìn)行連續(xù)卷積來(lái)實(shí)現(xiàn)。
由于卷積內(nèi)核只能提取一個(gè)特征,因此需要多個(gè)卷積核來(lái)完全提取圖像特征。激活函數(shù)可用于提取卷積處理后的輸出映射特征,如式(1)。
式中,描述了輸出特征映射圖與卷積核的關(guān)系。
在卷積神經(jīng)網(wǎng)絡(luò)中降低特征映射的數(shù)據(jù)規(guī)模,也就是數(shù)據(jù)降維,同時(shí)減少網(wǎng)絡(luò)參數(shù)的總量,稱為池化,其本質(zhì)降采樣。池化是將來(lái)自不同地方的特征組合在一起的過(guò)程。其中層中每個(gè)映射的每個(gè)元素與相應(yīng)卷積層的特征映射一一對(duì)應(yīng)。
池化可幫助降低圖像扭轉(zhuǎn)和失真的影響,如式(2)。
式中,通過(guò)偏置和降采樣實(shí)現(xiàn)了不同位置特征的聚合。
1.3?基礎(chǔ)模型及優(yōu)化
隨著深度學(xué)習(xí)技術(shù)的快速發(fā)展,其在人臉識(shí)別領(lǐng)域的效果也隨著方法的改進(jìn)而不斷提升。當(dāng)下已經(jīng)有部分基礎(chǔ)模型公開(kāi)了其數(shù)據(jù)庫(kù),VGG是其中典型且應(yīng)用較為廣泛的一種。
1.3.1?VGGFace模型
VGGFace是由2014年提出提出的一種基礎(chǔ)模型,在LFW數(shù)據(jù)庫(kù)的測(cè)試上獲得了90%以上的準(zhǔn)確度。VGG中根據(jù)卷積核大小和卷積層數(shù)目的不同,可分為A,A-LRN,B,C,D,E共6個(gè)配置(ConvNet Configuration),其中以D配置較為常用,稱為VGG16。
VGG16進(jìn)行具體分析發(fā)現(xiàn),VGG16共包含以下內(nèi)容。
1) 13個(gè)卷積層(Convolutional Layer),分別用conv3-XXX表示;
2) 3個(gè)全連接層(Fully connected Layer),分別用FC-XXXX表示;
3) 5個(gè)池化層(Pool layer),分別用maxpool表示。
VGG模型配置,如圖2所示。
VGG16的突出特點(diǎn)是簡(jiǎn)單,體現(xiàn)在以下方面。
1) 卷積層均采用相同的卷積核參數(shù);
2) 池化層均采用相同的池化核參數(shù);
模型是由若干卷積層和池化層堆疊(stack)的方式構(gòu)成,比較容易形成較深的網(wǎng)絡(luò)結(jié)構(gòu)。
相對(duì)的VGG-16網(wǎng)絡(luò)也存在著巨大的缺陷。
1) 訓(xùn)練時(shí)間過(guò)長(zhǎng),調(diào)參難度大。
2) 需要的存儲(chǔ)容量大,不利于部署。例如存儲(chǔ)VGG16權(quán)重值文件的大小為500多MB,不利于安裝到嵌入式系統(tǒng)中。
1.3.2?VGGFace模型優(yōu)化提升
TripletLoss是深度學(xué)習(xí)中的一種損失函數(shù),用于訓(xùn)練差異性較小的樣本來(lái)提高VGGFace的精度。數(shù)據(jù)包括錨(Anchor)示例、正(Positive)示例、負(fù)(Negative)示例,通過(guò)優(yōu)化錨示例與正示例的距離小于錨示例與負(fù)示例的距離,實(shí)現(xiàn)樣本的相似性計(jì)算。
Anchor通常隨機(jī)選取一個(gè)樣本,用作迭代輸入;其余的兩個(gè)樣本也是隨機(jī)選取,其中Positive示例表示其與Anchor的類(lèi)別相同,Negative則相反,如圖3所示。
TripletLoss通過(guò)學(xué)習(xí)使Anchor和Positive盡可能接近,二者間距離為dp,同時(shí)使Anchor和negative間的距離dn足夠大。
其目標(biāo)函數(shù)如式(3)。
式中,所描述的目標(biāo)函數(shù)易得出產(chǎn)生損失和無(wú)損失的條件。
2?基于特征融合的人臉識(shí)別
2.1?特征提取和融合的目的
圖像中記錄人臉信息的主要一句就是人臉的特征,描述的效果是跟人臉信息的顯著性正相關(guān)的。卷積神經(jīng)網(wǎng)絡(luò)可通過(guò)不同的卷積核實(shí)現(xiàn)對(duì)于不同特征的自動(dòng)提取。特征提取過(guò)程,如圖4所示。
神經(jīng)網(wǎng)絡(luò)將底層特征抽象化后表示為高層特征。人臉圖像身份信息使用層級(jí)越高的特征則表達(dá)越具體、精確。
基礎(chǔ)特征可通過(guò)基礎(chǔ)模型對(duì)圖像進(jìn)行預(yù)處理后取得。作為神經(jīng)網(wǎng)絡(luò)的輸入數(shù)據(jù),面部特征需要經(jīng)過(guò)規(guī)范化處理后融合其為組合特征。組合特征融合過(guò)程,如圖5所示。
卷積神經(jīng)網(wǎng)絡(luò)是分層的,網(wǎng)絡(luò)的最后層通常是完全連接的。其主要功能為兩點(diǎn):(1) 實(shí)現(xiàn)隱含語(yǔ)義節(jié)點(diǎn)與學(xué)習(xí)到的原始之間的映射建立;(2) 存儲(chǔ)大部分網(wǎng)絡(luò)參數(shù),保留有用信息,通過(guò)低維度替換高維度來(lái)實(shí)現(xiàn)網(wǎng)絡(luò)復(fù)雜度的降低。通常用一維向量來(lái)表征所提取到的人臉特征。
2.2?特征降維
特征降維是為了在降低基礎(chǔ)模型的數(shù)據(jù)容量的同時(shí),盡可能保證原始數(shù)據(jù)。計(jì)算的復(fù)雜度分為時(shí)間復(fù)雜度和空間復(fù)雜度,特征降維可以有效降低計(jì)算的空間復(fù)雜度,從二維的特征降低至一維,這樣做的好處是可獲得更小規(guī)模的組合特征,同時(shí)保障特征權(quán)重的一致性。經(jīng)過(guò)適當(dāng)?shù)恼{(diào)整,對(duì)于網(wǎng)絡(luò)訓(xùn)練有有著較好的改善效果。
降維方法主要包括因子分析、獨(dú)立成分分析和主成分分析。
(1) 因子分析:除了可能導(dǎo)致數(shù)據(jù)變化或生成的一些可觀察因素外,一些隱藏因素也可能導(dǎo)致數(shù)據(jù)變化。如果這些隱藏元素由某些可觀察元素線性連接,則隱藏元素將減小數(shù)據(jù)的大小。
(2) 獨(dú)立分量分析:假設(shè)原始數(shù)據(jù)是從N個(gè)獨(dú)立數(shù)據(jù)源生成的,如果數(shù)據(jù)的維數(shù)大于N,則一維數(shù)據(jù)與其他維度線性耦合??梢詼p少數(shù)據(jù)維度至N。該方法類(lèi)似于N維因子分析。
(3) 主成分分析(PCA):通過(guò)分析問(wèn)題的主要影響因子,依據(jù)統(tǒng)計(jì)手段提取特征,簡(jiǎn)化問(wèn)題的復(fù)雜度,僅保留主要影響因子可以大幅度的降低數(shù)據(jù)的規(guī)模和特征向量的維度。一般地,將一組相關(guān)的數(shù)據(jù)轉(zhuǎn)化為以每個(gè)維度為正交基的線性組合,以提取數(shù)據(jù)的關(guān)鍵特征分量。PCA算法相較于其他類(lèi)似算法主要的優(yōu)越性是在實(shí)現(xiàn)數(shù)據(jù)規(guī)模的減小的同時(shí),仍可以兼顧保留原始信息。
利用線性代數(shù)的知識(shí),基于較小維度的向量變換可以獲得與基本維度相同的向量表示,并且可以減小向量維度。類(lèi)似于該原理,PCA算法是通過(guò)基變換來(lái)實(shí)現(xiàn)降維。選擇基本變換的基以便在降維后最優(yōu)化還原數(shù)據(jù)是很重要的。
如果原始數(shù)據(jù)有著更加分散的投影值,則有著更加良好的降維效果,因而高維原始數(shù)據(jù)的投影就是基向量的本質(zhì)。為了使降維后能夠更好的存儲(chǔ)原始的數(shù)據(jù),相關(guān)性是每個(gè)投影向量間要盡量避免的。這里涉及兩個(gè)度量值,其一是數(shù)據(jù)的分散程度,一般通過(guò)數(shù)據(jù)的方差來(lái)決定;其二是數(shù)據(jù)的相關(guān)性,一般通過(guò)數(shù)據(jù)的協(xié)方差來(lái)決定。
綜上,PCA算法的最終目標(biāo)是使得各個(gè)向量的方差最大,而各向量的協(xié)方差為零。
對(duì)于矩陣X ,其行向量線性無(wú)關(guān),如式(4)。
將X與XT相乘,并求其結(jié)果的平均值,如式(5)。
簡(jiǎn)化PCA算法的優(yōu)化目標(biāo),可表示如下:對(duì)原始數(shù)據(jù)的協(xié)方差矩陣進(jìn)行對(duì)角化,除主對(duì)角線上的元素外其他元素設(shè)置為零,同時(shí)主對(duì)角線上元素按照其值降序排列。
PCA算法的主要流程如下:(1) 求解均值化后的高維矩陣所對(duì)應(yīng)的協(xié)方差矩陣,通常記為
C矩陣;(2) 求解矩陣C對(duì)應(yīng)的特征值和特征向量;(3) 按照特征值的降序排列特征向量形成矩陣D;(4) 矩陣P是由矩陣D的前K行形成的;(5) 將X對(duì)P投影,其結(jié)果為降維的主成分。
2.3?預(yù)處理
在許多情況下,面部圖像包含大量數(shù)據(jù),并且它們的規(guī)模通常非常大。為了克服許多卷積神經(jīng)網(wǎng)絡(luò)在人臉識(shí)別過(guò)程中因大量人臉圖像數(shù)據(jù)而造成網(wǎng)絡(luò)收斂速度較慢的問(wèn)題,需要對(duì)待識(shí)別的人臉圖像進(jìn)行預(yù)處理。PCA算法不僅可以用于數(shù)據(jù)降維,在面部圖像的處理方面也較為適合。
為了使用PCA算法處理面部圖像,首先需要找到其投影空間 -?特征平面。訓(xùn)練樣本的第i個(gè)臉部圖像由一維向量表示,如式(6)。
協(xié)方差矩陣C因面部數(shù)據(jù)的圖像數(shù)據(jù)量較大而維度較高,這提高了特征值量和特征向量的解算難度。使用奇異值分解的相關(guān)知識(shí)減少計(jì)算量:對(duì)角化矩陣C,其特征向量經(jīng)過(guò)變換之后可以表示,如式(7)。
通常訓(xùn)練樣本的特征向量組成特征空間,其包含人臉圖像的主要特征。將面部圖像投影到特征空間以提取圖像的主要信息,將要降維的面部圖像投影到特征面空間W,通過(guò)公式處理后可得到神經(jīng)網(wǎng)絡(luò)的輸入數(shù)據(jù),如式(8)。
2.4?特征融合
全連接層提取的特征表示數(shù)據(jù)中含有負(fù)數(shù),網(wǎng)絡(luò)操作的開(kāi)銷(xiāo)和網(wǎng)絡(luò)訓(xùn)練均會(huì)因此而效果變差。數(shù)據(jù)的冗余可以通過(guò)構(gòu)建稀疏特征向量來(lái)解決,這樣做的結(jié)果還可以改善網(wǎng)絡(luò)訓(xùn)練的時(shí)間成本。稀疏特征向量可通過(guò)線性整流函數(shù)獲得,通過(guò)對(duì)基礎(chǔ)特征做激活,如式(9)。
為應(yīng)對(duì)不同基礎(chǔ)特征取值范圍的跨度和取值邊界均不同的情況,便于特征的整合,一般需要?dú)w一化處理基礎(chǔ)特征,將其取值范圍限制于[0,1]區(qū)間,如式(10)。
合并歸一化特征向量,即可得到組合特征,如式(11)。
3?實(shí)驗(yàn)
為適應(yīng)海量圖片訓(xùn)練的大數(shù)據(jù)量,對(duì)系統(tǒng)的性能有著較高的要求,采用I7 7700四核八線程CPU,并搭配N(xiāo)VIDIA GTX1070,使得實(shí)驗(yàn)中盡量不出現(xiàn)因硬件不足造成額外的時(shí)間開(kāi)銷(xiāo)。
同時(shí)為驗(yàn)證本文所提供的算法,通過(guò)MTFL數(shù)據(jù)庫(kù)的萬(wàn)張圖片提取特征,進(jìn)行模型訓(xùn)練,并最終針對(duì)300張左右不同膚色、人種、不同采光條件、不同清晰度的人臉圖片進(jìn)行特征提取,驗(yàn)證本文所提出算法的有效性,如圖6所示。
圖6所展示的五個(gè)不同身份背景、不同性別的人在不同的光照條件和不同的清晰度下形成的照片,均可有效捕捉其面部特征予以準(zhǔn)確識(shí)別,經(jīng)過(guò)學(xué)習(xí)后,對(duì)于實(shí)驗(yàn)所用的300張圖片,其中識(shí)別成功的有283張,共計(jì)有17張未能準(zhǔn)確識(shí)別,準(zhǔn)確率達(dá)到94.33%,基本可以滿足實(shí)際需求。相較于文獻(xiàn)[5]基于最大間距準(zhǔn)則方法獲得的平均78.64%的準(zhǔn)確率,以及文獻(xiàn)[6]基于特征彈性圖達(dá)到的平均72%的識(shí)別率,提升較為明顯。