摘 要:在分析人工魚群算法(AFSA)不足的基礎上,研究了一種改進的人工魚群算法,改進主要體現(xiàn)在兩個方面:引入人工魚移動最佳步長算子;改進覓食行為。將改進算法用于徑向基神經(jīng)網(wǎng)絡的訓練過程,建立相應優(yōu)化模型,并將其應用到人臉表情的識別中。研究表明,改進算法具有收斂速度快、識別率高等優(yōu)點。
關鍵詞:人工魚群算法;徑向基函數(shù)神經(jīng)網(wǎng)絡;最佳步長;人臉表情識別
中圖分類號:TP391.4 文獻標志碼:A
文章編號:1001-3695(2008)09-2643-04
RBF neural network based on improved artificial fish swarm algorithm
and its application to facial expression recognition
WANG Ye1,WU Xiaojun1,WANG Shitong1,YANG Jingyu2
(1.School of Information Technology, Jiangnan University, Wuxi Jiangsu 214122, China;2.School of Information, Nanjing University of Science Technology, Nanjing 210094, China)
Abstract:After analyzing the disadvantages of AFSA, this paper introduced beststep operator and refined the prey behavior.It developed an improved artificial fishswarm algorithm for the RBF neural network and a model based on this method.Finally applied the new algorithm to the problem of expression recognition. The research indicates that the new algorithm has some advantages in terms of convergence performance, recognition rate and so on.
Key words:artificial fish swarm algorithm(AFSA); RBF NN; beststep; facial expression recognition
隨著計算機智能化的發(fā)展,人們試圖賦予機器以類似于人的感情,使得人工智能更加完整。人臉表情蘊涵了豐富的情感信息。面部表情的分析與識別,是實現(xiàn)智能化人機接口必不可少的一個重要方面,是關于情感計算的一個重要組成部分,對促進計算機視覺系統(tǒng)、建模和數(shù)據(jù)庫的發(fā)展都有重要作用。Ekman等人[1]最先開始人臉面部表情的研究,他們分析了包括高興、悲傷、驚奇、恐懼、厭惡、憤怒在內(nèi)的六種表情。每種表情可以通過眼眉、眼睛、嘴、下巴等器官的不同表現(xiàn)得到體現(xiàn)。經(jīng)過進一步的研究得到了面部動作編碼系統(tǒng)(facial action coding system,F(xiàn)ACS) [1]。他們根據(jù)人臉的解剖學特點,將其劃分成大約46個既相互獨立又相互聯(lián)系的運動單元,并分析了這些運動單元的運動特征及其所控制的主要區(qū)域以及與之相關的表情。
目前,國際上表情識別的方法主要有三種,即幾何法[2]、統(tǒng)計法和模型法。幾何法中比較典型的是FACS[1]模型,它是根據(jù)物理結構和肌肉模型對面部特征向量序列進行表情編碼,通過識別46個運動單元中的某些AU來識別出表情。
基于統(tǒng)計方法中應用最廣泛的是主元分析(PCA)[3,4]的方法,PCA是尋找一個正交的維數(shù)空間來描述數(shù)據(jù)變化的主要方向;另一種基于統(tǒng)計的方法是運用神經(jīng)網(wǎng)絡模型[5],由并行的互連處理單元構成,每個神經(jīng)元與其他神經(jīng)元相連,接收輸入后加權輸出給其他神經(jīng)元,各單元之間的關系通過權值來描述。現(xiàn)在很多人臉表情識別系統(tǒng)是基于人臉物理模型的方法,它是將人臉圖像建模為可變形的3D網(wǎng)格表面[6],將人臉表情識別問題轉換成可變形曲面的彈性匹配問題,把空間和灰度放在一個3D空間中同時考慮。
人工魚群算法(AFSA)[7~9]是新近提出的一種智能優(yōu)化算法。該算法具有良好的克服局部極值、取得全局極值的能力,而且該算法具有一些遺傳算法和粒子群算法不具備的特點,如使用靈活、收斂速度快。但是該算法存在保持探索與開發(fā)平衡的能力較差、算法運行后期搜索的盲目性較大等缺點,從而影響了該算法的搜索質量和效率。為了克服這些缺點,本文對基本魚群算法進行了改進,引入人工魚移動最佳步長算子,同時改進覓食行為,提出了改進人工魚群算法,并將其應用于RBF神經(jīng)網(wǎng)絡的訓練過程,建立了相應的模型,最終將其應用到人臉表情的識別中,提出一種基于改進人工魚群算法RBF神經(jīng)網(wǎng)絡的人臉表情識別方法。
1 表情特征提取
首先,應用數(shù)學形態(tài)學[10]、點輪廓檢測法(point contour detection method,PCDM)獲取眼睛、嘴和眉毛這三個正面特征器官的正確輪廓[5]。接著定義30個面部特征點(facial characteristic points,F(xiàn)CPs)來描述上述三個特征器官的位置和形狀,并合成運動單元來代表人臉部肌肉運動,面部表情可以由這些運動單元的組合來表示[11,12]。本文選擇6個主要的運動單元作為基于改進人工魚群算法RBF神經(jīng)網(wǎng)絡的輸入向量,這6個運動單元是由面部特征點的變化組合而成的。
1.1 點輪廓檢測法
點輪廓檢測法(PCDM)[5]是JyhYeong Chang等人于2001年提出的。該方法在提取特征之前,應用數(shù)學形態(tài)學技術產(chǎn)生邊界強度圖像。定義原始圖像為I、邊界強
其中:dilation為膨脹操作;erosion為腐蝕操作。在邊界強度圖像中,眼睛、嘴、眼眉等顯著特征將十分明顯地顯現(xiàn)出來。結合原始圖像、邊界強度圖像、先驗知識,可以將面部特征器官定位在特定區(qū)域內(nèi)。在區(qū)域確定之后,分別在區(qū)域的上下邊界以相等距離設置一些標點。由于特征器官在區(qū)域內(nèi),且輪廓邊界強度較大,學習機制使上邊界標點向下搜索、下邊界標點向上搜索與局部邊界最匹配的標點。當搜索完成,所有標點位置確定后,應用偽逆反方法找到平滑曲線連接標點,使得距離方差最小。圖1給出應用點輪廓檢測法在JAFFE圖像庫上進行人臉特征器官輪廓提取實驗的結果。
1.2 面部特征點
面部特征點(FCPs)[11,12]是用來描述面部特征的基準點。圖2給出各面部特征點,其中包括眼角、嘴角等30個面部特征點,ai是各面部特征點坐標的向量表示。,
經(jīng)過歸一化后,圖像大小相同,而且減小了拍照時人臉與攝像機之間距離的影響。
1.3 運動單元組合
根據(jù)Ekman等人的研究[1],46個運動單元的相互組合幾乎可以描述所有的面部表情。Kobayashi等人則進一步研究了46個運動單元相互組合在人臉表情識別上的應用[11,12]。根據(jù)他們的研究,本文選擇了如表1所示的6個最具影響力的運動單元來識別高興、悲傷、驚奇、恐懼、厭惡、憤怒這6種表情。
表1 選取描述面部表情的運動單元
現(xiàn)的變化序號表現(xiàn)的變化
AU4眉毛壓低AU10上唇抬起
AU6臉頰上升AU12嘴角拉直
AU7眼瞼繃緊AU16下頜下落
本文定義阿拉伯數(shù)1、2分別代表圖2與3中a1經(jīng)歸一化后
(f-7)=(50e-50n)+(54e-54n)+(56e-56n)
(f-8)=-(45e-45n)+(47e-47n)
其中:數(shù)字1~60在前面已經(jīng)定義;e代表有表情的輸入圖像;n代表無表情圖像。最終運動單元的值由樹型結構確定。
2 基于改進人工魚群算法的RBF神經(jīng)網(wǎng)絡
2.1 人工魚群算法
人工魚群算法是由李曉磊等人[7~9]在2002年提出的一種新型尋優(yōu)算法。該算法是一種基于模擬魚群行為的優(yōu)化算法。在一片水域中,魚往往能自行或尾隨其他魚找到營養(yǎng)物質多的地方,因而魚生存數(shù)目最多的地方一般就是本水域中營養(yǎng)物質最多的地方。人工魚群算法就是根據(jù)這一特點,模仿魚的覓食、聚群及追尾行為,從構造單條魚的行為做起,通過魚群中各個體的局部尋優(yōu),達到全局最優(yōu)。算法具有克服局部極值、取得全局極值的能力,對搜索空間具有一定的自適應能力。人工魚的行為描述如下:
a)覓食行為。這是魚的基本行為,當發(fā)現(xiàn)附近有食物時,則向該方向移動。
b)聚群行為。每條魚在游動過程中盡量向鄰近伙伴的中心移動并避免過分擁擠。它們往往能形成非常龐大的群。
c)追尾行為。當某條魚發(fā)現(xiàn)該處食物豐富時,其他魚會快速尾隨而至。
算法對人工魚當前所處的環(huán)境進行評價,模擬執(zhí)行聚群、追尾行為,選擇食物濃度值較大的來執(zhí)行。 鑒于人工魚的行為描述,每條人工魚探索它當前所處的環(huán)境狀況,從而選擇一個合適的行為,使得向最優(yōu)方向前進最快。最終,人工魚集結在幾個局部極值的周圍,且值較優(yōu)的極值區(qū)域周圍一般能集結較多人工魚。
從上面的介紹可以看出,魚群算法的覓食行為類似遺傳算法中的變異操作,聚群和追尾行為類似遺傳算法中的選擇操作,其中聚群行為也有潛在的變異操作。該算法具有良好的克服局部極值、取得全局極值的能力,而且具有較快的收斂速度。
基于最佳步長思想的人工魚群算法
AFSA具有把握搜索方向和在一定程度上避免陷入局部最優(yōu)的特性, 但經(jīng)過反復實驗發(fā)現(xiàn),AFSA仍有一些不足:
a)在魚群算法的一次迭代中,當人工魚個體執(zhí)行完所有行為后選擇最優(yōu)行為,向最優(yōu)方向隨機移動一步,隨機行為在一定程度上影響算法收斂的速度。
b)在解決優(yōu)化問題時,魚群的覓食行為起到了很重要的作用。這種方法雖然可以擴展算法的搜索范圍,但同時也會出現(xiàn)算法退化的現(xiàn)象。尤其是在算法出現(xiàn)停滯時,經(jīng)過這種隨機選擇的方法,會產(chǎn)生一個新的魚群,重新在解空間中搜索,而沒有充分利用前面已經(jīng)得到的有利信息。
算法的這些缺點,對于需要快速找到較好解的人臉表情識別系統(tǒng)來說是不利的。為了克服上述缺點,本文從以下思想出發(fā),對算法進行改進。
設人工魚當前狀態(tài)為到達一個新的較好狀態(tài)。由可確定前進方向:
從而加快算法的收斂速度。
2)改進覓食行為
在改進后的覓食行為中,人工魚Xi在其視野內(nèi)隨機選擇一個狀態(tài)Xj,如發(fā)現(xiàn)比當前狀態(tài)Xi好,則向狀態(tài)Xj方向前進一步使得到Xi達一個新的較好狀態(tài);否則,Xi繼續(xù)在其視野內(nèi)重新隨機選擇狀態(tài)Xj,判斷是否滿足前進條件。反復嘗試多次后,如果仍沒有找到更優(yōu)的狀態(tài),則向當前公告板中的最佳狀態(tài)前進一步。這樣做既擴展了算法的搜索范圍,又充分利用了前面已經(jīng)得到的有利信息,從而加快了算法的收斂速度。
從上面的討論可以看出,新的算法主要是基于尋找最佳步長與利用當前最佳狀態(tài)思想,所以本文將這種新的算法命名為最佳人工魚群算法(best artificial fishswarm algorithm,BAFSA)。
2.3 基于BAFSA的RBF神經(jīng)網(wǎng)絡
2.3.1 改進后魚群行為的數(shù)學描述
2.3.2 RBF網(wǎng)絡訓練過程
目前,RBF網(wǎng)絡的學習算法主要有兩大類:a)混合算法。首先,通過某種無監(jiān)督學習方法,如聚類算法、遺傳算法等選擇RBF的中心;然后采用最小二乘法計算網(wǎng)絡的輸出權值。b)將RBF中心的選擇和輸出權值的學習結合起來。典型的方法有正交最小二乘算法(OLS算法)和梯度下降算法,在權值學習的同時確定隱層節(jié)點的數(shù)量寬度。
本文將RBF網(wǎng)絡的學習算法分為兩個階段:a)隱層徑向基函數(shù)中心的確定階段。應用FCM方法選擇隱層中心,進而計算寬度等參數(shù)。b)將BAFSA應用于RBF神經(jīng)網(wǎng)絡權值學習過程。其步驟如下:
(a)輸入人工魚群規(guī)模AFnum,最大迭代次數(shù)number,人工魚視野范圍Visual,擁擠度因子δ。在控制變量可行區(qū)域內(nèi)初始權值隨機生成AFnum個人工魚個體,形成初始魚群,即生成AFnum組設置初始迭代次數(shù)num=0。
(b)計算初始魚群各人工魚個體當前位置的食物濃度值FC,并比較大小,取FC為最大值者進入公告板,將此魚賦值給公告板。
(c)各人工魚分別模擬追尾和聚群行為,選擇行動后FC值較大的行為實際執(zhí)行。缺省行為方式為覓食行為。
(d)各人工魚每行動一次后,檢驗自身的FC與公告板的FC。如果優(yōu)于公告板,則以自身取代之。
(e)中止條件判斷:判斷num是否已達到預置的最大迭代次數(shù)number,若是,則輸出計算結果,即公告板的FC值;否則num=num+1,轉步驟(c)。
3 實驗仿真與分析
3.1 實驗結果
實驗中人臉數(shù)據(jù)庫使用JAFFE數(shù)據(jù)庫。選取10人高興、悲傷、驚奇、恐懼、厭惡、憤怒6種表情類型,每類表情3幅圖像(2幅圖像作為訓練樣本,1幅作為測試樣本)。實驗圖像共180幅。其中訓練樣本120幅,測試樣本60幅。首先,構建RBF神經(jīng)網(wǎng)絡分類器,其結構如圖5所示;然后,采用第1章的方法生成訓練樣本及測試樣本的輸入向量,并用第2章的算法對RBF神經(jīng)網(wǎng)絡分類器進行訓練;最后,應用訓練好的RBF神經(jīng)網(wǎng)絡分類器進行測試。最終與采用自適應學習速率動量梯度下降算法的BP網(wǎng)絡及采用OLS算法的RBF網(wǎng)絡的實驗結果進行比較。
看出,BP網(wǎng)絡在迭代80次時達到最優(yōu)值;RBF網(wǎng)絡在迭代20次時達到最優(yōu)值;本文基于BAFSA的RBF網(wǎng)絡在16次即可達到最優(yōu)值,而且精度高、誤差下降速度較快。表2給出了三種網(wǎng)絡10次實驗的平均識別率。可以看出,本文基于BAFSA的RBF網(wǎng)絡在識別率上有明顯提高。
表2 三種網(wǎng)絡10次實驗的平均識別率
網(wǎng)絡識別率/%
BP84.3
RBF85.8
基于BAFSA的RBF89.1
3.2 結果分析
經(jīng)反復實驗可以得出,影響識別率的因素主要有:不同的人在同一表情上的表現(xiàn)不同;一些人悲傷與恐懼的表情過于相似。
在網(wǎng)絡訓練方面,由于人工魚群的初始狀態(tài)是隨機產(chǎn)生的,誤差較大,沒有有效解。但人工魚的覓食行為與追尾行為使得初始解快速向全局和局部最優(yōu)收斂;同時聚群行為使得一部分人工魚離開局部最優(yōu),向全局收斂。目前,算法還存在著后期收斂速度慢、收斂精度不高的缺陷。這是筆者在今后工作中需要著重研究與改進的地方。
4 結束語
本文提出一個基于改進人工魚群算法RBF神經(jīng)網(wǎng)絡的人臉表情識別方法;引入人工魚移動的最佳步長算子,同時改進了人工魚群算法的覓食行為,并建立了一種新的網(wǎng)絡訓練算法。從實驗結果分析,與采用自適應學習速率動量梯度下降算法的BP網(wǎng)絡及采用OLS算法的RBF網(wǎng)絡相比,基于BAFSA的RBF網(wǎng)絡具有較快的收斂速度,能夠達到較小的均方誤差值,因此,此算法的收斂過程有一定的優(yōu)勢。
參考文獻:
[1]EKMAN P,F(xiàn)RIESEN W V.Manual for the facial action coding system[M].Palo Alto,CA:Consulting Psychologists Press,1978.
[2]PANTIE M,ROTHKRANTZ L J M.Automatic analysis of facial expression:the state of the art[J].IEEE Trans on Pattern Analysis and Machine Intelligence,2000,22(12):14241445.
[3]COTTRELL G W,F(xiàn)LEMING M K.Face recognition using unsupervised feature extraction[C]//Proc of Int Neural Network Conf.1990:322-325.
[4]JOLLIHE I J.Principal component analysis[M].New York:Springer,1986.
[5]CHANG J Y,CHEN J L.Automated facial expression recognition system using neural networks [J].Journal of the Chinese Institute of Engineer,2000,24(3):345-356.
[6]BLANZ V,VETTER T.A morphable model for the synthesis of 3D faces[C]//Proc of SIGGRAPH’99.Los Angeles: ACM Press,1999:187194.
[7]李曉磊,邵之江,錢積新. 一種基于動物自治體的尋優(yōu)模式:魚群算法[J].系統(tǒng)工程理論與實踐,2002,22(11): 32-38.
[8]李曉磊,路飛,田國會,等.組合優(yōu)化問題的人工魚群算法應用[J].山東大學學報,2004,34(5):65-68.
[9]李曉磊,錢積新.基于分解協(xié)調的人工魚群優(yōu)化算法研究[J].電路與系統(tǒng)學報,2003,8(1):1-6.
[10]孫即祥.圖像分析[M].北京:科學出版社,2005.
[11]KOBAYASHI H,HARA F.Recognition of six basic facial expressions and their strength by neural network[C]//Proc of IEEE International Workshop on Robot and Human Communication.New York:[s.n.],1992:381-386.
[12]KOBAYASHI H,HARA F.Analysis of the neural network recognition characteristics of six basic facial expressions[C]//Proc of the 3rd IEEE International Workshop on Robot and Human Communication.New York:[s.n.],1994:222-227.