李永康,方安成,陳婭南,謝子奇,潘帆,何培宇
(四川大學(xué) 電子信息學(xué)院,成都 610065)
情緒可以理解為人對周邊環(huán)境所產(chǎn)生的生理反應(yīng)[1]。積極的情緒對人的生理、心理以及社會活動等方面有著重要作用,比如愉悅感可以提升免疫系統(tǒng)的功能,而負面情緒則會影響身心健康[2]。對情緒的有效識別能讓人及時了解自身情緒狀態(tài)并做出調(diào)整,以減少不良情緒帶來的影響。同時,有效的情緒識別對生理、心理等相關(guān)疾病的治療也具有一定預(yù)防和促進作用。比如在耳鳴治療中,正確識別患者情緒可以加快治療進程[3]。因此,快速有效地識別人類情緒狀態(tài)具有重要的研究意義。情緒可以通過非生理信號或生理信號進行識別。基于非生理信號的識別即通過人的外在行為表現(xiàn),如語言、動作來實現(xiàn)[4],但這些外在行為表現(xiàn)可被刻意偽裝,不易反應(yīng)真實的情感狀態(tài),增加了情緒識別難度[5]。而人體的心電信號等不可見的內(nèi)在生理信號無法進行偽裝[6],能客觀地反應(yīng)人的情緒狀態(tài)。因此,基于生理信號進行情緒識別的方式開始獲得大量關(guān)注[7]。
當(dāng)前,針對心電信號的情緒識別方法多種多樣。從特征提取角度主要可分為:基于個人經(jīng)驗的特征提取和基于深度學(xué)習(xí)的特征提取兩種方法。其中,基于個人經(jīng)驗的特征提取方法是研究者根據(jù)自身知識和經(jīng)驗,通過設(shè)定特定算法或規(guī)則提取信號特征,利用支持向量機、K近鄰等方法對提取的特征進行分類。如易慧等[8]提取了心電信號的9個時域特征和7個頻域特征,采用支持向量機進行情緒分類,對不同情緒的識別精度達到了60%~75%。Sun等[9]采用離散余弦變換從心電信號中提取特征,采用支持向量機進行分類,分類準(zhǔn)確率達到了90%。Sepúlveda等[10]采用小波散射算法處理心電信號,提取了時域特征、頻域特征和小波散射特征,采用Ensemble和KNN分類器進行分類,喚醒度和效價的二分類準(zhǔn)確率為88.8%和90.2%。朱毅[11]提取了心電信號的心率變異性、離散小波分解和心拍形態(tài)三個維度的情緒特征,并利用XGBoost算法進行分類,喚醒度和效價二分類結(jié)果為84.8%和84.1%。
上述方法均需基于個人經(jīng)驗來設(shè)計和選擇分類特征,選取特征的質(zhì)量會直接影響識別的準(zhǔn)確度和泛化性能。相較之下,基于深度學(xué)習(xí)的特征提取方法可通過神經(jīng)網(wǎng)絡(luò)自動學(xué)習(xí)深層特征[12],準(zhǔn)確率較高,且擁有優(yōu)秀的自適應(yīng)能力,能在未知數(shù)據(jù)上進行泛化。因此,越來越多的深度學(xué)習(xí)方法被用于情緒識別任務(wù)。Sarkar等[13]提出了基于自監(jiān)督學(xué)習(xí)的心電信號情緒識別模型,該模型由信號轉(zhuǎn)換識別網(wǎng)絡(luò)和情感識別網(wǎng)絡(luò)組成,喚醒度和效價的準(zhǔn)確率為85.8%和84%。Vazquez-Rodriguez等[14]采用能結(jié)合上下文信息的Transformer模型進行情緒識別,利用心電信號識別,喚醒度和效價的二分類準(zhǔn)確率為88%和83%。Harper等[15]提出了基于貝葉斯深度學(xué)習(xí)的情緒預(yù)測模型,高價態(tài)和低價態(tài)進行二分類的準(zhǔn)確率為90%。Nita等[16]設(shè)計了基于數(shù)據(jù)增強的7層CNN分類器用于情緒識別,效價、喚醒度和優(yōu)勢度的準(zhǔn)確率分別為95.16%、85.56%和77.54%。
上述深度學(xué)習(xí)方法均直接將心電信號送入卷積神經(jīng)網(wǎng)絡(luò)提取特征。而卷積神經(jīng)網(wǎng)絡(luò)最初提出的目的是處理圖像數(shù)據(jù),其在提取圖像特征和分類準(zhǔn)確性方面表現(xiàn)出色[17]。研究表明,以圖像數(shù)據(jù)表示一維時序數(shù)據(jù)在一些深度學(xué)習(xí)任務(wù)上具有更好的效果[18-19]。同時,對于一維心電信號,將其轉(zhuǎn)化為圖像,可更好地利用時序信息和對噪聲的魯棒性,能擁有更豐富的特征信息。時頻圖不僅能通過不同的顏色或灰度來表現(xiàn),還能利用各種先進的圖像分類網(wǎng)絡(luò)和圖像預(yù)處理技術(shù),從而提高數(shù)據(jù)的表示能力和豐富度。由于心電信號的時域和頻域都含有可用于情緒識別的特征[20],所以,可將一維心電信號轉(zhuǎn)為時域波形圖和時頻圖,用于識別。另外,將時域波形圖和時頻圖中的特征進行融合,可以提高分類準(zhǔn)確率。一種方法是將兩種圖片拼接為一種圖片送入卷積神經(jīng)網(wǎng)絡(luò)實現(xiàn)特征融合,另一種是采用雙輸入神經(jīng)網(wǎng)絡(luò),每個輸入單獨提取圖片的特征,再將特征拼接實現(xiàn)特征融合。
為避免基于個人經(jīng)驗設(shè)計和選擇分類特征的局限性,拓展深度學(xué)習(xí)自動提取特征的維度,本研究提出了一種基于心電信號圖像特征及卷積神經(jīng)網(wǎng)絡(luò)的情緒識別方法。首先,利用小波變換和帶阻濾波器對心電信號進行預(yù)處理,旨在去除各種干擾和噪聲成分,提取有效的生理特征。然后將一維信號轉(zhuǎn)為時域波形圖和時頻圖,捕捉信號中的時間和頻率特征。最后,利用遷移學(xué)習(xí)和雙輸入卷積神經(jīng)網(wǎng)絡(luò)提取圖像特征并進行分類。
心電信號在采集過程中易受到各種噪聲的干擾。在利用心電信號進行情緒分類前,需要對其進行相應(yīng)的去噪。正常人的心電信號頻率通常為0.05~100 Hz,常見的干擾主要是工頻干擾、基線漂移和肌電干擾等[21]。其中,工頻干擾由設(shè)備周圍環(huán)境的交流電引起,其頻率固定為50或60 Hz;肌電干擾是一種高頻干擾,由貼片電極受到肌肉刺激引起,其頻率為5~2 000 Hz;基線漂移是采集心電信號時,人體的呼吸運動所造成的微弱低頻干擾,其噪聲頻率通常在0.05~2 Hz之間。根據(jù)上述噪聲的頻率特點,本研究采用固定頻率的帶阻濾波器去除工頻干擾,采用小波變換對心電信號進行分解和重構(gòu),去除基線漂移和高頻干擾。對于時域信號x(t)的小波變換定義為:
(1)
其中,a為尺度因子,b為位移因子,Ψ(t)是小波基。
本研究利用bior2.6小波基函數(shù)對心電信號進行多尺度分解,得到每一層的低頻近似分量和高頻細節(jié)分量,然后將基線漂移和高頻干擾所對應(yīng)的頻率分量置零,最后重構(gòu)得到濾波后的信號。
通過上述預(yù)處理得到較為純凈的心電信號后,本研究將其轉(zhuǎn)為時域波形圖和時頻圖,利用卷積神經(jīng)網(wǎng)絡(luò)提取圖像特征,并進行情緒分類。其中,時域波形圖以時間為橫軸,心電信號幅值為縱軸,用連續(xù)的曲線表示心電信號在時間上的變化。圖1為濾波前后的心電信號時域波形,可見心電信號的低頻噪聲和高頻噪聲均被有效濾除。因為心電信號是非平穩(wěn)信號,所以,本研究利用短時傅里葉變換得到描述心電信號時頻特性的時頻圖。時頻圖以時間為橫軸,頻率為縱軸,用顏色或灰度表示對應(yīng)的幅值。短時傅里葉變換將心電信號切分為若干個短時段,在各短時段內(nèi)加窗函數(shù)并進行傅里葉變換,得到該時段的頻域信息,然后將所有時段的頻域信息進行疊加,可得到整個心電信號的頻域信息,即時頻圖。本研究采用漢明窗,窗的長度為1 s,得到的時頻圖見圖2。
圖1 濾波前后的心電信號時域波形對比圖
圖2 濾波后的心電信號時頻圖
時域波形圖反應(yīng)信號在時間上的變化信息,時頻圖則結(jié)合了時間和頻率信息,兩種圖像均含有可用于情緒分類的特征,因此本研究利用雙輸入卷積神經(jīng)網(wǎng)絡(luò),同時訓(xùn)練這兩種圖像,融合其關(guān)鍵特征,提高情緒分類準(zhǔn)確率。
計算機進行情緒識別依賴于心理學(xué)中離散情緒模型和連續(xù)情緒模型。其中,離散情緒模型將情緒分為多個基本情緒,如Ekman[22]定義了人類的6種基本情緒:快樂、恐懼、憤怒、悲傷、厭惡和驚訝,而其它情緒則是從這些基本情緒中組合形成,如失望可以由悲傷和驚訝組成。連續(xù)情緒模型又稱情緒維度模型,該模型認為情緒都包含在多維空間中,如Mehrabian[23]認為情緒可以用效價(valence)、喚醒度(arousal)、優(yōu)勢度(dominance)三個維度進行表示,效價指的是情緒積極或消極的程度,喚醒指的是情緒平靜或興奮的程度,優(yōu)勢度是指人在某種情緒中的控制能力。不同的情緒可在三維情緒空間中區(qū)分開,圖3中的高興可認為是一種高效價、高喚醒度和高優(yōu)勢度的情緒;憤怒可認為是低效價、高喚醒度和高優(yōu)勢度的情緒;冷漠則可認為是一種低效價、低喚醒度和中間優(yōu)勢度的情緒。本研究所采用的模型是連續(xù)情感模型。
圖3 三維情緒空間模型
本研究使用的卷積神經(jīng)網(wǎng)絡(luò)為EfficientNetV2[24],該模型是Google團隊對EfficientNetV1模型的升級版本。相較于EfficientNetV1,EfficientNetV2降低了網(wǎng)絡(luò)參數(shù)量,減少了訓(xùn)練耗時,提升了網(wǎng)絡(luò)性能。EfficientNetV2的主要網(wǎng)絡(luò)結(jié)構(gòu)有EfficientNetV2-s、EfficientNetV2-l和EfficientNetV2-m,其主要區(qū)別是輸入圖像的尺寸和網(wǎng)絡(luò)的層數(shù)不同。考慮到計算機性能和訓(xùn)練速度,本研究采用輸入圖片尺寸較小的EfficientNetV2-s模型,其網(wǎng)絡(luò)結(jié)構(gòu)見圖4。該模型結(jié)構(gòu)由輸入、Conv 3*3、block、Conv1*1&Pooling&FC、輸出5個主要模塊組成。其中,Conv 3*3模塊利用3*3卷積提取圖像的低層特征,block模塊是該網(wǎng)絡(luò)的核心模塊,由多個Fused-MBConv和MBConv組成,用來提取深層特征,Conv 1*1&Pooling&FC模塊通過卷積、池化和全連接得到情緒分類器。
圖4 EfficientNetV2-s網(wǎng)絡(luò)結(jié)構(gòu)
為融合時域波形圖和時頻圖特征,本研究基于Fu等[25]提出的雙分支DenseNet網(wǎng)絡(luò),提出了一種雙輸入的EfficientNetV2網(wǎng)絡(luò),網(wǎng)絡(luò)結(jié)構(gòu)見圖5,該網(wǎng)絡(luò)使用時域波形圖和時頻圖作為輸入,每個輸入都由Conv 3*3和block分別提取特征,然后將提取的特征送入Conv 1*1&Pooling&FC,得到輸出。因為提取的是雙輸入特征,所以將Conv 1*1&Pooling&FC的輸入通道數(shù)改為單輸入模型的兩倍。
圖5 雙輸入EfficientNetV2-s網(wǎng)絡(luò)結(jié)構(gòu)
大多數(shù)深度學(xué)習(xí)方法聚焦于如何改進網(wǎng)絡(luò)結(jié)構(gòu),而遷移學(xué)習(xí)是在已有網(wǎng)絡(luò)結(jié)構(gòu)的基礎(chǔ)上,研究各領(lǐng)域之間遷移的效果。即遷移學(xué)習(xí)是將已有模型的參數(shù)和權(quán)重應(yīng)用到相似任務(wù)中,可避免重新訓(xùn)練一個全新的神經(jīng)網(wǎng)絡(luò)模型。因為可以借助其它領(lǐng)域豐富的數(shù)據(jù)進行訓(xùn)練,遷移學(xué)習(xí)可在目標(biāo)領(lǐng)域數(shù)據(jù)較少的情況下獲得良好的性能,因此,采用遷移學(xué)習(xí)不僅可以減少參數(shù)訓(xùn)練時間,也能提高模型的泛化能力,其過程可表示為:
D={χ,P(X)}
(2)
T={y,f·}
(3)
其中,D為源域,T為目標(biāo)域,χ是特征空間,y是標(biāo)簽空間,P(X)表示邊際概率分布,其中X={x1,…,xn}∈χ,目標(biāo)的預(yù)測函數(shù)為f(·)。本研究將EfficientNetV2卷積神經(jīng)網(wǎng)絡(luò)在ImageNet數(shù)據(jù)集中的預(yù)訓(xùn)練參數(shù)遷移為本模型的初始參數(shù),然后利用Amigos數(shù)據(jù)集對模型進一步訓(xùn)練。
本研究使用Amigos公開數(shù)據(jù)集[26]。該數(shù)據(jù)集主要用于情感識別和計算,通過播放視頻刺激受試者情緒,包含短視頻和長視頻情緒刺激兩個實驗。短視頻情緒刺激實驗中,40名受試者單獨觀看了16個短視頻;長視頻情緒刺激實驗中,受試者單獨或組隊觀看了4個長視頻。實驗過程中,利用攝像頭錄制受試者的面部表情變化;利用可穿戴式傳感器記錄受試者的腦電圖、心電圖和皮膚電三種生理信號。其中,心電信號的采樣頻率為256 Hz,有LA和RA兩個通道的信號。數(shù)據(jù)集的情緒標(biāo)簽有自我評估(包括效價、喚醒度、優(yōu)勢度、喜歡性、熟悉性等7種基本情緒)和外部專家評估(效價和喚醒度)兩類。
本研究的訓(xùn)練和測試數(shù)據(jù)是短視頻刺激實驗中采集的心電信號,由于9號受試者的實驗數(shù)據(jù)不完整,故將其舍棄,最后得到1 248份實驗數(shù)據(jù)。此外,由于16個短視頻的長度大小不一,本研究統(tǒng)一截取每個短視頻中間50 s的心電信號作為訓(xùn)練和測試數(shù)據(jù)。訓(xùn)練標(biāo)簽采用自我評估中的效價、喚醒度和優(yōu)勢度三種情緒維度標(biāo)簽,但是這三種標(biāo)簽都是1到9的連續(xù)標(biāo)簽,不利于情緒分類,因此,本研究采用二分類方式,以中間評分5為界限,大于5的為高效價、高喚醒度、高優(yōu)勢度;小于5的為低效價、低喚醒度和低優(yōu)勢度;得分為5的標(biāo)簽直接舍棄,具體數(shù)量見表1。
表1 各標(biāo)簽二分類后的數(shù)量
本研究模型基于python語言和PyTorch 1.10框架實現(xiàn),操作系統(tǒng)為Windows 10,硬件配置為AMD Ryzen 7 5800 8-Core Processor 3.40 GHz和GeForce RTX 3060。首先,對Amigos數(shù)據(jù)集中的心電信號進行預(yù)處理,去除噪聲和干擾成分。同時,針對Amigos數(shù)據(jù)集中1~9的連續(xù)標(biāo)簽,按照中間值5進行劃分,形成兩類標(biāo)簽。然后,將經(jīng)過預(yù)處理的心電信號轉(zhuǎn)換為時域波形圖和時頻圖。最后,采用單輸入和雙輸入的卷積神經(jīng)網(wǎng)絡(luò)對圖像進行二分類,得到分類準(zhǔn)確率。
根據(jù)2.2的實驗方案,時域波形圖與時頻圖單輸入和雙輸入模型的分類結(jié)果見表2。同時,圖6為雙輸入模型在三個情緒維度的混淆矩陣。
表2 分類準(zhǔn)確率
圖6 混淆矩陣
由表2可知,三種模型在三個情緒標(biāo)簽上均取得90%以上的分類正確率,表明基于心電信號圖像特征的情緒識別方法有效。同時,雙輸入模型在喚醒度、效價和優(yōu)勢度三個方面的準(zhǔn)確率均高于兩種單輸入模型。尤其在優(yōu)勢度和效價方面,準(zhǔn)確率提升了1%以上。
從實驗結(jié)果可知,在喚醒度上,單輸入模型對評分接近5的數(shù)據(jù)識別效果較差,多個喚醒度為6~7之間的高喚醒度數(shù)據(jù)被錯誤地識別為低喚醒度。若兩種單輸入模型中一種識別錯誤,另一種識別正確,雙輸入模型也可以正確識別。對于單輸入模型在時域波形圖上,第34個志愿者觀看ID為34的視頻的喚醒度為6.18,判定為高喚醒度,但識別結(jié)果為低喚醒度,而在時頻圖上,該志愿者被正確識別為高喚醒度;在雙輸入模型中,也被正確識別為高喚醒度。但是,若兩種單輸入模型都識別錯誤,那么雙輸入模型識別結(jié)果也是錯誤的,比如數(shù)據(jù)集中第25個志愿者觀看ID為58的視頻的喚醒度是2.98,低于5為低喚醒度,單輸入模型和雙輸入模型都錯誤的識別為高喚醒度。對于效價和優(yōu)勢度兩個情緒維度也有類似的規(guī)律??偟膩碚f,時域波形圖包含了信號幅值隨時間演化的特征,時頻圖則包含了時間和頻率信息結(jié)合的特征,采用雙輸入模型可融合兩者特征,減輕單一圖像類型所帶來的信息不完整性,更有效地捕捉相關(guān)的情緒特征,提高分類的準(zhǔn)確率。
為驗證本研究方法的有效性,將其與其它利用Amigos數(shù)據(jù)集進行情緒二分類實驗的結(jié)果進行對比,結(jié)果見表3。Sepúlveda等[10]采用Ensemble分類器進行分類,在Amigos上喚醒度和效價的二分類正確率分別為88.8%和90.2%;Sarkar等[13]將Amigos的心電信號劃分為10 s的片段進行情緒識別,喚醒度和效價的二分類準(zhǔn)確率分別為85.8%和84%;Vazquez-Rodriguez等[14]利用Transformer模型,在Amigos數(shù)據(jù)集上喚醒度和效價的二分類準(zhǔn)確率分別為88%和83%。Harper等[15]對Amigos數(shù)據(jù)集中自我評價里的效價進行二分類,準(zhǔn)確率為90%。由表3可知,本研究提出的基于心電信號圖像特征和卷積神經(jīng)網(wǎng)絡(luò)的情緒識別方法在喚醒度和效價的分類準(zhǔn)確率方面均優(yōu)于其它幾種方法。表明本研究方法在Amigos數(shù)據(jù)集上的情緒識別效果更好。
表3 不同方法識別準(zhǔn)確率對比
本研究提出的基于心電信號圖像特征及卷積神經(jīng)網(wǎng)絡(luò)的情緒識別方法。首先,對心電信號進行預(yù)處理,去除噪聲和干擾成分。隨后,將心電信號的時域和頻域轉(zhuǎn)換為時域波形圖和時頻圖。最后,采用遷移學(xué)習(xí)和雙輸入的卷積神經(jīng)網(wǎng)絡(luò)作為特征提取器和情緒分類器,綜合利用時域波形圖和時頻圖的特征進行分類識別。通過對比實驗,驗證了單輸入模型和雙輸入模型的識別準(zhǔn)確率。結(jié)果顯示,雙輸入模型的識別準(zhǔn)確率明顯優(yōu)于單輸入模型,證明了本研究方法的可行性和有效性。此外,本研究還將所提方法與其它情緒識別方法在Amigos數(shù)據(jù)集上進行了對比。結(jié)果表明,本研究在情緒識別方面取得了更高的準(zhǔn)確率。