朱婭妮,吳國華,杜加友
(1.杭州電子科技大學(xué)軍工處,浙江 杭州310018;2.杭州電子科技大學(xué)計(jì)算機(jī)學(xué)院,浙江 杭州310018)
人臉表情識(shí)別作為智能化人機(jī)交互技術(shù)中的一個(gè)重要組成部分,近年來得到了廣泛的關(guān)注,涌現(xiàn)出許多新方法。人臉表情識(shí)別系統(tǒng)一般包括3個(gè)環(huán)節(jié),即人臉檢測(cè)、特征提取、表情分類[1]。本文提出了一種基于多群體遺傳算法進(jìn)化的支持向量機(jī)進(jìn)行人臉表情識(shí)別的新方法。采用多群體遺傳算法對(duì)支持向量機(jī)的核函數(shù)參數(shù)進(jìn)行最優(yōu)篩選。由于遺傳算法的主要特點(diǎn)是利用群體搜索策略和群體中個(gè)體之間的信息交換,且搜索過程不依賴于梯度信息,所以它尤其適用于處理傳統(tǒng)搜索方法難以解決的復(fù)雜和非線性尋優(yōu)問題。實(shí)驗(yàn)證明,采用遺傳算法進(jìn)化的支持向量機(jī)進(jìn)行分類可以得到很好的人臉表情識(shí)別率和魯棒性。
多群體遺傳算法是利用并行遺傳算法的思想,將群體劃分為一些子群體,各子群體按一定的模式分別獨(dú)立進(jìn)行進(jìn)化,在適當(dāng)?shù)臅r(shí)候,某一些子群體之間交換一些信息。這樣可以維持群體的多樣性,從而達(dá)到抑制早熟收斂的效果。
其中,將整個(gè)進(jìn)化群體劃分為3類群體同時(shí)進(jìn)行進(jìn)化:
(1)子群體1 中采用浮點(diǎn)數(shù)編碼方法進(jìn)行編碼,群體中的每個(gè)個(gè)體采用浮點(diǎn)數(shù)編碼方法,該種群具有較強(qiáng)的局部搜索能力,而全局搜索能力不強(qiáng),這個(gè)群體被叫做“開發(fā)”子群體。該群體易于在局部范圍內(nèi)搜索到優(yōu)秀個(gè)體,并將優(yōu)秀個(gè)體保存下來,設(shè)其群體規(guī)模為N1;
(2)子群體2 中采用二進(jìn)制編碼方法,每個(gè)個(gè)體采用二進(jìn)制編碼方法進(jìn)行編碼,種群具有較強(qiáng)的全局搜索能力,而其局部搜索能力不強(qiáng),這個(gè)群體被叫做“探測(cè)”子群體。二進(jìn)制編碼方法的強(qiáng)全局搜索能力使遺傳算法易于搜索全局空間[2],從而增大搜索到最優(yōu)個(gè)體的可能性,設(shè)其群體規(guī)模為N2;
(3)子群體3為精華種群,它開始并沒有個(gè)體,而是由前兩類子群體進(jìn)化過程中的優(yōu)秀個(gè)體組成,其作用在于保存前兩類子群體進(jìn)化過程中的優(yōu)秀個(gè)體,使不遭受破壞,同時(shí)群體自身也在進(jìn)化,設(shè)其種群規(guī)模為(N1+N2)/2。
在進(jìn)化過程中,為了保持個(gè)體分布的多樣性,在子群體1和子群體2 之間進(jìn)行“移民”,即相互交換一些優(yōu)秀個(gè)體,這樣可以吸取其它子群體的優(yōu)點(diǎn),克服個(gè)體趨向,“移民”的數(shù)量設(shè)為N1、N2中較小數(shù)的一半。同時(shí)。定期地從1、2類子群體中選擇優(yōu)秀個(gè)體,對(duì)子群體3 中較差個(gè)體進(jìn)行更新。該方法有效地克服了進(jìn)化過程中的早熟收斂現(xiàn)象,加快了收斂速度,提高了算法性能。
用基于多群體遺傳算法對(duì)典型的優(yōu)化測(cè)試函數(shù)進(jìn)行優(yōu)化,并通過遺傳算法性能檢驗(yàn)的標(biāo)準(zhǔn)進(jìn)行檢驗(yàn),并將其分別與單群體標(biāo)準(zhǔn)遺傳算法進(jìn)行性能比較[3]。其中,與單群體遺傳算法的比較中,分別與兩種不同編碼機(jī)制下的遺傳算法(即二進(jìn)制編碼遺傳算法與浮點(diǎn)數(shù)編碼遺傳算法)進(jìn)行性能比較。
對(duì)每個(gè)測(cè)試函數(shù),分別用各種方法下的遺傳算法進(jìn)行100次尋優(yōu)計(jì)算。如表1所示,基于多群體的遺傳算法在設(shè)定的最大遺傳代數(shù)內(nèi)都能找到全局最優(yōu)解,具有很強(qiáng)的跳出局部極值的能力,不易陷入局部收斂,即使是對(duì)極易陷入局部最優(yōu)的f6函數(shù),也能很快地達(dá)到最優(yōu)?;诙嗳后w的遺傳算法的收斂速度快,對(duì)于較難收斂的多維函數(shù)f8,也能較快地達(dá)到全局收斂,計(jì)算量明顯少于上述的其它方法。
表1 各種編碼方法下的遺傳算法性能比較
同其他機(jī)器學(xué)習(xí)算法一樣,當(dāng)SVM 用于模式識(shí)別時(shí),首先要解決的問題是如何選擇算法的參數(shù)以得到好的分類性能,由于支持向量機(jī)的推廣性取決于核函數(shù)及其參數(shù)的選擇,核函數(shù)參數(shù)主要影響樣本數(shù)據(jù)在高維特征空間中分布的復(fù)雜程度,因此要想獲得性能良好的SVM 分類器,首先要選擇合適的核函數(shù)參數(shù)將數(shù)據(jù)映射到合適的特征空間,目前對(duì)其核函數(shù)及其參數(shù)的選擇依賴經(jīng)驗(yàn)[4]。為了提高識(shí)別率和識(shí)別速度,本文采用多群體遺傳算法對(duì)支持向量機(jī)參數(shù)進(jìn)行最優(yōu)篩選:
(1)首先初始化,在參數(shù)空間隨機(jī)產(chǎn)生3組群體,群體大小N的選取一般為染色體長度的2-3倍。對(duì)染色體進(jìn)行編碼,因最佳核函數(shù)參數(shù)的搜尋過程是一個(gè)復(fù)雜的連續(xù)參數(shù)優(yōu)化問題,所以采用多群體遺傳算法以避免有限的染色體長度對(duì)進(jìn)化算法性能和求解精度的影響,染色體的長度與所尋優(yōu)參數(shù)的個(gè)數(shù)及參數(shù)取值范圍有關(guān);有時(shí)為了提高精度解碼時(shí)需進(jìn)行論域轉(zhuǎn)換,根據(jù)個(gè)體的適應(yīng)度函數(shù)值來決定應(yīng)復(fù)制的個(gè)體數(shù),然后按適應(yīng)度的大小進(jìn)行排序。
(2)接著進(jìn)行交叉、變異操作,交叉是將一對(duì)染色體按單點(diǎn)或多點(diǎn)進(jìn)行交換重組。變異是以一定概率改變?nèi)旧w某點(diǎn)的狀態(tài)。在遺傳算法中,交叉與變異的概率對(duì)遺傳算法的性能有很大的影響,變異操作一般選取范圍是交叉概率為0.5-1.0,變異概率為0.005-0.1,具體問題應(yīng)反復(fù)試驗(yàn)。重復(fù)進(jìn)行上一步直到產(chǎn)生N-1個(gè)新一代的個(gè)體,連同上一代中性能最好的那個(gè)個(gè)體組成新的群體。給出最佳的核函數(shù)參數(shù)和懲罰因子,用其訓(xùn)練新的群體直到所有的個(gè)體都達(dá)到要求為止,群體中適應(yīng)度最高的染色體所表示的參數(shù)就是所要求的解,利用尋優(yōu)所得合適的核函數(shù),通過非線性變換即可在新空間獲得最優(yōu)分類面。
本文所做仿真實(shí)驗(yàn)是在日本女性面部表情數(shù)據(jù)庫上進(jìn)行的。該數(shù)據(jù)庫中包含10位日本女性的7種表情如圖1所示,由左至右依次為生氣、厭惡、恐懼、高興、中性、悲傷、驚奇,均為256×256的8位灰度圖像。從日本女性面部表情數(shù)據(jù)庫中選取70幅圖像,共10個(gè)人,7幅/人,其中49幅圖像作為訓(xùn)練樣本,7個(gè)人,7幅/人,測(cè)試樣本為21幅圖像,3個(gè)人,7幅/人。通過隨機(jī)變換訓(xùn)練樣本和測(cè)試樣本,重復(fù)10次這樣的實(shí)驗(yàn)。對(duì)日本女性面部表情數(shù)據(jù)庫中圖像先經(jīng)過前述的預(yù)處理,然后分別通過主元分析方法和Fisher 線性判別法提取表情特征,最后分別用支持向量機(jī)、最近鄰分類器進(jìn)行訓(xùn)練和表情的分類識(shí)別[5]。
圖1 日本女性面部表情數(shù)據(jù)庫中的表情圖像
如表2所示,PCA和FLD表示通過主元分析法和線性判別法提取表情特征,NEAREST和SVM表示采用最近鄰和支持向量機(jī)兩種分類器進(jìn)行表情分類。從實(shí)驗(yàn)結(jié)果中可以看出,利用多群體遺傳算法進(jìn)化的支持向量機(jī)進(jìn)行分類比用最近鄰分類器進(jìn)行分類得到了的更好分類效果。
表2 JAFFE 庫中7種表情的識(shí)別率對(duì)比 (%)
本文通過主元分析法提取靜態(tài)人臉表情圖像特征,將多群體遺傳算法進(jìn)化的支持向量機(jī)分類器應(yīng)用于表情識(shí)別,并與使用其他方法提取特征作比較,本文的方法得到了更好的識(shí)別結(jié)果,說明了多群體遺傳算法進(jìn)化的支持向量機(jī)分類是可行的。本文實(shí)驗(yàn)中用到的日本女性面部表情數(shù)據(jù)庫是靜態(tài)表情圖像庫,而人臉表情是一個(gè)行為過程,表情差別更主要反映為動(dòng)態(tài)的變化信息,尤其是生氣、厭惡、恐懼和悲傷在靜態(tài)圖像上有更多的相似之處。人之所以能較準(zhǔn)確地由靜態(tài)圖像區(qū)分表情,是因?yàn)榭梢愿鶕?jù)以往知識(shí)和經(jīng)驗(yàn)聯(lián)想出表情的動(dòng)作過程。因此有理由相信,如果能利用多幀序列圖像提取動(dòng)態(tài)信息作表情分類,將會(huì)有更好的識(shí)別效果。
[1]Andrea A F,Michele N,Daniel R,etal.2D and 3D face recognition:a survey[J].Pattern Recognition Letters,2007,28(14):1 885-1 906.
[2]Ahonen T,Hadid A,Pietikainen M.Face description with local binary patterns:application to face recognition[J].IEEE Trans on PAMI,2006,28(12):2 037-2 041.
[3]邊肇祺,張學(xué)工.模式識(shí)別[M].北京:清華大學(xué)出版社,2000∶121-186.
[4]陳長軍,詹永照,文傳軍.支持向量描述鑒別分析及在人臉識(shí)別中的應(yīng)用[J].計(jì)算機(jī)應(yīng)用研究,2010,27(2):488-490.
[5]Wright J,Yang A Y,Ganesh A.Robust face recognition via sparse representation[J].IEEE Trans on PAMI,2009,31(2):210-227.