馮潔瓊 盧煥章 陳尚鋒
摘要:針對(duì)傳統(tǒng)人臉朝向識(shí)別算法中識(shí)別準(zhǔn)確率較低的缺點(diǎn),本文采用基于學(xué)習(xí)向量量化神經(jīng)網(wǎng)絡(luò)的識(shí)別方法,通過(guò)提取人臉圖像中眼睛位置的特征向量并對(duì)朝向不同的人臉圖像樣本進(jìn)行學(xué)習(xí)訓(xùn)練,優(yōu)化了學(xué)習(xí)向量量化神經(jīng)網(wǎng)絡(luò)各層間的權(quán)值參數(shù),取得了較高準(zhǔn)確度的識(shí)別效果;仿真結(jié)果表明,采用學(xué)習(xí)向量量化神經(jīng)網(wǎng)絡(luò)的識(shí)別方法對(duì)人臉朝向進(jìn)行識(shí)別可行有效,正確識(shí)別率可以達(dá)到95%以上,識(shí)別率與抗干擾性明顯優(yōu)于誤差反傳神經(jīng)網(wǎng)絡(luò)法。
關(guān)鍵詞:人臉朝向識(shí)別 學(xué)習(xí)向量量化 神經(jīng)網(wǎng)絡(luò) 特征向量提取
中圖分類(lèi)號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2016)05-0000-00
Abstract: Aiming at the low accuracy disadvantage of traditional facial orientation recognition algorithm, the paper employs the recognition method based on the Learning Vector Quantization neural network. By means of extracting the feature vector of eyes positions in the face images and studying the different facial image samples, the paper optimizes the weighting parameters of the LVQ neural network, which achieves good recognition result. The simulation results indicates that the facial orientation recognition based on the learning vector quantization neural network is feasible and effective, and the correct recognition rate can reach more than 95%. Besides, the paper ultimately proofs the accuracy and the validity of the learning vector quantization neural network is better than the Back-Propagation neural network.
Key Words: Facial orientation recognition, Learning vector quantization, Neural network,F(xiàn)eature vector extraction
人臉識(shí)別作為一個(gè)復(fù)雜的模式識(shí)別問(wèn)題,是生物特征識(shí)別領(lǐng)域最困難的研究課題之一,其目的是從圖像中剔除背景、提取人臉區(qū)域。人臉識(shí)別系統(tǒng)主要包括圖像數(shù)據(jù)庫(kù)采集、人臉圖像預(yù)處理、人臉特征建模及識(shí)別匹配。計(jì)算機(jī)技術(shù)的告訴發(fā)展使人臉圖像在人機(jī)交互中發(fā)揮著越來(lái)越重要的作用,由于實(shí)際應(yīng)用中,人臉外形的不穩(wěn)定性以及光照條件的多樣性使人臉視覺(jué)圖像在位置、朝向以及旋轉(zhuǎn)角度等方面產(chǎn)生巨大的差異,因此對(duì)人臉進(jìn)行準(zhǔn)確識(shí)別變得異常困難。
學(xué)習(xí)向量量化(LVQ)神經(jīng)網(wǎng)絡(luò)是一種用于訓(xùn)練競(jìng)爭(zhēng)層的有監(jiān)督學(xué)習(xí)方法的輸入前向神經(jīng)網(wǎng)絡(luò),其算法是從Kohonen競(jìng)爭(zhēng)算法演化而來(lái)的[1]。與其他模式識(shí)別和映射方法相比,它的優(yōu)勢(shì)在于網(wǎng)絡(luò)結(jié)構(gòu)簡(jiǎn)單,并且不需要對(duì)輸入向量進(jìn)行歸一化、正交化處理,只通過(guò)計(jì)算輸入向量與競(jìng)爭(zhēng)層之間的距離,從而完成復(fù)雜的分類(lèi)處理[2]。當(dāng)人臉朝向與旋轉(zhuǎn)角度不同時(shí),眼睛局部特征與人臉圖像的幾何關(guān)系有較強(qiáng)的可區(qū)分性,因此提取人眼位置信息的特征向量并獲得有助于人臉朝向分類(lèi)的特征數(shù)據(jù),將該特征信息作為L(zhǎng)VQ神經(jīng)網(wǎng)絡(luò)的輸入,可實(shí)現(xiàn)對(duì)任意給出的人臉圖像進(jìn)行朝向的識(shí)別,通過(guò)仿真可證明該方法的有效性。
1學(xué)習(xí)向量量化(LVQ)神經(jīng)網(wǎng)絡(luò)
學(xué)習(xí)向量量化神經(jīng)網(wǎng)絡(luò)是在競(jìng)爭(zhēng)網(wǎng)絡(luò)結(jié)構(gòu)的基礎(chǔ)上提出的,是自組織(SOFM)神經(jīng)網(wǎng)絡(luò)的一種有監(jiān)督形式的擴(kuò)展。在網(wǎng)絡(luò)學(xué)習(xí)過(guò)程中加入教師信號(hào)作為分類(lèi)信息對(duì)權(quán)值進(jìn)行微調(diào),并對(duì)輸出神經(jīng)元預(yù)先指定類(lèi)別,LVQ神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)了二者有效的結(jié)合,能夠更好發(fā)揮競(jìng)爭(zhēng)學(xué)習(xí)與有監(jiān)督學(xué)習(xí)的優(yōu)點(diǎn)。
1.1 LVQ神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)與工作原理
廣義學(xué)習(xí)向量量化神經(jīng)網(wǎng)絡(luò)由三層神經(jīng)元組成,即輸入層、隱藏的競(jìng)爭(zhēng)層和線性輸出層[3],其網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。輸入層與競(jìng)爭(zhēng)層之間采用全連接方式,競(jìng)爭(zhēng)層與輸出層之間采用部分連接方式[4]。競(jìng)爭(zhēng)層神經(jīng)元個(gè)數(shù)通常取輸出層神經(jīng)元個(gè)數(shù)的整數(shù)倍,每個(gè)競(jìng)爭(zhēng)層神經(jīng)元有且只有一個(gè)輸出層神經(jīng)元與之相連接且連接權(quán)值固定為1,而每個(gè)線性輸出層神經(jīng)元可以與多個(gè)競(jìng)爭(zhēng)層神經(jīng)元相連接[5]。在學(xué)習(xí)向量量化神經(jīng)網(wǎng)絡(luò)訓(xùn)練過(guò)程中,當(dāng)某個(gè)輸入模式被送入網(wǎng)絡(luò)時(shí),競(jìng)爭(zhēng)層的神經(jīng)元通過(guò)競(jìng)爭(zhēng)學(xué)習(xí)規(guī)則產(chǎn)生獲勝神經(jīng)元,獲勝神經(jīng)元調(diào)整權(quán)值的結(jié)果是使權(quán)值進(jìn)一步向當(dāng)前的輸入向量靠近。當(dāng)下次出現(xiàn)相似的輸入模式時(shí),獲勝神經(jīng)元更容易得到修改權(quán)值的機(jī)會(huì)。在反復(fù)的競(jìng)爭(zhēng)學(xué)習(xí)中,競(jìng)爭(zhēng)層的各神經(jīng)元對(duì)應(yīng)的權(quán)值逐步被調(diào)整為輸入樣本空間的聚類(lèi)中心[6]。該神經(jīng)元被激活后輸出狀態(tài)為“1”,而其他競(jìng)爭(zhēng)層神經(jīng)元的狀態(tài)均為“0”。因此,與被激活神經(jīng)元相連的線性輸出層神經(jīng)元狀態(tài)為“1”。其余輸出層神經(jīng)元狀態(tài)為“0”,從而實(shí)現(xiàn)模式分類(lèi)與識(shí)別。
LVQ各層的數(shù)學(xué)描述如下:設(shè)神經(jīng)網(wǎng)絡(luò)輸入向量,其中為輸入層神經(jīng)元個(gè)數(shù);競(jìng)爭(zhēng)層輸出,表達(dá)式為;輸出層實(shí)際輸出為,表達(dá)式為,網(wǎng)絡(luò)期望輸出為。輸入層與競(jìng)爭(zhēng)層之間的權(quán)系數(shù)矩陣,其中列向量為競(jìng)爭(zhēng)層第個(gè)神經(jīng)元對(duì)應(yīng)的權(quán)值向量;同理可得,競(jìng)爭(zhēng)層與輸出層之間的權(quán)系數(shù)矩陣為,其中列向量為競(jìng)輸出層第個(gè)神經(jīng)元對(duì)應(yīng)的權(quán)值向量。
1.2 LVQ神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法
向量量化是利用輸入向量的固有機(jī)構(gòu)進(jìn)行數(shù)據(jù)壓縮的技術(shù),學(xué)習(xí)向量量化是在向量量化基礎(chǔ)上將輸入向量分類(lèi)的監(jiān)督學(xué)習(xí)方法[7]。LVQ網(wǎng)絡(luò)在訓(xùn)練前指定好線性輸出層的神經(jīng)元類(lèi)別,在學(xué)習(xí)訓(xùn)練過(guò)程中不再改變競(jìng)爭(zhēng)層與輸出層之間的權(quán)系數(shù)矩陣,而是通過(guò)改變進(jìn)行學(xué)習(xí)。該算法實(shí)質(zhì)是根據(jù)訓(xùn)練樣本的特征進(jìn)行“獎(jiǎng)勵(lì)與懲罰”的一種迭代學(xué)習(xí)算法,即對(duì)分類(lèi)正確的樣本,“獎(jiǎng)勵(lì)”與其距離最近的權(quán)值點(diǎn)。經(jīng)過(guò)若干次訓(xùn)練后,得到的權(quán)值不再變化,說(shuō)明網(wǎng)絡(luò)達(dá)到收斂狀態(tài)[8]。而競(jìng)爭(zhēng)層神經(jīng)元的數(shù)目輸入待分類(lèi)的模式樣本測(cè)試,根據(jù)最近鄰法則得到輸入樣本模式的類(lèi)別屬性。
LVQ1具體算法步驟為:
(1) 初始化輸入層與競(jìng)爭(zhēng)層間的權(quán)值,確定初始學(xué)習(xí)速率與訓(xùn)練次數(shù);
(2)將輸入向量輸入網(wǎng)絡(luò),計(jì)算競(jìng)爭(zhēng)層神經(jīng)元與輸入向量的距離并尋找獲勝神經(jīng)元:
(3)根據(jù)分類(lèi)是否正確調(diào)整獲勝神經(jīng)元的權(quán)值:當(dāng)網(wǎng)絡(luò)分類(lèi)結(jié)果與教師信號(hào)一致時(shí),向輸入樣本方向調(diào)整權(quán)值;反之,其他非獲勝神經(jīng)元的權(quán)值保持不變。
算法直接利用最小歐式距離選擇與輸入向量最接近的矢量,因此不需要對(duì)權(quán)值向量和輸入向量進(jìn)行歸一化處理。
在上述LVQ學(xué)習(xí)算法中,有且只有一個(gè)神經(jīng)元獲勝并得到更新調(diào)整權(quán)值的機(jī)會(huì)。為了改善分類(lèi)效果,Kohonen對(duì)該算法進(jìn)行了改進(jìn),并命名為L(zhǎng)VQ2算法[9]。改進(jìn)算法基于光滑的移動(dòng)決策邊界逼近貝葉斯極限,其特點(diǎn)是引入“次獲勝”神經(jīng)元,使得“獲勝”神經(jīng)元與“次獲勝”神經(jīng)元的權(quán)值向量都被更新[10]。
LVQ2具體計(jì)算步驟如下:
(1)初始化參數(shù)、計(jì)算競(jìng)爭(zhēng)層神經(jīng)元與輸入向量距離同LVQ1算法;
(2)選擇與輸入向量距離最小的兩個(gè)競(jìng)爭(zhēng)層神經(jīng)元;
(3)若神經(jīng)元對(duì)應(yīng)于不同類(lèi)別且與當(dāng)前輸入向量的距離滿足,其中為輸入向量可能落進(jìn)的接近于兩個(gè)向量中段平面的窗口寬度,經(jīng)驗(yàn)值為左右,那么若神經(jīng)元對(duì)應(yīng)的類(lèi)別=輸入向量類(lèi)別,則,若神經(jīng)元對(duì)應(yīng)的類(lèi)別=輸入向量類(lèi)別,則。
(4)若神經(jīng)元不滿足上述條件,則按照LVQ1步驟(3)中進(jìn)行更新即可。
2基于學(xué)習(xí)向量量化神經(jīng)網(wǎng)絡(luò)的人臉朝向識(shí)別方法
2.1輸入向量與目標(biāo)向量的設(shè)計(jì)
觀察大量人臉圖像容易察覺(jué),當(dāng)人臉圖像旋轉(zhuǎn)角不一樣時(shí),眼睛局部特征在圖像中的位置差異明顯,因此僅需提取描述眼睛局部位置信息的特征向量并作為L(zhǎng)VQ神經(jīng)網(wǎng)絡(luò)的輸入,分別用數(shù)字1,2,3,4,5表示五個(gè)朝向左方、左前方、前方、右前方、右方,并作為神經(jīng)網(wǎng)絡(luò)的輸出。搜集10人共50幅不同朝向的人臉圖像,隨機(jī)選取其中30幅圖像作為訓(xùn)練集,剩余20幅作為測(cè)試集,因此目標(biāo)向量為305的向量,其中每列只有一個(gè)“1”,其余均為“0”。
2.2人臉特征向量的提取
如上文所述,文中將420420的圖像劃分為6行8列,人物雙眼的局部特征信息通過(guò)第二行的8個(gè)子矩陣描述,在利用Sobel算子對(duì)圖像進(jìn)行邊緣檢測(cè)后第二行8個(gè)子矩陣中值為“1”的像素點(diǎn)個(gè)數(shù)可較為準(zhǔn)確的表示人臉朝向。
2.3 LVQ神經(jīng)網(wǎng)絡(luò)的創(chuàng)建與訓(xùn)練
LVQ網(wǎng)絡(luò)設(shè)計(jì)的關(guān)鍵因素包括訓(xùn)練樣本是否具有普遍性與代表性,訓(xùn)練樣本容量能否滿足需要,競(jìng)爭(zhēng)層神經(jīng)元數(shù)量、初始權(quán)值等網(wǎng)絡(luò)參數(shù)取值是否得到優(yōu)化。根據(jù)特征向量與訓(xùn)練圖像數(shù)量可知輸入和輸出節(jié)點(diǎn)分別為30和5,競(jìng)爭(zhēng)層神經(jīng)元的個(gè)數(shù)通常取決于輸入輸出關(guān)系的復(fù)雜性。為防止因競(jìng)爭(zhēng)層神經(jīng)元數(shù)過(guò)多產(chǎn)生“死”神經(jīng)元,競(jìng)爭(zhēng)層節(jié)點(diǎn)數(shù)經(jīng)驗(yàn)值為線性輸出層節(jié)點(diǎn)數(shù)的24倍,本文選取15作為競(jìng)爭(zhēng)層節(jié)點(diǎn)數(shù);其次是選擇合適的學(xué)習(xí)率,為保證算法的收斂性與穩(wěn)定性,學(xué)習(xí)率取恒定值或隨時(shí)間單調(diào)減小,通常取。本文期望誤差取值0.001,學(xué)習(xí)函數(shù)用LVQ1,最大訓(xùn)練步數(shù)設(shè)為100,初始化參數(shù)后對(duì)LVQ神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,訓(xùn)練算法達(dá)到預(yù)先指定的誤差容限后停止。訓(xùn)練過(guò)程曲線如圖2所示,由圖可知網(wǎng)絡(luò)收斂性較好,滿足誤差要求。
3實(shí)驗(yàn)結(jié)果與分析
3.1網(wǎng)絡(luò)測(cè)試識(shí)別率與訓(xùn)練次數(shù)、學(xué)習(xí)算法關(guān)系
將測(cè)試的20幅不同朝向的人臉圖像輸入網(wǎng)絡(luò),網(wǎng)絡(luò)識(shí)別率如表1所示。由表1結(jié)果可知,LVQ神經(jīng)網(wǎng)絡(luò)識(shí)別人臉朝向可行且有效,總體上取得了較好的識(shí)別結(jié)果。從訓(xùn)練次數(shù)分析,在一定范圍內(nèi)訓(xùn)練次數(shù)的增加會(huì)提高分類(lèi)識(shí)別正確率,所需訓(xùn)練時(shí)間也會(huì)增加,識(shí)別錯(cuò)誤主要因?yàn)闃颖緮?shù)據(jù)較為復(fù)雜。當(dāng)訓(xùn)練集較少時(shí)識(shí)別率會(huì)相對(duì)較低,因此在防止出現(xiàn)過(guò)擬合的同時(shí)應(yīng)盡量增加訓(xùn)練集的樣本數(shù)目,可有效改善網(wǎng)絡(luò)識(shí)別結(jié)果。
從算法角度分析,結(jié)果顯示LVQ2算法雖然是對(duì)LVQ1算法的改進(jìn)但同時(shí)引入了新的誤差,因此識(shí)別結(jié)果較差;同時(shí)LVQ1算法運(yùn)用簡(jiǎn)單,識(shí)別率較高,具體應(yīng)用時(shí)應(yīng)開(kāi)發(fā)更好的優(yōu)化學(xué)習(xí)算法,綜合考慮性能指標(biāo)作折衷處理。
3.2 LVQ神經(jīng)網(wǎng)絡(luò)與BP神經(jīng)網(wǎng)絡(luò)識(shí)別效果對(duì)比
由于BP神經(jīng)網(wǎng)絡(luò)的輸出為非二值數(shù)據(jù),因此采用四舍五入方法:若網(wǎng)絡(luò)輸出小于0.5則認(rèn)為是0,反之為1;并提前利用三位二進(jìn)制數(shù)編碼對(duì)五個(gè)朝向進(jìn)行表述,如表2所示。
設(shè)置訓(xùn)練次數(shù)為100次,BP神經(jīng)網(wǎng)絡(luò)仿真結(jié)果識(shí)別率僅為85%,并出現(xiàn)錯(cuò)誤預(yù)測(cè)值 [0;0;0],該狀態(tài)不屬于表2中任何一種,從結(jié)果判斷不出圖像中人臉朝向,而LVQ神經(jīng)網(wǎng)絡(luò)不僅可以很好的規(guī)避這一缺點(diǎn),同時(shí)算法識(shí)別準(zhǔn)確率明顯較高。
4結(jié)語(yǔ)
本文提出了一種基于學(xué)習(xí)向量量化神經(jīng)網(wǎng)絡(luò)的人臉朝向識(shí)別方法,該方法第一步提取人臉圖像中雙眼的局部位置特征向量,并將提取的向量送入網(wǎng)絡(luò)進(jìn)行訓(xùn)練測(cè)試實(shí)現(xiàn)人臉朝向的準(zhǔn)確識(shí)別,然后通過(guò)仿真實(shí)驗(yàn)證明利用LVQ神經(jīng)網(wǎng)絡(luò)進(jìn)行人臉朝向識(shí)別方法的有效性,該方法能夠發(fā)揮競(jìng)爭(zhēng)學(xué)習(xí)和有監(jiān)督學(xué)習(xí)二者的優(yōu)點(diǎn),且網(wǎng)絡(luò)結(jié)構(gòu)簡(jiǎn)單,有效提高了識(shí)別率。
參考文獻(xiàn)
[1] 秦愷,曹龍漢 等.基于LVQ神經(jīng)網(wǎng)絡(luò)集成的柴油機(jī)氣門(mén)故障診斷[J].UPS應(yīng)用,2014:47-50.
[2] 董妍慧.基于LVQ神經(jīng)網(wǎng)絡(luò)模型的企業(yè)財(cái)務(wù)危機(jī)預(yù)警[J].大連海事大學(xué)學(xué)報(bào),2008,7(1):92-94.
[3] 胡波,王文娟.基于向量量化網(wǎng)絡(luò)的煤礦瓦斯監(jiān)控系統(tǒng)改造[J].電力學(xué)報(bào),2010,25(2):162-164
[4] 朱玉斌,李華聰.基于LVQ網(wǎng)絡(luò)的航空發(fā)動(dòng)機(jī)氣路故障特征提取方法研究[J].測(cè)控技術(shù),2014,33(6):24-27.
[5] 律方成,張波.LVQ神經(jīng)網(wǎng)絡(luò)在GIS局部放電類(lèi)型識(shí)別中的應(yīng)用[J].電測(cè)與儀表,2014,51(18):112-115.
[6] 戴金輝.基于混合神經(jīng)網(wǎng)絡(luò)的入侵檢測(cè)技術(shù)的研究[D].東北大學(xué)碩士論文,2010:37-39.
[7] 程劍鋒,徐俊艷.學(xué)習(xí)矢量量化的推廣及其典型形式的比較[J].計(jì)算機(jī)工程與應(yīng)用,2006(17):64-66.
[8] 李琳,張永祥.學(xué)習(xí)向量量化(LVQ)神經(jīng)網(wǎng)絡(luò)在周期信號(hào)識(shí)別方面的擴(kuò)展應(yīng)用[J].機(jī)械設(shè)計(jì)與制造,2006,6:120-122.
[9] 張志華,鄭南寧,王天樹(shù).廣義LVQ神經(jīng)網(wǎng)絡(luò)的性能分析及其改進(jìn)[J].自動(dòng)化學(xué)報(bào),1999,25(3):52-55.
[10]周云龍,李紅延,李洪偉.改進(jìn)的LVQ神經(jīng)網(wǎng)絡(luò)在風(fēng)機(jī)故障診斷中的應(yīng)用[J].化工自動(dòng)化及儀表,2013,40(5):610-615.
數(shù)字技術(shù)與應(yīng)用2016年5期