鄧健
摘 要:針對傳統(tǒng)神經(jīng)網(wǎng)絡(luò)人臉識別準(zhǔn)確率不高的缺點,提出一種能夠提高人臉識別準(zhǔn)確率的改進型人臉識別方法。首先將包含人臉的圖片輸入MTCNN網(wǎng)絡(luò),將圖片中的人臉部分截取出來,去除圖片中的干擾部分。以遷移學(xué)習(xí)的方式將圖片送入Inception-v3網(wǎng)絡(luò)模型中訓(xùn)練,保留預(yù)先訓(xùn)練好的參數(shù),只改變最后一層全連接層的參數(shù),從而獲得新的人臉識別模型。最后在LFW人臉數(shù)據(jù)庫上驗證該算法的有效性,實驗表明,該方法相較傳統(tǒng)的CNN網(wǎng)絡(luò),有更高的識別準(zhǔn)確率,達到了996%的識別準(zhǔn)確率。
關(guān)鍵詞:人臉識別;CNN;MTCNN;遷移學(xué)習(xí)
2012年,杰弗里·辛頓小組采用深度學(xué)習(xí)模型AlexNet在ImageNet圖像識別大賽中奪冠,引發(fā)了深度學(xué)習(xí)的研究熱潮。近年來,深度學(xué)習(xí)在人臉識別領(lǐng)域中得到廣泛應(yīng)用,人臉識別的準(zhǔn)確率也在逐年提高。但相較其他類型的圖像識別,人臉識別因人臉本身差異性較小,識別難度大,所以識別準(zhǔn)確率還遠(yuǎn)沒有達到理想的要求。因此,本文提出一種改進型的人臉識別模型,以提高人臉識別準(zhǔn)確率。
1 卷積神經(jīng)網(wǎng)絡(luò)
CNN(Convolutional Neural Networks),即卷積神經(jīng)網(wǎng)絡(luò)。CNN是一種具有代表性的深度學(xué)習(xí)算法,相較于傳統(tǒng)神經(jīng)網(wǎng)絡(luò),卷積神經(jīng)網(wǎng)絡(luò)具有深度結(jié)構(gòu)的前饋神經(jīng)網(wǎng)絡(luò),此外還多了一步涉及卷積運算的卷積層網(wǎng)絡(luò)。它是針對圖像識別而被提出的,CNN主要包含三層結(jié)構(gòu),分別是輸入層,隱藏層以及輸出層。隱藏層又可以細(xì)分為多個網(wǎng)絡(luò)層。其中卷積神經(jīng)網(wǎng)絡(luò)的隱含層又包含通過卷積運算提取圖像特征的卷積層、以及通過下采樣簡化網(wǎng)絡(luò)的池化層和用于對圖片進行分類的全連接層。此外,隨著卷積神經(jīng)網(wǎng)絡(luò)的不斷發(fā)展,越來越多更為復(fù)雜的網(wǎng)絡(luò)模型被提出。如類似Inception模塊和殘差塊這樣的模塊被加入到卷積神經(jīng)網(wǎng)絡(luò)的模型,使得圖像識別精度越來越高。各層結(jié)構(gòu)分別完成不同任務(wù),最終達到提高識別精度的效果。具體操作則是通過將大量圖片不斷地輸入進CNN網(wǎng)絡(luò)中進行訓(xùn)練,以獲得網(wǎng)絡(luò)模型的參數(shù),最后獲得良好的圖片識別效果。CNN網(wǎng)絡(luò)結(jié)構(gòu)如下圖1所示。
2 遷移學(xué)習(xí)
正常情況下,如果按照上述CNN的思路,自己去設(shè)計網(wǎng)絡(luò)模型,搜集數(shù)據(jù),再訓(xùn)練參數(shù)的話,通常情況下既費時又費力,而且訓(xùn)練結(jié)果往往都不盡如人意。因為隨著識別類別的增多,識別難度加大,神經(jīng)網(wǎng)絡(luò)的模型設(shè)計必須龐大且復(fù)雜,大量訓(xùn)練參數(shù)對計算機的性能是一個巨大考驗;此外數(shù)據(jù)集的收集對于普通個體來說也同樣是一個困難;一個稍復(fù)雜的分類任務(wù),所需要的訓(xùn)練時間也是巨大的。
而遷移學(xué)習(xí)則完美解決了上述問題,既能快速的完成訓(xùn)練任務(wù),又能達到滿意的識別準(zhǔn)確率。遷移學(xué)習(xí)是將已訓(xùn)練完成的神經(jīng)網(wǎng)絡(luò)模型結(jié)合自己重新定義的部分全連接層構(gòu)成模型遷移網(wǎng)絡(luò)。通過自己創(chuàng)建的數(shù)據(jù)集進行訓(xùn)練,對網(wǎng)絡(luò)中的部分參數(shù)進行微調(diào),從而構(gòu)建新的網(wǎng)絡(luò)模型,這樣便大大減少了樣本需求量和網(wǎng)絡(luò)計算量。
人臉識別屬于圖像分類,而AlexNet、VGG16以及Inception-v3都是曾在圖像分類比賽中取得高名次的網(wǎng)絡(luò)模型,本文通過實驗比較最終選擇了由谷歌公司提出的Inception-v3網(wǎng)絡(luò)模型。
3 MTCNN
通常在CNN網(wǎng)絡(luò)的訓(xùn)練模型中,輸入的人臉圖片中通常包含大量且無用的背景部分,這些背景信息干擾圖片中有用信息,不利于網(wǎng)絡(luò)模型的訓(xùn)練,從而降低了人臉識別的準(zhǔn)確率。所以有必要找到一種能夠快速有效去除圖片中無用信息的方法。
MTCNN是中國科學(xué)院深圳研究院于2016年提出的一種由三個級聯(lián)網(wǎng)絡(luò)組成的神經(jīng)網(wǎng)絡(luò)模型,主要用于完成人臉的快速檢測。其中三個級聯(lián)網(wǎng)絡(luò)分別由P-Net、R-Net以及O-Net組成。P-Net主要用于快速生成候選窗口、R-Net則是用來高效準(zhǔn)確地過濾候選窗口、O-Net則是最終生成邊界框與人臉關(guān)鍵點。類似于卷積神經(jīng)網(wǎng)絡(luò)模型,該模型也使用到了一些常見的圖像處理技術(shù),如圖像金字塔、邊框回歸、非最大值抑制等。通過MTCNN網(wǎng)絡(luò),可以在圖像輸入遷移的網(wǎng)絡(luò)模型之前定位出圖片中的人臉部分,當(dāng)準(zhǔn)確的定位出人臉部分后,便可以輕松的截取出圖片中的人臉部分,這樣便做到了除去圖片中無用信息的效果。MTCNN網(wǎng)絡(luò)的工作原理如圖2所示。
4.1 實驗環(huán)境
實驗通過python3.7編程實現(xiàn),使用的是LFW人臉數(shù)據(jù)庫。這是目前比較常用人臉數(shù)據(jù)集,該數(shù)據(jù)集中的人臉圖片都來取自于現(xiàn)實,由于即使是同一個人的照片,也會由于姿態(tài)、光照、表情、年齡、遮擋等因素影響導(dǎo)致圖片差異很大,所以該數(shù)據(jù)集有較大的識別難度。LFW數(shù)據(jù)集中共有13233張圖片,共5749人。選用該數(shù)據(jù)集中部分人臉作為本次實驗對象。共20組人臉,每組人臉通過鏡像處理、旋轉(zhuǎn)變換和增加噪聲等手段來增加訓(xùn)練樣本,每組500張圖片,共1萬張圖片,圖片尺寸統(tǒng)一變換為120*120*3。訓(xùn)練集和測試集按照4∶1的比例進行劃分。LFW數(shù)據(jù)集部分圖片如下圖3所示。
4.2 實驗結(jié)果
5 結(jié)語
本文通過MTCNN網(wǎng)絡(luò)將人臉數(shù)據(jù)集優(yōu)化,并通過遷移學(xué)習(xí)的方法訓(xùn)練數(shù)據(jù)集進而提高網(wǎng)絡(luò)模型識別準(zhǔn)確率,并且大大減少了工作量。通過實驗表明,該放方法不僅能提高人臉識別準(zhǔn)確率,還具有很強的實際應(yīng)用價值。此外本文設(shè)計數(shù)據(jù)集優(yōu)化方法不僅僅適用于本文所提出的方法,同樣可用于其他網(wǎng)絡(luò)模型當(dāng)中,具有很強的普適性。
參考文獻:
[1]薛艷杰,鄧燕妮.基于改進卷積神經(jīng)網(wǎng)絡(luò)的人臉識別研究[J].科技風(fēng),2019(11):106+131.
[2]趙瀾濤,林家駿.基于雙CNN的多姿態(tài)人臉識別方法[J].華東理工大學(xué)學(xué)報(自然科學(xué)版),2019,45(03):466-470.