王蘭馨,王衛(wèi)亞,程 鑫
長安大學(xué) 信息工程學(xué)院,西安710064
語音所表達(dá)的情感由語義信息和聲學(xué)特征信息[1]確定。如圖1 所示,語義信息即說話者要表達(dá)的內(nèi)容,聲學(xué)特征則是說話者表達(dá)語義信息時(shí),由發(fā)音系統(tǒng)產(chǎn)生的物理變化。
圖1 語音信號傳遞的不同層面信息Fig.1 Speech conveys different levels information
單一模式中包含的情感信息有限。由于技術(shù)受限,語音情感識別任務(wù)前期研究主要利用聲學(xué)特征來構(gòu)建情感識別模型[2-5],卻沒有考慮到語音中所包含的具體語義信息,將人語音信號中密切相關(guān)的聲音信息與文本信息內(nèi)容分離并忽略文本信息的重要性[6]。近年來,隨著機(jī)器學(xué)習(xí)算法的發(fā)展,越來越多的學(xué)者考慮到語義信息與聲學(xué)特征內(nèi)在的關(guān)聯(lián)性和互補(bǔ)性,開始將二者結(jié)合用于情感識別的研究中[7-8]。
人在執(zhí)行說話行為時(shí),僅依靠聲學(xué)特征信息來判斷其情感狀態(tài)可能會(huì)存在混淆。陳鵬展等人[9]利用序列浮動(dòng)前向選擇算法(sequential forward selection,SFS),提取了短時(shí)能量、過零率、基頻等74個(gè)語音特征參數(shù)。對文本信息使用高斯混合模型(Gaussian mixture model,GMM)進(jìn)行特征學(xué)習(xí)。對兩個(gè)單模態(tài)識別器的判別結(jié)果進(jìn)行加權(quán)融合,獲得最終識別結(jié)果。實(shí)驗(yàn)證明雙模態(tài)情感識別比單一模態(tài)識別效果更好。胡婷婷等人[10]提取語音數(shù)據(jù)中的聲學(xué)特征,使用卷積神經(jīng)網(wǎng)絡(luò)與支持向量機(jī)(support vector machine,SVM)訓(xùn)練分類器訓(xùn)練模型。在聲學(xué)模型基礎(chǔ)上,加入了文本信息的相關(guān)特征,有效解決了憤怒與開心的誤判情況。
由于深度學(xué)習(xí)算法表現(xiàn)效果優(yōu)秀,當(dāng)前很多的情感識別研究都使用了深度學(xué)習(xí)相關(guān)算法來進(jìn)行模型構(gòu)建,但是仍存在一些問題。大多數(shù)語音文本雙模態(tài)情感識別的研究中,僅使用某一種卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)或循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)結(jié)構(gòu)來進(jìn)行模態(tài)信息特征的提取,沒有充分考慮其上下文信息和局部信息,忽略了模態(tài)數(shù)據(jù)中蘊(yùn)含的與時(shí)間相關(guān)的特征信息,沒有解決有效信息丟失的問題,部分模型中未考慮過模型擬合問題。
本文在語音文本雙模態(tài)情感識別研究優(yōu)勢的基礎(chǔ)上,采用深度神經(jīng)網(wǎng)絡(luò)進(jìn)行特征學(xué)習(xí),搭建Bi-LSTMCNN模型用于文本特征的學(xué)習(xí),使用OpenSmile提取聲學(xué)特征,并在特征層對兩種模態(tài)數(shù)據(jù)進(jìn)行融合,在決策層對分類結(jié)果進(jìn)行融合,采用L2正則化和early stop技術(shù)防止模型的過擬合問題,最終搭建了Bi-LSTM-CNN+CNN 的混合網(wǎng)絡(luò)結(jié)構(gòu),提出一種單一模態(tài)模型與聯(lián)合模態(tài)模型相結(jié)合的語句級雙模態(tài)情感識別模型。
語音文本雙模態(tài)情感識別流程通常如圖2 所示。對語音信號和轉(zhuǎn)錄文本進(jìn)行預(yù)處理,通過機(jī)器學(xué)習(xí)方法對文本、音頻進(jìn)行特征提取和學(xué)習(xí)。將提取后的特征在特征層進(jìn)行融合后送入分類器進(jìn)行分類。另一種常見流程是直接將提取的各模態(tài)特征直接送入分類器,再對分類結(jié)果進(jìn)行決策層融合得出最終情感歸類。
圖2 語音文本雙模態(tài)情感識別框圖Fig.2 Speech-text-bimodal emotion recognition framework
長短時(shí)記憶網(wǎng)絡(luò)(long short-term memory network,LSTM)是一種改進(jìn)的RNN,具有強(qiáng)大的計(jì)算能力和存儲(chǔ)能力,可以有效地解決梯度爆炸或消失的問題。語音是一種非線性時(shí)間序列轉(zhuǎn)換信號,文字信息也與時(shí)間背景密切相關(guān)。因此,LSTM網(wǎng)絡(luò)適用于聲學(xué)和文本特征的提取和學(xué)習(xí)。然而,在LSTM 中沒有非線性隱藏層,這會(huì)導(dǎo)致隱藏狀態(tài)因子的變化增加[11]。
相反,CNN網(wǎng)絡(luò)可以減少輸入頻率的差異,并捕捉局部信息,但不考慮全局特征和背景。簡而言之,CNN和LSTM的建模能力都是有限的[12]。在此基礎(chǔ)上,結(jié)合CNN和LSTM搭建網(wǎng)絡(luò)進(jìn)行語音情感識別,以學(xué)會(huì)對信息的最佳描述。
基于Bi-LSTM-CNN的語音文本雙模態(tài)情感識別模型網(wǎng)絡(luò)如圖3 所示。雙模態(tài)數(shù)據(jù)融合采用了特征層融合和決策層融合兩種方式。特征層融合是在輸入層面的可用特征傳遞給模型之前,先將不同模態(tài)數(shù)據(jù)的信息進(jìn)行串聯(lián),可以更好地利用模態(tài)信息的互補(bǔ)性。而決策級融合是為每個(gè)模態(tài)建立獨(dú)立的模型,模態(tài)間的信息互不影響,最終結(jié)果由獨(dú)立模型共同決定,可以有效地捕捉各模型間的動(dòng)態(tài)變化。
圖3 語音文本雙模態(tài)情感識別模型網(wǎng)絡(luò)搭建Fig.3 Speech-text-bimodal emotion recognition model
在Word2vec[13]提供的Skip-Gram[14]模型訓(xùn)練中,設(shè)詞典大小為V,給定中心詞生成背景詞的條件概率為:
其中,wo,c表示第c個(gè)背景詞;wI表示輸入的中心詞;uc表示索引為c的背景詞向量,vI(vI∈V)表示索引為I的中心詞向量。訓(xùn)練目標(biāo)是,給定一個(gè)中心詞wI,使模型輸出C個(gè)背景詞的概率最大,最大化條件概率為:
定義損失函數(shù):
在維基百科提供的語料數(shù)據(jù)上,根據(jù)損失函數(shù),利用反向傳播,采取隨機(jī)梯度下降策略更新權(quán)重,隨著Skip-Gram模型不斷訓(xùn)練,損失函數(shù)逐漸減小直至穩(wěn)定,此時(shí)的vI即為所求向量,最終得到了維度為300的預(yù)訓(xùn)練詞向量。
長短時(shí)記憶網(wǎng)絡(luò)(LSTM)依靠其三門結(jié)構(gòu),有效地解決了神經(jīng)網(wǎng)絡(luò)中的長期依賴性問題。
門結(jié)構(gòu)如圖4所示,在t時(shí)刻,將當(dāng)前隱層狀態(tài)記為ht,各門狀態(tài)更新如下:
圖4 LSTM“門”結(jié)構(gòu)Fig.4 LSTM“gate”structure
其中,xt表示當(dāng)前輸入單元狀態(tài),ft、Ct、it、ot分別表示當(dāng)前遺忘門、存儲(chǔ)單元、輸入門、輸出門。W*表示權(quán)重矩陣,b*表示偏置項(xiàng),σ是激活函數(shù)。
Bi-LSTM由兩個(gè)單向LSTM組成,一個(gè)是計(jì)算正序上下文信息的正向LSTM,另一個(gè)是計(jì)算逆序上文信息的反向LSTM。通過這種方式,為每個(gè)時(shí)刻單詞提供了完整的上下文狀態(tài)信息。
圖5中,在RCNN[15]結(jié)構(gòu)基礎(chǔ)之上進(jìn)行改進(jìn),利用雙向長短時(shí)記憶網(wǎng)絡(luò)(Bi-LSTM)代替RNN,搭建Bi-LSTM-CNN網(wǎng)絡(luò)結(jié)構(gòu)。
圖5 Bi-LSTM-CNN 網(wǎng)絡(luò)Fig.5 Bi-LSTM-CNN network
使用雙向長短時(shí)記憶網(wǎng)絡(luò)后接一個(gè)卷積層和最大池化層,構(gòu)成的Bi-LSTM-CNN網(wǎng)絡(luò)結(jié)構(gòu),既解決了梯度消失或者梯度爆炸的問題,又能充分考慮當(dāng)前詞的上下文語義,信息得到的文本特征具有全局性,最后輸入全連接層,通過softmax輸出分類結(jié)果。
語音信號的預(yù)處理分為三部分:語音采樣與量化,語音分幀,信號加窗。
通過采樣與量化將語音信號轉(zhuǎn)化為計(jì)算機(jī)可以識別的數(shù)字信號,使用22.05 kHz 的采樣頻率對語音信號進(jìn)行采樣,采樣結(jié)果如圖6所示。
圖6 數(shù)字化語音信號Fig.6 Digital voice signal
語音信號在短時(shí)范圍內(nèi)特征變化較小時(shí)可以認(rèn)為是穩(wěn)態(tài)信號,對語音信號進(jìn)行分幀處理,幀長一般取10~30 ms。語音信號分幀通常需要加窗操作,窗函數(shù)可以減少因?yàn)榻財(cái)鄮淼念l域能量泄漏的影響。一幀語音信號經(jīng)過漢明(Hanmming)窗處理前后的語音信號波形圖變化如圖7所示。漢明窗公式如下所示:
圖7(a) 一幀語音信號加窗前波形圖Fig.7(a) Waveform before speech signal transformation
圖7(b) 一幀語音信號加窗后波形圖Fig.7(b) Waveform after speech signal transformation
使用開源軟件openSMILE[16]工具包對音頻進(jìn)行幀級的低層次聲學(xué)特征(low level descriptors,LLDs)提取,語音特征集配置文件由“IS10_paraling.conf”提供,共1 582個(gè)維度特征。其中包括34個(gè)低級描述符(LLDs),34 個(gè)相應(yīng)的一階delta 系數(shù)和21 個(gè)全局統(tǒng)計(jì)函數(shù),具體參數(shù)如表1所示。
表1 openSMILE配置文件參數(shù)Table 1 openSMILE configuration file parameters
openSMILE工具提取的1 582維語音特征向量reshape為(1,1 582),經(jīng)基于Bi-LSTM-CNN的語音文本雙模態(tài)情感識別模型網(wǎng)絡(luò)中卷積層_2 提取語音特征,與Bi-LSTM網(wǎng)絡(luò)結(jié)構(gòu)提取的文本特征進(jìn)行特征層融合,結(jié)果輸入CNN模型。該模型采用具有卷積層和最大池化層的簡單CNN 作為特征提取器,輸入的數(shù)據(jù)被放在一個(gè)密集層中。經(jīng)過密集層的非線性變化,這些特征之間的關(guān)聯(lián)性被提取并最終映射到輸出空間。引入Dropout機(jī)制,每次迭代放棄部分參數(shù),使訓(xùn)練過程不依賴部分固有特征,防止過擬合。通過約束添加的指標(biāo)L2范數(shù),可以適當(dāng)?shù)馗纳凭W(wǎng)絡(luò)訓(xùn)練過程中出現(xiàn)的過擬合現(xiàn)象。具體計(jì)算公式如下:
其中,w表示模型權(quán)重。
(1)特征級融合
組合文本和語音的特征信息[17],將文本特征提取的輸出和音頻特征提取的輸出進(jìn)行特征級融合。融合結(jié)果作為聯(lián)合CNN模型的輸入U(xiǎn)D,UD的表達(dá)式如式(1)所示:
(2)決策級融合
本文提出的基于文本的Bi-LSTM-CNN模型和聯(lián)合CNN 模型作為獨(dú)立模型,將單個(gè)結(jié)果融合成最終的公共決策。決策級融合不會(huì)影響到各個(gè)模型之間的效果,并且有助于捕捉模型間的動(dòng)態(tài)過程。
對不同模型賦予不同的權(quán)重值。給定語句在加權(quán)平均融合中輸出的得分為:
其中,0 實(shí)驗(yàn)驗(yàn)證的數(shù)據(jù)集選用IEMOCAP[18]數(shù)據(jù)集,數(shù)據(jù)集由5男5女兩兩分組進(jìn)行錄制??紤]到即興型數(shù)據(jù)比表演型數(shù)據(jù)更具有實(shí)用價(jià)值,本文選擇IEMOCAP數(shù)據(jù)集中的即興數(shù)據(jù)作為實(shí)驗(yàn)數(shù)據(jù)集,使用四組數(shù)據(jù)作為訓(xùn)練集,一組作為測試集,對“高興”“悲傷”“生氣”和“中性”四類情感進(jìn)行識別。 模型的評估指標(biāo)采用加權(quán)精確率(weight accuracy,WA)和未加權(quán)精確率(unweight accuracy,UA)。WA是將每條語句賦予相同權(quán)重,直接計(jì)算其正確率,計(jì)算公式如下所示: 其中,N表示情感類別,TPi表示第i類情感分類正確的樣本數(shù),F(xiàn)Pi表示第i類情感分類錯(cuò)誤的樣本數(shù)。 由于數(shù)據(jù)集情感類別的樣本的分布不均衡,僅使用WA評價(jià)指標(biāo)太過單一,樣本數(shù)量較多的類別占據(jù)效果評價(jià)主導(dǎo)地位。因此,提出UA指標(biāo)來綜合平衡各個(gè)情感類別的識別性能,如式(10)(11)所示,先計(jì)算每個(gè)情感類別單獨(dú)的準(zhǔn)確率Acci,再取平均數(shù)得到UA。 基于文本特征的單模態(tài)情感識別模型,本文對比了Bi-LSTM、LSTM+CNN、Bi-LSTM+CNN 三種網(wǎng)絡(luò)的情感識別效果;基于聲學(xué)特征的單模態(tài)情感識別模型,比較了SVM、LSTM、CNN 的情感識別效果,其性能效果如表2所示。SVM核函數(shù)采用徑向基函數(shù)(RBF),損失函數(shù)使用Hinge Loss,其懲罰項(xiàng)為L2正則化函數(shù),誤差項(xiàng)的懲罰因子C設(shè)為1,停止標(biāo)準(zhǔn)為0.000 1。LSTM網(wǎng)絡(luò)主要結(jié)構(gòu)包括LSTM 層、Dropout 層、全連接層,每個(gè)LSTM層有128個(gè)神經(jīng)元節(jié)點(diǎn),Dropout率設(shè)為0.5,激活函數(shù)使用softmax,優(yōu)化器為Adam,損失函數(shù)采用交叉熵。CNN 網(wǎng)絡(luò)由兩層卷積層、池化層、兩個(gè)全連接層、Dropout層及輸出層組成,其中Dropout率設(shè)為0.5,網(wǎng)絡(luò)的學(xué)習(xí)率設(shè)為0.001,中間層的激活函數(shù)為Relu函數(shù),輸出層的激活函數(shù)為softmax。 表2 單模態(tài)情感識別模型結(jié)果比較Table 2 Comparison of single model recognition accuracy results % 本文利用Bi-LSTM-CNN(BLC)網(wǎng)絡(luò)進(jìn)行文本特征學(xué)習(xí),CNN進(jìn)行聲學(xué)特征學(xué)習(xí),采用特征層融合構(gòu)建雙模態(tài)情感識別模型“M-BLCCE”(Bi-LSTM-CNN+CNN+early fusion,無圖3中基于文本的CNN特征提取和決策層融合結(jié)構(gòu));使用決策層融合構(gòu)建雙模態(tài)情感識別模型“M-BLCCL”(Bi-LSTM-CNN+CNN+late fusion,無圖3 中特征層融合結(jié)構(gòu));組合決策層和特征層融合的數(shù)據(jù)融合方式構(gòu)成雙模態(tài)情感模型“M-BLCCEL”(Bi-LSTM-CNN+CNN+early fusion+late fusion)。將“M-BLCCEL”模型中對聲學(xué)特征學(xué)習(xí)的CNN網(wǎng)絡(luò)替換為SVM、LSTM 網(wǎng)絡(luò),得到“M-BLCSEL”“M-BLCLEL”雙模態(tài)情感模型。五種模型的識別結(jié)果如表3所示。 表3 語音文本雙模態(tài)情感識別模型結(jié)果比較Table 3 Comparison of speech-text-bimodal model recognition accuracy results % 從表2 中可以看出,在單模態(tài)模型中,使用不同模型訓(xùn)練得出的識別率相差較大。對基于音頻的情感識別來看,效果最好的是CNN 模型,其WA、UA 分別達(dá)到了52.77%、53.25%。對基于文本的情感識別來看,效果最好的是Bi-LSTM+CNN 模型,其WA、UA 分別達(dá)到了63.72%、63.25%。結(jié)合表2、表3,相比于單模態(tài)模型,混合模型的效果更好,本文所建立的雙模態(tài)情感識別模型最終效果好于任意一種單模態(tài)模型,最終WA為69.51%,UA為70.50%。 Text-Bi-LSTM-CNN、Speech-CNN 和M-BLCCEL模型的混淆矩陣如圖8~圖10 所示。其中,橫軸表示預(yù)測情感類別,縱軸表示真實(shí)情感類別。每一個(gè)彩格表示某情感語句級數(shù)據(jù)被預(yù)測為各類情感的概率,準(zhǔn)確率越高,彩格顏色越深。 圖8 Text-Bi-LSTM-CNN情感識別模型混淆矩陣Fig.8 Text-Bi-LSTM-CNN emotion recognition model confusion matrix 圖9 Speech-CNN情感識別模型混淆矩陣Fig.9 Speech-CNN emotion recognition model confusion matrix 圖10 語音文本雙模態(tài)情感識別模型混淆矩陣Fig.10 Speech-text-bimodal emotion recognition model confusion matrix 如圖8 所示,從Bi-LSTM-CNN 文本情感識別模型的混淆矩陣中得到,將“生氣”“激動(dòng)”“中性”“悲傷”標(biāo)簽語句預(yù)測正確對應(yīng)的概率為0.69、0.65、0.68、0.51。將“悲傷”標(biāo)簽語句預(yù)測為“中性”類別的概率為0.25??梢钥闯鑫谋厩楦凶R別模型對于“生氣”情感的識別率最高,對“興奮”“中性”的識別較高,易將“悲傷”情感識別為“中性”。 從圖9中可以看出,語音情感識別模型得到的結(jié)果與文本情感識別模型正好相反,“生氣”“激動(dòng)”“中性”“悲傷”標(biāo)簽語句預(yù)測正確對應(yīng)的概率為0.43、0.50、0.56、0.64。CNN語音情感識別模型對于“悲傷”情感識別更為準(zhǔn)確,而對于其他情感類別的識別準(zhǔn)確度較低,同時(shí)各類情感之間的混淆情況較為嚴(yán)重。 圖10 為M-BLCCEL 模型的混淆矩陣,可以看出通過對語音、文本兩個(gè)模態(tài)情感特征進(jìn)行融合,提高了大多數(shù)情感類型的識別準(zhǔn)確度,情感之間的混淆也得到了有效降低。根據(jù)圖8~圖10 三張圖的對比,可以發(fā)現(xiàn)文本信息和語音信息之間的特征是互補(bǔ)的,表明了模態(tài)融合的有效性。 本文對IEMOCAP數(shù)據(jù)集中的文本、語音單模態(tài)信息建立了不同的訓(xùn)練網(wǎng)絡(luò)進(jìn)行情感識別分類,從中挑選基于文本的Bi-LSTM-CNN 網(wǎng)絡(luò)和基于語音的CNN 網(wǎng)絡(luò)進(jìn)行雙模態(tài)情感識別模型的搭建,在特征層和決策層對模態(tài)數(shù)據(jù)進(jìn)行融合,利用L2 正則化約束防止網(wǎng)絡(luò)過擬合,最終搭建出效果較好的雙模態(tài)情感識別模型。實(shí)驗(yàn)效果證明,雙模態(tài)情感識別模型的性能要遠(yuǎn)好于任意單模態(tài)情感識別模型。本實(shí)驗(yàn)提出的雙模態(tài)情感識別模型側(cè)重于文本模態(tài)的處理,對于語音模態(tài)特征信息的使用還不夠充分。下一步可以從聲學(xué)特征入手,更加充分地利用語音特征信息,提高雙模態(tài)情感識別模型的準(zhǔn)確率。4.2 實(shí)驗(yàn)結(jié)果與評價(jià)
5 結(jié)束語