潘禮正,2,尹澤明,佘世剛,袁崢崢,趙 路
(1.常州大學 機械工程學院,江蘇 常州 213164;2.東南大學 江蘇省遠程測量與控制重點實驗室,南京 210096)
近年來,情感狀態(tài)識別在健康監(jiān)測、遠程教育、駕駛員狀態(tài)評估以及人機交互等領域成為研究的熱點[1-2]。
目前的情緒識別研究主要建立在面部表情、語音、身體姿勢等信號的基礎上[3-4],但這些信號容易受到人的主觀意志控制。生理學研究表明,生理信號與人體狀態(tài)密切相關,由神經(jīng)系統(tǒng)和內分泌系統(tǒng)控制,不受人的主觀思想的影響,因此能客觀地反映情緒狀態(tài),得到了廣泛的研究與應用[4-6]。但是目前的研究大多都是通過單模態(tài)的生理信號進行情緒識別。例如文獻[7]通過腦電信號進行情感識別;文獻[8-9]通過心電信號進行情感識別;文獻[10]通過脈搏信號進行情感識別;文獻[11]通過皮膚電信號進行情感識別;文獻[12]通過肌電信號進行情感識別;上述研究都取得了一定的成果,但是存在識別率不高的問題。文獻[13-14]的研究表明,在情感識別過程中,通過將多種模態(tài)的生理信號特征進行融合作為分類器的輸入,能夠使識別結果更加客觀和準確,但是將多模態(tài)生理信號特征融合會增加特征維度、降低識別效率。
為了提高情緒識別的效率和準確率,本文提出了一種融合多種生理信號及FCA-ReliefF的情緒識別方法,并在公開的數(shù)據(jù)集進行實驗,驗證提出方法的有效性。
為了驗證提出方法的有效性,采用德國 Augsburg 大學建立的公開的情感數(shù)據(jù)庫[15]。數(shù)據(jù)包含被試在4種情緒狀態(tài)(開心、憤怒、傷心、愉悅)下的4種生理信號(心電、肌電、呼吸、皮膚電)。其中心電信號(ECG)的采樣頻率為256Hz,肌電信號(EMG)、呼吸信號(RSP)、皮膚電信號(SC)的采樣頻率均設置為32 Hz。實驗連續(xù)進行25天,每天對被試4種情緒狀態(tài)的4種生理信號進行采集。為了方便后續(xù)研究,每種生理信號的數(shù)據(jù)采集長度均保留為2分鐘。最終得到開心、憤怒、傷心、愉悅樣本各25個,共100個樣本。本文情感識別流程圖如圖1所示。
圖1 情緒識別算法流程圖
特征提取就是從生理信號中提取出能夠反映與情緒相關的特征參數(shù)。為了提高分類結果的準確率,本文分別從信號的時域和頻域兩個維度入手從情感生理數(shù)據(jù)中提取出相應的時域特征和頻域特征。
時域特征是從統(tǒng)計學的角度對生理信號的波形進行相應的特征提取。首先計算信號在時域中常用統(tǒng)計量,包括最大值、最小值、均值、標準差、方差、中值、極值等7個特征;然后對信號序列分別作一階差分和二階差分后再分別提取上述7個特征,總計得到21個特征。一階差分體現(xiàn)了信號的變化趨勢和變化快慢;二階差分可以用來檢測信號局部的拐點。對每一類信號都提取上述的21個特征,總共84個特征。在時域內進行特征提取涉及到如下計算公式:
(1)
(2)
(3)
(4)
式中,Xn代表信號的第n個樣本;N表示要分析的數(shù)據(jù)的長度;ux代表平均值;σx代表標準差;σx代表方差;1diff代表一階差分。
利用快速傅立葉變換(FFT)將信號從時域變換到頻域。將信號從時域轉換為頻域涉及以下公式:
(5)
(6)
當滿足傅立葉積分條件時,式 (5) 稱為f(t)的傅立葉變換;式 (6) 的積分運算稱為F(w)的反傅立葉變換;F(w)被稱為f(t)的鏡像函數(shù);f(t)為原函數(shù)。
將信號從時域轉換到頻域后,提取最大值、最小值、均值、標準差、中值和極值等6個特征,從4種信號共獲得24個特征。這樣從時域和頻域總共提取了108個特征,包括心電、肌電、呼吸和皮膚電信號的各27個特征。
特征相關性分析(FCA)是指計算各個特征之間的相關系數(shù)大小,衡量特征之間相關性,然后設置閾值刪除兩個相關性較大的特征中的一個[16]。相關性分析理論建立在刪除相關性較大的特征不會降低剩余特征表達信息的能力[17]。因此,在不降低特征識別精度的前提下,使用FCA對原始的高維特征集進行了初步篩選工作,即刪除原始特征集中兩個相關特征中的一個冗余特征,從而降低特征維度。特征相關性分析(FCA)步驟如下:
1)利用分類器構造情緒識別模型,計算出每個特征的分識別精度,并根據(jù)每個特征的識別精度按照從小到大的順序排列。本研究選取支持向量機作為分類器。
2)根據(jù)下面的公式計算兩兩特征之間的相關系數(shù)大小:
(7)
(8)
3)通過步驟2) 的計算,得到以下相關系數(shù)矩陣:
(9)
上述矩陣是一個對稱矩陣,特征與特征之間的相關系數(shù)滿足rij=rji。rnn在矩陣的主對角線上,是特征的自相關系數(shù),并且滿足rnn=1。
4) 設置閾值δ(0≤δ≤1)。當兩個特征之間的相關性閾值滿足rij>δ時,參照 (1) 的排序結果,保留識別率大的特征,剔除識別率小的特征。當遇到兩個特征中的一個已經(jīng)被刪除時,另一個特征則保留下來,最終經(jīng)過特征降維后保留下來的特征構成一個新的特征子集。再用ReliefF算法對新得到的特征集進行特征篩選。
保留的特征數(shù)量取決于設置的閾值。閾值越小,保留的特征數(shù)量越少,特征之間的相關性越小。相反,閾值越大,保留的特征數(shù)量越多,特征之間的相關性越大。根據(jù)分析閾值δ的選擇范圍一般在0.85~0.95。本文經(jīng)過多次實驗發(fā)現(xiàn),當閾值δ設置為0.90時,效果最好。
ReliefF算法是一種在Relief基礎上改進的算法。Relief算法基于特征的權重進行特征篩選,其算法步驟是首先根據(jù)特征與所屬類別之間的關聯(lián)度大小為每個特征分配一個權重值,然后根據(jù)閾值刪除權重值小于閾值的特征[18]。Relief算法計算量較小,速度快,但它僅限于二分類問題之間的特征選擇。經(jīng)過改進得到的ReliefF算法將二分類問題的特征選擇擴展到多分類問題的特征選擇,其在手勢識別、語音識別等領域已經(jīng)取得了較好的實驗結果[19]。ReliefF算法的主要實現(xiàn)步驟如下:
1)從樣本集S中隨機選擇任意樣本Si,并從與樣本相同的類別S中選擇k個相鄰樣本。
2)從不同于樣本Si的每個類別中任意選擇k個相鄰的樣本;
3)根據(jù)下面的公式更新每個特征權重值:
(10)
4)確定閾值進行刪除。
本文參考文獻[18-19],在確定刪除閾值時,分別去除最小權重的5%、8%、10%、15%、20%、25%、30%、35%和40%的特征量。實驗結果表明,刪除25%的特征數(shù)量后,得到的識別率最高。因此,本文選擇去除25%的特征量,最終得到包含60個特征的特征集。
本節(jié)主要將提出的方法應用到德國Augsburg大學建立的公開的情感數(shù)據(jù)集上。
實驗結果主要從以下兩個方面進行展示:1) 對比單一生理信號和多種生理信號融合后在進行情緒識別時的準確率,用來展示多種生理信號融合在情緒識別中的優(yōu)勢;2) 將FCA-ReliefF降維算法應用到多種生理信號融合后得到的特征空間進行特征降維,分析特征空間縮減前后的維度變化以及識別率的變化,并與德國Augsburg大學提供的實驗結果進行對比,展示提出方法的優(yōu)勢。
基于單一信號特征的四種情緒狀態(tài)的情緒識別精度見表1和表2。
表1展示了基于單一信號特征和使用SVM分類器的情緒識別率??梢钥闯?,肌電信號識別率最高,達到72.26%;心電信號識別率最低,只有62.12%;4種生理信號的平均識別率為66.17%。
表1 基于支持向量機的單一生理信號識別精度
基于決策樹分類器的單一生理信號情緒識別率如表2所示。其中肌電信號識別率最高,達到62.32%。SC信號的識別率最低,只有52.16%。4種情緒狀態(tài)的平均識別率較低,只有56.48%。
表2 基于決策樹的單一生理信號識別精度
通過對表1和表2進行分析,可以得出結論:1)無論是使用支持向量機還是決策樹分類器,肌電信號都比其他生理信號更容易識別;2)支持向量機的分類效果優(yōu)于決策樹分類器;3)單一生理信號的識別率普遍較低。
表3和表4展示了分別使用支持向量機和決策樹進行生理信號特征融合后識別的結果。
表3 基于支持向量機的多生理信號融合的識別精度
表4 基于決策樹的多生理信號融合的識別精度
結果顯示憤怒和悲傷的識別率最高,均為98.41%;喜悅和快樂的識別率稍低,均為95.16%。這表明,憤怒和悲傷的、這兩種情緒狀態(tài)比快樂和愉悅的情緒狀態(tài)更容易識別;4種情緒的平均識別率達到了96.79%。
從表4可以看出憤怒識別率最高,為92.06%,愉悅識別率最低,為85.48%;悲傷和喜悅的識別率分別為90.48%和88.71%;4種情緒狀態(tài)的平均識別率為89.18%。
分析表1、表2、表3和表4,得出如下結論: 1)無論使用哪種分類器,憤怒的情緒狀態(tài)比其他三種情緒狀態(tài)更容易識別,而快樂的情緒狀態(tài)較難分類;2)使用決策樹進行分類得到的結果低于支持向量機的識別效果;3)與單一信號特征的識別率相比,生理信號融合后的識別精度得到了顯著改善,識別率遠高于單一信號情緒識別結果,這表明多種生理信號特征融合是提高識別率的有效方法。
此外,還將實驗結果與德國Augsburg大學的結果[15]進行了比較,如表5所示。與德國Augsburg大學的實驗結果對比得到,本文得到的4種不同情緒的平均識別率更高,分別為96.79%和89.18%,進一步驗證了特征融合方法的有效性。此外,德國Augsburg大學和本文的研究結果都表明,憤怒的情緒更容易識別。
表5 德國Augsburg大學與本文實驗結果的對比
*代表本文使用的方法
盡管生理信號特征融合的平均識別率較高,但是特征維度達到了108維,特征維度較大影響了識別效率。為了有效地減少特征維數(shù),采用了基于FCA-ReliefF的兩階段特征篩選策略。在進行選擇之前,需要將經(jīng)過融合得到的108維特征進行從1~108順序編號,不同的數(shù)字代表不同的特征編號。這108個特征已在前文中介紹,包括心電、肌電、呼吸和皮膚電信號的各27個特征。通過使用FCA-ReliefF方法去除的特征分別示于表6和表7中。
表6 使用FCA剔除的特征
表6表示使用FCA進行第一階段特征降維刪掉的特征編號,即將原始的108維特征減少到80維特征刪掉的特征編號。包括心電信號的6個特征、肌電信號的8個特征、呼吸信號的7個特征、皮膚電信號的7個維度,總共剔除了20個特征。
接著采用ReliefF算法進行第二階段降維,即對剩余的80個特征進行二次降維。在此步驟中,又剔除了20維特征,包括心電信號的4個特征、肌電信號的6個特征、呼吸和皮膚電信號各5個特征。被剔除的特征編號如表7所示。
表7 使用ReliefF剔除的特征
將經(jīng)過FCA-ReliefF方法降維后得到的特征集輸入分類器進行分類。為了驗證提出方法的有效性,將本文實驗結果與文獻[20]、[21 ]進行對比,結果如表8所示。
表8 使用不同特征選擇方法的情緒識別精度
*代表本文使用的方法。
實驗結果表明:1)本文的實驗結果在未經(jīng)過特征降維時在特征維數(shù)及識別精度方面均優(yōu)于文獻[20-21 ];2) 為了進一步減小特征空間,使用FCA-ReliefF進行特征選擇,特征維度從108維減小到60維,識別精度進一步提高,達到了98.40%,驗證了提出方法的有效性。
本文采用德國Augsburg大學公開的情感數(shù)據(jù)庫進行情緒識別實驗。提出基于特征融合與FCA-ReliefF的方法進行情緒識別,結果表明,特征維數(shù)從108維降到60維,識別率達到了98.40%,驗證了方法的有效性。在此研究工作基礎上,后續(xù)工作將圍繞相關指定任務展開,包括新的特征提取方法、改進的分類器,進一步提高情緒識別的效率和準確率。