董曉斌,王 亮
(沈陽化工大學(xué) 計算機(jī)科學(xué)與技術(shù)學(xué)院,遼寧 沈陽 110020)
隨著時代與互聯(lián)網(wǎng)的快速發(fā)展,越來越多的音樂創(chuàng)作者能夠在網(wǎng)絡(luò)上盡情地展示自己的作品。音樂作為一個信息的載體,其中蘊(yùn)含了豐富的情感信息。由于音樂的組成特性,創(chuàng)作者能夠通過歌詞、旋律、聲調(diào)、海報等形式來傳達(dá)自己想要表達(dá)的情感。傳統(tǒng)的音樂情感識別采用單一的模態(tài)對音樂這種復(fù)雜的作品進(jìn)行情感識別,這樣往往會帶來信息丟失、識別準(zhǔn)確度不高等問題,因此多模態(tài)音樂情感識別逐漸成為學(xué)者們的研究重點。
本文提出一種XLNet-CBGRU 音樂歌詞情感識別模型,首先通過XLNet 模型,充分考慮上下文位置信息,學(xué)習(xí)到文本的動態(tài)特征向量,之后通過雙向GRU 網(wǎng)絡(luò)學(xué)習(xí)文本的深層語義得到音樂歌詞的情感特征。對于音樂音頻使用卷積神經(jīng)網(wǎng)絡(luò)提取局部特征后再作為輸入,輸入到雙向GRU 學(xué)習(xí)音頻的時序信息得到音樂的音頻情感特征。最后利用互注意力機(jī)制對歌詞和音頻特征進(jìn)行加權(quán)融合,最終對音樂的情感類型進(jìn)行預(yù)測。實驗結(jié)果證明,本文所使用的方法在預(yù)測準(zhǔn)確度上有一定的提升。
隨著深度學(xué)習(xí)的不斷發(fā)展,目前音樂音頻情感識別的研究重心以從傳統(tǒng)的機(jī)器學(xué)習(xí)轉(zhuǎn)移到深度學(xué)習(xí)。Li 等人提出了一種基于DBLSTM-ELM 的動態(tài)音樂情感識別模型,該模型將LSTM 與極限學(xué)習(xí)機(jī)相結(jié)合,在DBLSTM 訓(xùn)練出結(jié)果后再由ELM 進(jìn)行融合[1]。鄭艷等人結(jié)合深度學(xué)習(xí)網(wǎng)絡(luò)的特性,提出了一種新的模型CGRU,模型由CNN 與GRU 相結(jié)合,對MFCC 特征進(jìn)行提取后再由隨機(jī)深林進(jìn)行特征的選取,提高了識別的精度[2]。Xie 等人提出了一種基于幀級音頻特征并結(jié)合LSTM 的情感識別方法,用幀級特征代替?zhèn)鹘y(tǒng)的統(tǒng)計特征,并根據(jù)注意力機(jī)制傳統(tǒng)的LSTM 進(jìn)行改進(jìn),最終在模型性能上獲得了提升[3]。王晶晶等人為了提高模型效率,提出了新的網(wǎng)絡(luò)模型LSTM-BLS,該模型將深度學(xué)習(xí)與寬帶學(xué)習(xí)相結(jié)合,利用寬帶學(xué)習(xí)快速處理數(shù)據(jù)能力,將LSTM 當(dāng)作BLS 的特征映射節(jié)點,提高了情感識別的效率[4]。鐘智鵬等人針對LSTM 的效率低下以及長距離依賴問題,提成了一種新的網(wǎng)絡(luò)模型CNN-BiLSTM-SA[5]。
隨著自然語言處理領(lǐng)域的快速發(fā)展,音樂的歌詞情感識別也得到了學(xué)者的重視。吳迪等人針對傳統(tǒng)文本情感識別模型不能根據(jù)上下文信息動態(tài)獲取詞向量問題,提出一種基于ELMo-CNN-BiGRU 的情感識別模型,對ELMo 和Glove 兩種預(yù)訓(xùn)練模型生成的動態(tài)與靜態(tài)詞向量通過堆疊得到輸入向量,再通過CNN 和BiGRU 提取局部特征和全局特征,最終完成情感識別[6]。Liu Ning 等人提出了一種基于BERT 的文本情感識別算法,該算法利用BERT 提取出句子級向量,再結(jié)合CNN 和對抗網(wǎng)絡(luò)完成情感識別[7]。梁淑蓉等人針對BERT 模型上下游任務(wù)不一致的問題,提出一種基于XLNet-LSTM-Att 的文本情感識別模型,該模型首先通過XLNet 生成考慮上下文信息的特征向量,再通過LSTM 進(jìn)一步提取上下文特征,最后結(jié)合注意力機(jī)制完成情感識別[8]。
音樂作為一種人類情感的載體,它是由多個部分共同組成的。一首歌曲的曲調(diào)、歌詞、海報、演唱者的聲調(diào)等都在傳遞著情感信息。多模態(tài)融合主要有早期融合和晚期融合兩大類型。早期融合是在數(shù)據(jù)級和特征級的融合,而晚期融合是在決策級的融合。決策級融合存在忽略了模態(tài)之間的關(guān)聯(lián)性以及不能對不同類別賦予不同權(quán)重的問題。王蘭馨等人提出一種結(jié)合Bi-LSTM-CNN 的雙模態(tài)情感識別模型,該模型包括基于文本的Bi-LSTM-CNN 模型和CNN 模型,并分別驗證了特征級融合和決策級融合的效果[9]。張昱等人提出一種基于雙向掩碼注意力的多模態(tài)情感分析模型BMAM,該模型通過掩碼注意力動態(tài)地調(diào)整不同模態(tài)間的權(quán)重,繼而獲得更準(zhǔn)確的模態(tài)表示[10]。文獻(xiàn)[11]是從不同模態(tài)中提取數(shù)據(jù)并使用數(shù)據(jù)級的融合完成情感識別。奚晨是在特征級融合的基礎(chǔ)上引入互注意力機(jī)制,通過計算自動為不同模態(tài)添加權(quán)重以體現(xiàn)模態(tài)間的重要性程度[12]。
音頻信號是一組在8 ~44.1 kHz 頻率范圍內(nèi)的離散時間序列。與其他的機(jī)器學(xué)習(xí)任務(wù)一樣,音頻信號的特征提取在音樂情感識別(MER)中也非常的重要。大多數(shù)情況下,音頻特征可分為時域特征、頻域特征、倒譜域特征和其他特征。語譜圖(Spectrogram)是頻譜分析視圖,橫坐標(biāo)為時間,縱坐標(biāo)為頻率,是音頻在時域和頻域特性上的綜合描述。Spectrogram 本身包含了音樂信號的所有頻譜信息,沒有經(jīng)過任何加工,所以Spectrogram 關(guān)于音樂的信息是無損的。
本文采用的音頻情感識別模型如圖1 所示。該模型主要包括卷積層、BiGRU 層、全連接層和分類層。
圖1 音頻情感識別模型圖
(1)卷積層
卷積層的輸入為音頻的語譜圖IT×N(T為時間,N為頻率),利用CNN 的局部數(shù)據(jù)處理能力,對語譜圖進(jìn)行特性提取。通過卷積、池化、dropout 等操作后,得到了時間乘以特征數(shù)目的頻率面情感特征。
(2)BiGRU 層
RNN 是處理序列數(shù)據(jù)的神經(jīng)網(wǎng)絡(luò),可以有效地學(xué)習(xí)序列信息。傳統(tǒng)的RNN 難以捕獲長距離依賴信息且在反向傳播時經(jīng)常會出現(xiàn)梯度消失,而LSTM 在內(nèi)部門控制機(jī)制下有效地解決了這些問題。GRU 是LSTM 的優(yōu)化版本,簡化了其內(nèi)部結(jié)果,在提升訓(xùn)練效率的同時保持了幾乎相同的效果。GRU 結(jié)構(gòu)如圖2 所示。
圖2 GRU 內(nèi)部結(jié)構(gòu)
在GRU 內(nèi)部有重置門rt和更新門zt,前向的計算公式如下:
式中:wr、wz和w分別為重置門、更新門和候選特征的參數(shù)矩陣;σ為sigmoid 激活函數(shù);ht為t時刻的隱藏狀態(tài);ht-1為上一時刻的隱藏狀態(tài);為t時刻的候選信息。
本層的輸入為CNN 層提取出的情感局部關(guān)鍵特征和低水平特征(MFCC、RP)。在文獻(xiàn)[13]中已證明RP 能夠與MFCC 實現(xiàn)信息的互補(bǔ)。通過兩個獨立的隱藏層,分別學(xué)習(xí)前向和后向序列信息。最終將提取出的語譜圖中和LLD 中的情感特征進(jìn)行全連接后輸入到softmax 層進(jìn)行分類。
目前主流的文本情感識別主要是使用預(yù)訓(xùn)練語言模型。BERT 模型是在谷歌大腦于2018 年提出的一種基于Encoder-Decoder 架構(gòu)的語言模型,在NLP 各項領(lǐng)域取得了優(yōu)異的成績;但其也存在上下游任務(wù)不一致、忽略了預(yù)測詞之間的依賴關(guān)系的問題。于是谷歌大腦于2019 年發(fā)布了XLNet 模型,在多個任務(wù)上超越了BERT 的性能。
XLNet-BiGRU 模型主要由XLNet 層和BiGRU 層組成,其具體結(jié)構(gòu)如圖3 所示。
圖3 基于XLNet-BiGRU 的模型結(jié)構(gòu)圖
現(xiàn)階段的預(yù)訓(xùn)練語言模型有自回歸語言模型(Auto Regressive Language Model, ARLM)和自編碼語言模型(Auto Encoder Language Model, AELM)。ARLM 不能同時學(xué)習(xí)前后文的信息,但是其考慮到了單詞之間的依賴關(guān)系,而AELM 可以同時學(xué)習(xí)到前后文的信息,但忽略了單詞之間的依賴關(guān)系,同時存在預(yù)訓(xùn)練階段和微調(diào)階段的不一致問題。XLNet 結(jié)合了ARLM 和AELM 的優(yōu)點,提出了排列語言模型(Permutation Language Model, PLM)方法,對句子中的Token 進(jìn)行全排列,通過采樣不同的序列順序進(jìn)行預(yù)測。
該模型的工作流程如下:
(1)將歌詞數(shù)據(jù)Xn(n=1, 2, ...,N)輸入到XLNet 層,Xi表示為歌詞中第i個單詞。
(2)將文本數(shù)據(jù)轉(zhuǎn)化為在字典中對應(yīng)的編碼,利用XLNet 模型學(xué)習(xí)到文本的動態(tài)特征向量Tn,向量T充分地利用了上下文的位置關(guān)系,能夠很好地表現(xiàn)單詞在不同句子中的含義。
(3)將特征向量Tn作為輸入矩陣,輸入到BiGRU 層,分別通過正向BiGRU 層和反向BiGRU 層得到hli和hri,加權(quán)連接后得到深層語義特征hi。
(4)通過全連接層對hi進(jìn)行全連接,輸出的維度為情感標(biāo)簽的種類數(shù)量。
(5)最后在softmax 層對全連接層的輸出結(jié)果歸一化處理,得到音樂的情感類別。
多模態(tài)融合方式一般可以分為早期融合和晚期融合。早期融合是對不同模態(tài)間特征的融合,這種融合方式可以較好地考慮到不同模態(tài)間信息的互相補(bǔ)充。晚期融合是指決策的融合,不同模態(tài)的數(shù)據(jù)分別通過不同的模型得到分類決策,然后對不同的結(jié)果進(jìn)行融合。
一般的特征融合是對不同模態(tài)的特征向量進(jìn)行直接的拼接,這樣不能很好地考慮不同模態(tài)之間的差異性,以及在決策中模態(tài)之間不同的權(quán)重。因此,本文采用互注意力機(jī)制的特征融合,具體公式如下:
式中:Fa為音頻的特征;Ft為文本的特征;Wa和Wt為參數(shù)矩陣。通過計算后分別得到語音關(guān)于文本的互注意力特征Fat和文本關(guān)于語音的互注意力特征Fta,最后通過向量的級聯(lián)得到音頻-文本互注意力特征Fat。
本文針對音樂情感識別實驗的數(shù)據(jù)集來自Million Song Dataset(百萬音樂數(shù)據(jù)集)。在其標(biāo)簽子集Last.fm,根據(jù)憤怒、悲傷、快樂、放松四種情緒類別,抽取音樂2 000 首。具體分類情況見表1 所列。
表1 實驗數(shù)據(jù)集
由于整首音樂存在重復(fù)的部分,且一般音樂的副歌部分是整首歌曲的情感爆發(fā)點,因此選取每首歌的15 ~45 s 之間的30 s 作為音頻數(shù)據(jù),并按照8 ∶2 的比例隨機(jī)劃分訓(xùn)練集和測試集。
在本次實驗中,分別采取了不同特征選取、不同分類模型和不同融合方法進(jìn)行了實驗。實驗具體結(jié)果見表2 所列。
表2 實驗對比結(jié)果
由表2 可見,在音頻情感識別部分把語譜圖作為二維特征輸入到CNN,取得0.588 的準(zhǔn)確率,通過CNN 和GRU的組合方式,準(zhǔn)確率有一定的提升,而本文中所使用模型對LLD 和語譜圖中感情信息的融合進(jìn)一步提升了分類的準(zhǔn)確率,達(dá)到了0.69。在歌詞情感識別部分,本文使用的XLNet語言模型,相對于之前的Word2Vec 和BERT 有2%~9%的提升,準(zhǔn)確率達(dá)到了0.794。在多模態(tài)情感識別部分可以看出,決策級的融合對比單一的模態(tài)準(zhǔn)確率并沒有提升,是因為不同的決策具有相同的權(quán)重,對最終分類結(jié)果造成了負(fù)面的影響。而在考慮了互注意力機(jī)制的特征融合下,分類效果提升了3%左右。
本文針對音樂情感識別領(lǐng)域,提出了一種基于XLNet-CNN-BiGRU 的音樂情感識別模型。在音頻部分,采用MFCC 與RP 相互融合,再結(jié)合語譜圖以獲得更加豐富的情感信息,模型充分利用了CNN 的局部特征提取能力和GRU的結(jié)合上下文的序列特征提取能力。在歌詞文本部分,首先利用預(yù)訓(xùn)練模型XLNet 動態(tài)獲取包含上下文語義的特征向量,再利用雙向GRU 網(wǎng)絡(luò)再次提取上下文相關(guān)信息。最后在模態(tài)融合部分,結(jié)合互注意力機(jī)制對不同特征加權(quán),對歌曲情感進(jìn)行識別。經(jīng)過對比實驗,該方法在一定程度上提高了分類的準(zhǔn)確度。日后的工作中,對音頻更加高效的特征提取是研究的重點。