徐小雨,趙龍章,程曉月,何志超
(南京工業(yè)大學 電氣工程與控制科學學院,南京 211816)
卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network,CNN)[1-2]是用于處理二維數(shù)據(jù)的多層神經(jīng)網(wǎng)絡,其可以自動學習圖像特征。根據(jù)生物學中的感受野[3]概念,深度學習領域通過引入卷積與激活等結(jié)構(gòu)模仿生物的視覺感知機制,并在20世紀80年代建立視覺感受野模型[4]。之后,紐約大學的LECUN于1998年提出LeNet-5卷積神經(jīng)網(wǎng)絡模型[2],其在手寫數(shù)字識別中取得了突破性進展。2012年,深度神經(jīng)網(wǎng)絡模型AlexNet[5]以巨大的優(yōu)勢在2012 ImageNet[6]競賽中獲勝,給傳統(tǒng)機器學習帶來了巨大沖擊,同時引發(fā)卷積神經(jīng)網(wǎng)絡的研究熱潮,使得深度學習技術(shù)受到越來越多研究人員的關注。此后,VGGNet[7]、ResNet[8]、ZFNet[9]及GoogleInceptionNet[10]等一系列CNN模型被相繼提出,CNN優(yōu)化方法也不斷出現(xiàn)。結(jié)構(gòu)化稀疏學習(Structured Sparsity Learning,SSL)[11]能使模型結(jié)構(gòu)更加緊湊,并且提升了其運行速度。文獻[12]利用一系列優(yōu)化方法將不可微分的t0范數(shù)正則項加入目標函數(shù),使得稀疏網(wǎng)絡具有更好的泛化能力。文獻[13]利用教師網(wǎng)絡的高層神經(jīng)元輸出來表示需要遷移的領域知識,使學生網(wǎng)絡可以獲得更高的壓縮率。文獻[14]基于LASSO正則化剔除冗余卷積核與其對應的特征圖,然后重構(gòu)剩余網(wǎng)絡。文獻[15]提出使用最小平方誤差函數(shù)的代價函數(shù),使其在樣本數(shù)量較少的情況下依然能夠保持較高的分類準確率或使模型更快的收斂。在文獻[16-17]工作的基礎上,文獻[18]提出基于改進Gabor濾波器的卷積神經(jīng)網(wǎng)絡模型,引入曲度系數(shù)概念對傳統(tǒng)Gabor濾波器進行改進,使得改進的Gabor濾波器在具備方向和尺度特性的同時兼具良好的局部曲率響應特性。
本文借鑒Fisherface[19]方法的思想,設計一種基于改進Fisher判別準則的CNN(FDCNN)網(wǎng)絡結(jié)構(gòu),使用CNN學習從輸入圖像到多維歐式空間的映射關系,并將改進的Fisher判別準則作為網(wǎng)絡模型的損失函數(shù),以提高FDCNN在實際應用中的靈活性。
本文提出一種基于距離度量的分類方法,其利用CNN將圖像映射為一個相似向量,通過比較相似向量之間的距離判別圖像類別。由于卷積部分依據(jù)具體任務學習從圖像到向量的映射關系,因此在模型訓練完成后只要分類任務沒有變化,該映射關系就一直有效,即使數(shù)據(jù)集發(fā)生變化也無需重新訓練模型。準確而言,該方法屬于驗證問題,即比較兩個輸入是否為同一類,其能同時應用于驗證任務及圖像識別與檢索任務。圖1為基于距離度量的分類過程,其中黑色點為該類樣本相似向量的均值,在識別任務中通過比較待識別數(shù)據(jù)與各類樣本相似向量的平均值之間的距離確定待識別樣本的類別。
圖1 基于距離度量的分類過程
Fisher判別準則基于傳統(tǒng)線性判別法,其主要思想是為達到最佳分類目的,需求解最優(yōu)投影方向,將樣本數(shù)據(jù)投影到低維空間中,在保證相同類別樣本投影向量之間距離盡量小的同時,不同類別樣本投影向量之間的距離盡量大。基于Fisher判別準則的損失函數(shù)表示為:
(1)
其中,判別函數(shù)J為關于投影方向w的函數(shù),JB為類間離散度,JW為類內(nèi)離散度,SB為類間離散度矩陣,SW為類內(nèi)散度矩陣。
本文將CNN看作是從圖像到相似矩陣的一種非線性映射關系,對于圖像樣本集X={x1,x2,…,xN},模型輸出為:
V(xi)=Net(xi)
(2)
其中,Net(·)為非線性映射,即CNN前向計算過程,V(xi)為模型對樣本集X中第i個樣本xi經(jīng)過非線性映射輸出的相似向量。
類內(nèi)離散度表示為:
(3)
類間離散度表示為:
(4)
當式(1)取最大值可以保證類內(nèi)離散度盡量小的同時,類間離散度盡量大,因此理論上其可以作為訓練模型的損失函數(shù),但在神經(jīng)網(wǎng)絡反向傳播時需要將其對各權(quán)重參數(shù)進行梯度求解,而式(1)為分式形式且分子分母都有權(quán)重參數(shù),由于對各權(quán)重求梯度時太過復雜,且要在保證類內(nèi)離散度盡量小的同時,類間離散度盡量大,因此基于改進Fisher判別準則的損失函數(shù)為:
J=JW-γJB
(5)
其中,JW和JB分別表示各輸入數(shù)據(jù)在非線性映射空間中的類內(nèi)離散度和類間離散度,γ為兩種離散度的權(quán)重系數(shù)。式(5)不僅能保證類內(nèi)離散度盡量小的同時,類間離散度盡量大,而且與式(1)相比,其大幅降低了權(quán)重求梯度的計算量。
(6)
其中,V(xi)d為輸出層的第d個節(jié)點。
同理可以得到類間離散度JB的輸出層節(jié)點的殘差計算推導過程為:
(7)
根據(jù)式(6)與式(7)可得,對于損失函數(shù)J,其輸出層節(jié)點的殘差計算公式為:
(8)
在模型訓練時,對損失函數(shù)使用式(8)求得輸出層的殘差后,就可通過反向誤差傳播方法對網(wǎng)絡權(quán)值進行更新。式(5)中的γ為類內(nèi)與類間離散度的權(quán)重系數(shù),權(quán)重系數(shù)的選取會對模型準確性產(chǎn)生較大影響,而γ值的選取則會影響模型的分類效果。
本文在MNIST數(shù)據(jù)集上進行實驗驗證,特征提取階段的網(wǎng)絡結(jié)構(gòu)如圖2所示,包括卷積計算層(Conv)、最大池化層(Max Pool)、全連接層(FC),其中Conv 5×5s1,256/ReLU表示使用5×5大小的卷積核,步長設置為1,通道數(shù)為256,對卷積后的值使用ReLU激活函數(shù),ReLU激活函數(shù)的運用減少了參數(shù)的相互依存關系,緩解了過擬合問題。將圖2中的網(wǎng)絡結(jié)構(gòu)分別應用于本文基于改進Fisher判別準則的CNN與傳統(tǒng)CNN進行對比實驗,其中:本文基于改進Fisher判別準則的CNN將圖2的輸出作為多維歐式空間中的相似向量,然后使用基于Fisher判別準則的損失函數(shù)(見式(5))對網(wǎng)絡模型進行訓練直至收斂,其中γ取1.1;傳統(tǒng)CNN將圖2的輸出作為softmax的輸入,使用交叉熵作為該softmax分類器的損失函數(shù)。
圖2 特征提取階段的網(wǎng)絡結(jié)構(gòu)
圖3和圖4為測試樣本分別經(jīng)過兩個CNN特征提取階段后,使用t-SNE算法降到二維后的可視化結(jié)果。
圖3 傳統(tǒng)CNN特征提取后的可視化結(jié)果
圖4 本文CNN特征提取后的可視化結(jié)果
圖3中樣本的類內(nèi)離散度較小,同類之間的數(shù)據(jù)有重疊與交叉部分,而圖4中每一類類內(nèi)樣本離散度較小,而類間離散度較大,更有利于分類,從而證明本文基于改進Fisher判別準則的損失函數(shù)能增大類間距離的同時減小類內(nèi)距離,提高分類性能。
本文設計一種GRV網(wǎng)絡模塊,其借鑒GoogleNet的Inception思想,使用3個不同尺寸的卷積增加網(wǎng)絡對不同尺度特征的適應性,并且使用1×1的卷積結(jié)構(gòu)減少參數(shù)個數(shù)的同時跨通道融合信息,降低模型復雜度,并提高網(wǎng)絡表達能力。同時,GRV結(jié)合了ResNet的殘差學習模塊,可在一定程度上減少信息丟失,并且借鑒VGGNet中多個小卷積層替代單個大卷積層的思想提高了模型精確度。GRV網(wǎng)絡模塊如圖5所示。
圖5 GRV網(wǎng)絡模塊
本文將GRV模塊引入到CNN網(wǎng)絡中,設計FDCNN人臉識別網(wǎng)絡,并使用基于改進Fisher判別準則的損失函數(shù)對網(wǎng)絡模型進行訓練,如圖6所示。
圖6 FDCNN人臉識別網(wǎng)絡結(jié)構(gòu)
本文使用CBCL人臉數(shù)據(jù)集對網(wǎng)絡模型進行訓練與測試,并采用ORL人臉數(shù)據(jù)集對其進行測試。圖7為ORL數(shù)據(jù)集部分圖像。由于CBCL數(shù)據(jù)集與ORL數(shù)據(jù)集圖像較清晰,且圖像中的人臉都占主要部分,因此圖像預處理只需將圖片分辨率調(diào)整為128像素×128像素。
圖7 ORL數(shù)據(jù)集部分圖像
為給式(5)中損失函數(shù)的參數(shù)γ選取一個合適的值以實現(xiàn)較好的分類效果,本文在MNIST數(shù)據(jù)集上進行驗證,將FDCNN作為網(wǎng)絡模型,分別對取不同γ值的損失函數(shù)進行訓練并測試最終的識別率。不同γ值時的識別率如表1所示。可以看出,γ取不同值會對識別率有一定影響。當γ取值為0.5~1.1時,模型識別率不斷增加;當γ取值為1.3和1.5時,模型識別率不斷降低;當γ取值為1.1時,模型識別率最高,因此γ=1.1為最佳取值。
表1 不同γ值時的識別率對比
為進一步驗證γ為1.1時模型的分類效果,分別使用不同γ值求得測試樣本的相似向量,并使用t-SNE算法將該相似向量降到二維,得到不同γ值時測試樣本相似向量的可視化結(jié)果如圖8所示。
圖8 不同γ值時測試集的可視化結(jié)果
可以得出,當γ值較小時,不同類之間的距離所占比重小,類內(nèi)距離對分類的影響較大,此時隨著γ值的增加,不同類之間的距離會緩慢增大,但是繼續(xù)增加γ值會使類內(nèi)離散度所占比重越來越小,直至不同類間的距離對分類的影響占主導作用,此時雖然類間的距離很大,但是類內(nèi)離散度也很大,導致分類效果不理想,且隨著γ值的不斷增加,類內(nèi)離散度隨之增大,分類效果也急劇變差。由此可見,γ值并非越大越好,從表1和圖8可以看出,當γ取值為1.1時,模型分類效果最佳,因此式(5)中基于改進Fisher判別準則的損失函數(shù)的γ取值為1.1。
將FDCNN網(wǎng)絡模型與傳統(tǒng)CNN網(wǎng)絡模型和文獻[18,20]網(wǎng)絡模型進行多組實驗,并將結(jié)果進行對比與分析,驗證FDCNN網(wǎng)絡模型的有效性,其中:文獻[18]網(wǎng)絡模型在傳統(tǒng)CNN損失函數(shù)的基礎上,將Fisher判別準則中的類內(nèi)離散度與類間離散度以一定的權(quán)重添加到交叉熵損失函數(shù)中,并使用該損失函數(shù)對具有不同數(shù)量訓練樣本的網(wǎng)絡模型進行訓練,并測試模型最終識別率;文獻[20]網(wǎng)絡模型使用基于改進Fisher判別準則的損失函數(shù)對全連接神經(jīng)網(wǎng)絡進行訓練。將CBCL數(shù)據(jù)集如表2所示進行訓練集和測試集設置,并對4種網(wǎng)絡模型進行訓練與測試,在訓練樣本數(shù)量不同時的識別率如表3所示。
表2 CBCL訓練集與測試集設置
表3 CBCL數(shù)據(jù)集上的識別率對比
從表3可以看出,隨著訓練樣本數(shù)量的減少,識別率不斷降低,而本文FDCNN網(wǎng)絡模型無論是在訓練樣本數(shù)量為2 400時還是訓練樣本數(shù)量為840時,識別率都為最高,當訓練樣本數(shù)量為840時,識別率為93.4%。文獻[20]網(wǎng)絡模型屬于全連接神經(jīng)網(wǎng)絡,在訓練樣本數(shù)量為2 400時,其識別率低于傳統(tǒng)CNN網(wǎng)絡模型,但是由于其損失函數(shù)基于改進的Fisher判別準則,因此在訓練樣本數(shù)量為840時,其識別率反而高于傳統(tǒng)的CNN網(wǎng)絡模型。文獻[18]網(wǎng)絡模型也使用了基于改進Fisher判別準則的損失函數(shù),但由于本文FDCNN使用GRV模塊,因此其最終識別率高于文獻[18]網(wǎng)絡模型。
通過在CBCL人臉數(shù)據(jù)集上使用不同訓練樣本得到的本文FDCNN網(wǎng)絡模型對ORL人臉數(shù)據(jù)集中的人臉進行識別,以驗證該網(wǎng)絡模型在不同數(shù)據(jù)集上的泛化能力。訓練得到的FDCNN網(wǎng)絡模型在ORL人臉數(shù)據(jù)集上的識別率如表4所示。
表4 ORL數(shù)據(jù)集上的識別率對比
由于本文設計的FDCNN網(wǎng)絡模型不是學習從圖像到類別的擬合過程,而是學習從圖像到多維歐式空間的映射關系,其是一種基于距離度量的機器學習方法,通過比較兩輸入圖像得到的相似向量之間的歐氏距離來判別其是否屬于同一類別。一旦模型訓練完成,在識別過程中即使數(shù)據(jù)集發(fā)生變化,但是由于該映射關系已經(jīng)建立,因此仍可以通過比較向量之間的距離進行分類識別。從表4可以看出,雖然在ORL數(shù)據(jù)集上的識別率略低于在CBCL數(shù)據(jù)集上的識別率,但是其降低的幅度很小,即訓練得到的FDCNN網(wǎng)絡模型的泛化能力較強。
本文提出基于改進Fisher判別準則的卷積神經(jīng)網(wǎng)絡(FDCNN)。利用基于距離度量的分類方法,設計基于改進Fisher判別準則的損失函數(shù)訓練模型,并綜合VGGNet、GoogleNet和ResNet網(wǎng)絡結(jié)構(gòu)的特點,通過引入GRV模塊的CNN網(wǎng)絡進行人臉識別。實驗結(jié)果表明,FDCNN網(wǎng)絡模型具有較好的人臉識別性能及泛化能力。后續(xù)將從CNN運算速度、訓練時間及訓練過程中容易陷入局部極小值等方面進行深入分析與優(yōu)化研究,進一步擴大FDCNN網(wǎng)絡模型的適用范圍。