潘聞特,申麗萍
(上海交通大學 電子信息與電氣工程學院,上海200240)
情感計算[1]是通過各種傳感器獲取由人的情感所引起的各種生理變化,建立情感模型,從而創建感知、識別和理解人類情感,目前研究中的常用方法主要包括表情情感識別、姿態情感識別以及語音情感識別。但這些方法由于受主觀影響過大,有時候無法真實的反應人自身的情感狀態。生理信號情感識別通過分析人體潛在的生物電信號來識別情感狀態,更易于捕捉內在情感和情緒。在這一方面最早取得矚目成果的是美國MIT媒體實驗室情感計算研究小組的Picard[2]教授團隊,他們率先從生理信號中提取特征來開展情感識別的研究,基本完成了對實驗可行性的論證。之后其它國家的學者也對本方向給予了極大的重視并進行了積極的研究,取得了很好的結果。
文獻 [2]通過對4種生理信號 (肌電,膚電,呼吸作用,血容量搏動)的分析,采用 SFFS[2]和 Fisher[2-3]方 法來進行特征提取,識別率達到70%以上。文獻 [3]對joy、anger、pleasure和sadness這4種情感用不同的特征選擇方法 (SFS,Fisher,SFS/Fisher,ANOVO)與不同分類器(LDF,KNN,MLPN)結合的方法進行了識別,也取得了很好的效果。文獻 [4-5]也列出了在生理信號情感檢測時構建分類的相關成果。但這些方法沒有考慮不同個體之間存在的生理差異所引起的識別誤差,因此,現有的方法均不具備普遍適用性。本文針對上述現有技術的不足,提出了一種能夠普遍適用的,基于人體生理信號的學生情感識別方法,通過對生理信號的預處理,消除由于個體差異以及環境因素導致的信號偏置,利用隨機型反饋神經網絡[6]對生理信號特征進行編碼,減小由于個體差異帶來的特征差異。實驗結果證明了該方法的可行性。
G.E.Hinton[7]等于1983—1986年提出一種稱為波爾茲曼 (Boltzmann[8])機的隨機神經網絡。在這種網絡中神經元只有兩種輸出狀態,即單極性二進制的0或1。狀態的取值根據概率統計法則決定,由于這種概率統計法則的表達形式與著名統計力學家L.Boltzmann提出的Boltzmann分布類似故該名稱為Boltzmann Machine(BM)網絡。從功能上講,波爾茲曼機是反饋神經網絡,且對稱連接,無自反饋。從結構上講,它又可視為多層網絡。包括輸入層、隱層和輸出層。其中,輸入層和輸出層又稱為可視層。玻爾茲曼機是典型的隨機神經網絡模型。即網絡中的神經元是隨機神經元,其狀態用概率來確定。
受限波爾茲曼機 (restricted Boltzmann machine[9])是一種基于能量的改進的模型,通常被用于模式識別中的無監督學習。它包含兩層,一層稱為可見層,另一層稱為隱層。每一層均由一系列節點組成,這些節點通常被稱為“專家”,受限波爾茲曼機的節點狀態是二值的,即為0或1。每一層內都有一個偏置節點,其狀態不會變化。層與層之間的節點是無向全連接的,而層內的節點之間不存在連接,即構成一個偶圖。每一條連接都被賦予一個權值,用于描述該連接兩端的節點之間的關聯度。一般的,向量v表示其可見層狀態,向量h表示其隱層狀態,向量b為隱層偏置單元與可見層的連接權重,向量c為可見層偏置與隱層的連接權重,W表示連接隱層和可見層的權值矩陣。它對數據空間的能量分布建立如下分布

其中:Energy(v,h)=-bTv-cTh-hTWv將能量歸一化,可以得到一可見層與隱層狀態的聯合概率分布

通過建立P(v,h)生成模型,可以認為,在給定v的情況下,從該模型中采樣得到的h是v在該模型下的一個隱含表示,即一組編碼。通常這種隱含表示能夠學習到可見層數據中的某些高維抽象特征,對后續的分類器訓練和分類有提高準確率的輔助作用。
受限波爾茲曼機訓練方法介紹如下:使用受限波爾茲曼機時,首先隨機初始化權值矩陣W,偏置向量b和c,然后通過訓練算法,將該模型擬合至實際的數據空間能量分布。目前有較快的算法,稱為一致對比散度 (persistence contrastive divergence[10])法。具體算法為:
(1)維護一組初始為全0狀態的負樣本v-;
(2)初始化W,b,c為隨機的較小數值;
(3)對于每一組訓練數據,即正樣本v+,通過采樣P(h+|v+)得到一組h+;
(4)對于負樣本,通過采樣P(h-|v-)得到一組h-;
(5)通過采樣P(v-|h-)重構一組負樣本v-,作為下一次采樣的負樣本;
(6)計算梯度g=v+h+T-v-h-T;
(7)更新W=W+rw·g,rw為學習速率;
(8)重復 (4)至 (7)步,直至達到最大訓練周期。
連續受限波爾茲曼機 (CRBM[11])是受限波爾茲曼機(RBM)的一種擴展,由于受限波爾茲曼機一般是定義為由二項分布的隨機單元組成的模型,而我們所處理的信號值是連續的變量,所以為了使用受限波爾茲曼機進行編碼,需要對受限波爾茲曼機的隨機單元進行改造,這里將二項分布擴展到Exponential Family[12]函數,通過用高斯隨機分布代替二項分布的方法將受限波爾茲曼機的二項單元擴展到連續單元,所以稱為連續的受限波爾茲曼機 (CRBM)。連續的受限波爾茲曼機是一種對受限波爾茲曼機的推廣,其與受限波爾茲曼機有相同的結構,不同的是,受限波爾茲曼機的每一個節點是一個伯努立 (Bernoulli[13])分布的隨機節點,而連續的受限波爾茲曼機的每一個節點是一個加入高斯隨機噪聲的Sigmoid節點[14]。其圖模型如圖1所示。

圖1 連續受限波爾茲曼機結構機
與受限波爾茲曼機一樣,可見層狀態用向量v表示,其隱層狀態用向量h表示,隱層偏置單元與可見層的連接權重用向量b表示,可見層偏置與隱層的連接權重用向量c表示,連接隱層和可見層的權值矩陣用W表示。其隱層節點的狀態為

式中:Νj(0,1)——以0為均值,1——方差的高斯分布?!摴濣c所可能取到的最小、最大值,aj——一個隨機噪聲控制參數,對于可見層節點,可以將aj設為固定值,隱層節點的aj通過訓練算法訓練得到。
連續的受限波爾茲曼機訓練方法介紹如下:連續的受限波爾茲曼機的訓練方法與受限波爾茲曼機的訓練方法是基本一致的,根據最新的受限波爾茲曼機訓練方法一致對比散度[15]法,可以得到連續的受限波爾茲曼機的訓練方法:
(1)維護一組初始為全0狀態的負樣本v-;
(2)初始化W,b,c為隨機的較小數值;
(3)對于每一組訓練數據,即正樣本v+,通過計算,得到一組h+;
(6)計算梯度g=v+h+T-v-h-T;
(7)更新W=W+rw·g,rw為學習速率;
(9)重復 (4)至 (8)步,直至達到最大訓練周期。
訓練完畢后所生成模型P(v,h)可以通過采樣從模型中得到符合數據分布概率的v和h。同時,生成模型P(v,h)在給定可見層狀態向量v的情況下,采樣得到的隱層狀態向量h即為生理信號特征編碼。
情感識別問題從本質上來看也是一個分類問題。本例基于生理信號學生情感分類器的訓練框架,如圖2所示。其步驟如下。

圖2 基于生理信號的情感識別框架
生理信號噪聲濾波。利用生理信號傳感器:皮膚電導(Skin Conductance)傳感器、血容量搏動 (Blood Volume Pulse)傳感器、呼吸 (Respiration)傳感器以及肌肉電反應 (Electromyography)傳感器接受生理信號,對輸入信號進行低通濾波,減弱交流電等外界電磁場對信號的干擾。然后使用平滑濾波器,對低通濾波后的信號進行平滑濾波,過濾由于學生的輕微肢體運動所可能引入的高斯隨機噪聲。本實驗傳感器的采樣頻率均為256Hz,所選用的低通濾波器是巴特沃斯 (Butterworth)濾波器,對皮膚電導、血容量搏動以及呼吸信號設計截止頻率為50Hz,增益為1的巴特沃斯濾波器,對肌肉電反應信號設計截止頻率為100Hz,增益為1的巴特沃斯濾波器。所選用的平滑濾波器是均值平滑濾波器,其窗口范圍為 [-32,32],具體計算方法為

在實驗者處于合適的坐姿后,播放藍色多瑙河使學生處于平靜放松狀態,對其生理信號進行采集。經過40s持續采集后對其記錄的生理信號數據進行濾波處理,并保存作為當前實驗的生理信號基準。
將25s設置為固定的時間窗口寬度,以更好的實現情緒的差異化產生更好的數據訓練效果,并按固定寬度的時間窗口25s將生理信號分段。每段生理信號都作為用于情感分類的一組信號片段。
生理信號特征提取包括了時域生理信號特征提取和頻域生理信號特征提取兩個方面。
2.4.1 時域生理信號提取
時域生理信號特征提取,也就是計算生理信號特征的統計量,按照傳感器劃分,包括如下特征:皮膚電導 (皮膚電導去偏置后標準差、皮膚電導去偏置后均值);肌肉電反應 (肌肉電反應去偏置后標準差、肌肉電反應去偏置后幅度);血容量搏動 (血容量搏動去偏置后標準差、血容量搏動去中值后標準差);呼吸 (呼吸去偏置后幅度)。去偏置后均值,為當前信號片段的均值與已知的相應生理信號基準信號的均值之差。去偏置后均值計算公式為

其中μsignal和μbias的計算公式為

式中:N——信號片段中信號采樣數,M——已知基準信號的信號采樣數,x——信號片段中的采樣信號值,y——基準信號中的采樣信號值。去偏置后標準差,為當前信號片段的標準差與已知的相應生理信號基準信號的標準差之差。去偏置后標準差具體計算公式為

去偏置后幅度,為當前信號片段的幅度與已知的相應生理信號基準信號的幅度之差。去偏置后幅度具體計算公式為

其中,Ampsignal=max({xi})-min({xi}),Ampsignal=max({yi})-min({yi})。
2.4.2 頻域生理信號提取
頻域生理信號特征提取,也就是將生理信號通過快速傅里葉變換至頻域后,得到的一些特征,按照傳感器劃分,包括如下特征:血容量搏動 (心率、心率變異性 (heart rate variability))的高頻能量、心率變異性高頻能量與低頻能量比);呼吸 (呼吸頻率)。
生理信號特征編碼。采用連續的受限波爾茲曼機算法對2.4節得到的生理信號特征進行訓練,得到生理信號特征編碼與生理信號特征的生成模型,該生成模型能夠根據輸入的生理信號特征,采樣得到一組相應的生理信號特征編碼。由前述知,連續的受限波爾茲曼機隱層節點的狀態為

式中:Νj(0,1)——以0為均值,1——方差的高斯分布,,可見層節點的狀態為:vi=i(∑iwijhj+σ·Νi(0,1))。
本例取51個隱層節點,1個偏置節點,50個生理信號編碼節點。11個可見層節點,1個偏置節點,10個生理信號特征輸入節點。隱層單元和可見層的值域均為 (0,1),故選取θL和θH分別為0和1??梢妼雍碗[層的偏置節點的狀態始終為1。固定高斯噪聲的方差為0.2。將可見層的噪聲控制變量aj固定,每個節點均為0.01;隱層的aj初始化時設置為 [0,0.01]間的隨機小數,后通過訓練算法進行不斷調整。在使用連續的受限波爾茲曼機訓練時,隨著時間的增加,會出現逐漸趨于平衡狀態的現象。為了在訓練初期得到較大的梯度下降以加快訓練速度,可初始較高的學習速率并設置逐漸衰減,這樣在訓練后期能夠以較小的訓練速度保證學習算法的穩定性。故在本例中,取學習速率rw初始值為0.5,線性遞減系數為0.3,計算式如下

式中:t——本次訓練周期,為完成所有訓練數據的一次訓練過程時間。MaxTrainingEpoch為最大的訓練周期,本例定義為5000。取學習速率ra初始值為0.2,線性遞減系數為0.1,計算式如下

為了令可見層的值域為 (0,1),在本實施例中,需要通過歸一化因子對生理信號特征進行歸一化處理,具體計算方法為,在訓練數據上,計算各生理信號特征的最大和最小值,然后按照如下公式進行特征變換

將miny和maxy保存在模型中,在模型訓練完后用如上變換公式對給定的新特征進行特征變換,保證數據空間的一致性。為了提高訓練速度,本例中的訓練算法采用以100個訓練實例為一個訓練最小單位,求得100個訓練實例的平均梯度,來對模型參數進行修正,提高梯度估計的準確度同時也提高運算速度。
支持向量機[11]訓練。經過2.5節得到生理信號特征編碼后,對該編碼進行情感類別標注得到標注后的訓練數據。通過交叉驗證和搜索算法,利用標注后的訓練數據訓練支持向量機模型,從而得到一組支持向量結果,以及與其對應的權值向量和一組最優超參數[10]。
2.6.1 支持向量機
支持向量機,一種可用于模式分類的方法。二分類支持向量機能夠解決二類分類問題,其核心思想為求解如下最優化問題:使最大化LD其對偶問題為最大化Lp


受限于
式中:K(*)——核函數。這是一個二次優化問題,有唯一解。解值不為0的α所對應的x稱為支持向量,α本身則為權值向量。本實施例中選取的核函數為徑向基函數(RBF),其表達式為

式中:σ——一超參數,可以通過網格搜索和交叉驗證方法搜索其最優解。
2.6.2 二分類支持向量機
二分類支持向量機可以通過One-VS-One的方法構建多分類支持向量機。對于一個N分類問題,一共可以構建N* (N-1)/2個二分類支持向量機,針對每兩個類別的數據都能夠訓練一個相應的二分類支持向量機。相對的,對于某個給定的輸入,分別輸入這N* (N-1)/2個二分類支持向量機中,通過所有的二分類支持向量機投票決定最終的分類。
支持向量機分類。使用訓練得到的支持向量機模型,將情感特征編碼輸入訓練得到的支持向量機中,通過多類支持向量機的計算,通過One-VS-One方法,利用二分類支持向量機構建的多分類支持向量機,得到情感分類輸出。二分類支持向量機的判決函數為

根據最終判決函數的符號,可以實現對數據進行分類。最后,通過所有二分類支持向量機的結果進行投票決定最終分類輸出。
依上述算法,實驗時學生佩戴用于采集生理信號的傳感器設備并采集學生當前的生理信號作為基準信號。在學生上課時通過記錄學生的生理信號,按照預先劃分好的時間片段,分別計算該時間片段內學生生理信號的時域和頻域的生理信號特征值,得到該時間片段內該學生的生理信號特征向量。將該特征向量輸入已經訓練完畢的連續的受限波爾茲曼機中,通過計算連續的受限波爾茲曼機的隱層狀態,得到一組特征編碼,該編碼能夠表示當前學生生理信號特征。最后將該編碼輸入預先訓練好的支持向量機中,從而得到輸出為學生當前情感類別。為了測試上述算法的系統性能,本例設計了兩組實驗。第一組實驗用于測試系統在單個個體上的分類準確率。實驗以單個學生為實驗對象,記錄學生在不同時間段的不同環境中產生的不同情感狀態下學習時的生理信號以及相對應的學生情感信息。在實驗中做了二分類問題,將所標記的情感分成兩類:“注意力集中”和 “注意力不集中”。對一名學生共進行10次實驗。每次實驗過程為:①令學生保持坐姿處于平靜狀態后,以生理信號感知器采集其生理信號1分鐘,并將這1分鐘內所采集到的生理數據保存為 “基準信號”。②在屏幕中以黑色為背景播放一個隨機運動的紅色小球,令學生保持之前相同的坐姿并注視該運動的小球,同時適用傳感器采集其生理信號,持續6分鐘,將這段時間內采集到的生理數據標記為 “注意力集中”。③令學生保持同樣坐姿,閉上眼睛休息持續6分鐘并用傳感器采集其生理信號,將這段時間內采集到的生理數據標記為 “注意力不集中”。每次實驗可以得到訓練樣本24組,總計10次實驗得到240組訓練樣本。在進行這240組樣本的訓練時,采用上述設計的算法分類效果出色,達到了95.8%的交叉驗證準確率。第二組實驗的設計目的是為了測試系統以及設計的算法在不同實驗個體上的泛化能力。在第二組實驗中選取20名年齡段在22-32歲之間不同性別、不同年齡的普通人作為實驗對象。其中男性女性數目相等各10名以充分考慮實驗時情感變化的性別因素并保證實驗結果對不同性別的普適性。同時為了保證完成實驗的獨立性,每一名實驗對象只會參加一次實驗。與第一組實驗相比,除了 “注意力集中”和“注意力不集中”兩種關心的情感外,在第二組實驗中添加了另外一種稱為 “中性”的狀態。第二組實驗的數據標記由學生自我評價完成,當學生自身無法確認自己是否注意力集中,不能在之前的 “注意力集中”和 “注意力不集中”兩種情感狀態里選擇時,則標記自己的情感狀態為 “中性”。為使學生在學習過程中能夠對其注意力情感進行及時標記,設計完成了一個用于情感自我匯報的界面。該提示界面會從課程開始3分鐘后,并以5分鐘為間隔彈出提示窗口,要求學生從3種情感狀態中選擇其當前的注意力狀態:“注意力集中”、 “注意力不集中”和 “中性”。此外,為了充分調動學習過程中學生的不同情感,使實驗對象在不同內容的測試中情感差異更加明顯,本次實驗專門設計了一段長度為40分鐘以英語學習為主要內容的課程。其中為了引導學生在學習過程中產生不同的注意力情感,對課程的內容進行了刻意的劃并分為4個場景。第一個場景設計為激發學生 “注意力集中”的情感,內容是老師以講述一段有趣的英語笑話的方式來指導學生進行英語詞匯的學習;第二個場景設計為激發學生 “中性”或者 “注意力不集中”情感,內容為老師采用傳統教學方式進行英語語法講解;第三個場景設計為激發學生 “注意力不集中”或者“中性”的情感,內容為老師采用傳統教學方式進行英語習題講解;第四個場景設計為激發學生 “注意力集中”或者“中性”的情感,內容為老師講解英語考試技巧。每個場景持續時間為10分鐘。在課程學習之前,為了使學生處于平和安靜狀態,會播放5分鐘長度的舒緩的音樂并記錄其生理信號數據,并將這段時間的數據作為學生生理信號的基準信號。以25s為時間窗口對數據完成分段后,共得到4800組已標記3種注意力情感之一情感類別的生理數據。在對數據進行訓練測試時,選擇20%的數據作為測試數據集,另外80%的數據作為訓練數據集。本實驗設計的基于波爾茲曼機網絡編碼與支持向量機結合的算法取得了較好的實驗效果。結果如表1所示。
在生理信號情感識別中,大量數據集之間生理信號特征呈現出的迥異,會直接影響數據采集訓練分類到最后的實驗結果。實驗過程顯示出面對同樣環境同樣內容不同實驗個體所呈現出的生理信號反應的巨大差異。與其它幾種方法相比,基于反饋性神經網絡的編碼方法可以有效地消除原數據噪聲,同時能夠利用隱層節點捕捉數據分布的主要特征,減少數據重建時的錯誤率,減小個體特征之間的差異性,實驗結果顯示了結合BM網絡編碼的向量機分類在進行生理信號情感識別中取得了較好的效果。

表1 不同分類器的分類效果比較
[1]Picard R W.Affective computing [M].LUO Senlin,transl.Beijing:Beijing Institute of Technology Press,2005:129-142(in Chinese).[Picard R W.情感計算 [M].羅森林,譯.北京:北京理工大學大學出版社,2005:129-142.]
[2]LU C,ZHOU J,SHEN L,et al.Techniques for enhancing pervasive learning in standard natural classroom [C].Hybrid Learning and Education-First International Conference,2008:202-212.
[3]Johannes Wagner,Jonghwa Kim,Elisabeth Ander.From physiological signals to emotions:Implementing and selected method for feature extraction and classification [C].IEEE International Conference on Multimedia and Expo,2005:940-943.
[4]Heraz A,Razaki R,Frasson C.Using machine learning to predict learner emotional state from brainwaves[C].Seventh IEEE International Conference on Advanced Learning Technologies,2008.
[5]Burleson W.Affective learning companions:Strategies for empathetic agents with real-time multimodal affective sensing for foster meta-cognitive and meta-affective approaches to leaning,motivation and perseverance[D].MIT PhD Thesis,2006
[6]Picard R W.Future affective technology for autism and emotion communication [J].Philosophical Transactions of the Royal Society BBiological Sciences,2009,364 (1535):3575-3584.
[7]Hinton G E,Salakhudinov R R.Reducing the dimensionality of data with neutral networks [J].Scinence,2006,313(5786):504-507.
[8]Paiva A,Prada R,Picard R W.Affective computing and intelligent interaction [C].Proceedings Second International Conference,2007.
[9]Tieleman T.Training restricted Boltzmann machines using approximations to the likelihood gradient[C].Proceedings of the 25th International Conference on Machine Learning,2008:1064-1071.
[10]Memisevic R,Hinton G E.Learning to represent spatial transformations with factored higher-order Boltzmann machines [J]. Neural Computation,2010,22 (6):1473-1492.
[11]Larochelle H,Erhan D,Courville A,et al.An empirical evaluation of deep architectures on problems with many factors of variation [C].Proceedings of the 24th International Conference on Machine Learning,2007:2797.
[12]Memisevic R,Hinton G.Unsupervised learning of image transformations [C].Proceedings of IEEE Conference on Computer Vision and Pattern Recognition,2007:2794.
[13] HUANG G B,Learned-Miller E.Learning class-specific image transformations with higher-order Boltzmann machines[C].Workshop on Structured Models in Computer Vision at IEEE CVPR,2010.
[14]Ranzato M,Hinton G.Modeling pixel means and covariances using factorized third-order Boltzmann machines [C].Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,2010.
[15]DUAN Kaibo,Sathiya Keerthi S.Which is the best multiclass SVM method?An empirical study [C].Proceedings of the Sixth International Workshop on Multiple Classifier Systems,2007.