宋倩雯
(咸陽師范學(xué)院,音樂學(xué)院,陜西,咸陽 712000)
當(dāng)下,互聯(lián)網(wǎng)上的音樂資源異常豐富,各種音樂平臺(tái)的用戶們?cè)谙硎芤魳穾淼男蓍e時(shí)光的同時(shí)也面臨著音樂種類過多、難以抒發(fā)情緒的困擾,音樂平臺(tái)的開發(fā)者們逐漸注意到了用戶們的心理需求,大多數(shù)平臺(tái)都添加了個(gè)性化音樂推薦功能。但是,大多數(shù)的推薦都是根據(jù)用戶的點(diǎn)播歷史來總結(jié)用戶感興趣的音樂種類,推薦的作品往往是在曲風(fēng)、作者、歌詞內(nèi)容等方面具有較高的相似度,并沒有考慮到當(dāng)用戶因多種因素影響而產(chǎn)生情緒變化時(shí),所需要的音樂在節(jié)奏、風(fēng)格上也會(huì)發(fā)生變化。本文基于雙向情感分析設(shè)計(jì)了一種音樂推薦平臺(tái),既能夠根據(jù)音樂的梅爾倒譜特征開發(fā)分類器進(jìn)行情感音樂分類,也能夠通過捕捉用戶發(fā)布的網(wǎng)絡(luò)信息來分析用戶的實(shí)時(shí)情緒狀態(tài),最終推薦可以響應(yīng)其情感需求的音樂,以此來提升平臺(tái)用戶的使用體驗(yàn)。
基于雙向情感分析的音樂推薦平臺(tái)主要包括用戶音樂情感識(shí)別、用戶社交情感實(shí)時(shí)識(shí)別以及推薦音樂顯示界面3個(gè)模塊,其總體結(jié)構(gòu)如圖1所示。

圖1 英語信息共享平臺(tái)總體架構(gòu)
用戶和音樂的情感通過悲傷、躁動(dòng)、勵(lì)志和喜悅4個(gè)情緒狀態(tài)表達(dá)。平臺(tái)進(jìn)行音樂推薦的流程為分析用戶在線收聽的音樂歷史列表,通過計(jì)算得到這些音樂的頻域梅爾倒譜系數(shù),基于結(jié)果對(duì)這些音樂進(jìn)行情感歸類,這是一個(gè)音樂情感離線識(shí)別的過程。在用戶社交情感實(shí)時(shí)識(shí)別中,利用網(wǎng)絡(luò)爬蟲的信息捕捉功能獲取用戶在網(wǎng)絡(luò)社交活動(dòng)中所發(fā)布的有關(guān)情感的文字信息,通過自然語言處理分析用戶當(dāng)時(shí)的情緒狀態(tài),即音樂情感的實(shí)時(shí)在線識(shí)別。為分析得到的用戶心情匹配與之對(duì)應(yīng)的音樂類別,詳細(xì)選取出能夠響應(yīng)心情的音樂,通過平臺(tái)界面向用戶進(jìn)行推薦。
首先需要對(duì)音樂的數(shù)據(jù)內(nèi)容進(jìn)行預(yù)處理,分別基于音樂的頻域特性和梅爾倒譜特性各設(shè)計(jì)一種歸類器,通過實(shí)驗(yàn)獲得的結(jié)果顯示,梅爾倒譜系數(shù)特性準(zhǔn)確度更高,因此本文所設(shè)計(jì)的推薦平臺(tái)將其選定為音樂歸類的依據(jù)。
(1)預(yù)處理音樂數(shù)據(jù)內(nèi)容。鑒于目前尚沒有根據(jù)不同音樂情感類別建立的音樂數(shù)據(jù)庫(kù),所以本平臺(tái)創(chuàng)建了一個(gè)包含1 600首特選音樂的數(shù)據(jù)庫(kù),通過SoX軟件將mp3格式的音樂文件轉(zhuǎn)換為220 V/50 Hz音軌、單聲道WAV文件。
(2)音樂情感歸類結(jié)果人工標(biāo)定。由20名具有本科學(xué)歷的音樂愛好者組成測(cè)評(píng)團(tuán)隊(duì),分悲傷、躁動(dòng)、勵(lì)志、喜悅4個(gè)情緒狀態(tài)對(duì)音樂數(shù)據(jù)庫(kù)中的音樂進(jìn)行歸類。鑒于個(gè)人主觀判斷的差異化,對(duì)于同一段音樂,其最終歸類結(jié)果按照選擇人數(shù)較多的類別確定。
(3)創(chuàng)建測(cè)試集和訓(xùn)練集。將音樂數(shù)據(jù)庫(kù)中的WAV文件按7∶3的比例劃分為2個(gè)音樂集,占70%的部分作為訓(xùn)練集,依據(jù)該集中音樂的特性設(shè)計(jì)歸類器,其余部分作為測(cè)試集,用以測(cè)評(píng)歸類器的功能可靠性。
(4)提取音樂特性。音樂信號(hào)的分析方式有很多種,最常用的是時(shí)域分析和頻域分析兩種。時(shí)域分析的優(yōu)勢(shì)是計(jì)算量相對(duì)較少,提取過程簡(jiǎn)單易行,但其魯棒性明顯較差。相比之下音樂信號(hào)功率譜對(duì)音樂所表達(dá)情感的感知更全面、更深入,因此本平臺(tái)設(shè)計(jì)過程中選取頻域分析作為音樂情感特性的提取對(duì)象,提取的內(nèi)容是頻譜特性和梅爾倒譜特性。
(5)訓(xùn)練歸類器的選擇。鑒于音樂情感分類是一種多分類行為,因此音樂情感歸類由邏輯回歸分類器執(zhí)行。
(6)測(cè)試歸類器性能,分析歸類結(jié)果。由設(shè)計(jì)的歸類器對(duì)測(cè)試集中的音樂進(jìn)行情感歸類,得到的結(jié)果與人工標(biāo)定結(jié)果對(duì)比以評(píng)估歸類器性能。
基于頻域特性參數(shù)分別提取每一段音樂的頻譜特性和梅爾倒譜特性。通常情況下通過離散傅里葉變換來進(jìn)行數(shù)字信號(hào)處理,因此本平臺(tái)基于快速傅里葉變換來計(jì)算每一段音樂的頻譜特性。
MFCC(梅爾頻率倒譜系數(shù)),能夠表達(dá)頻域中音頻信號(hào)的非線性特性,同時(shí)具有識(shí)別性高、抗干擾能力強(qiáng)的特征,與人耳聽覺特性接近。MFCC的參數(shù)提取過程如圖2所示。

圖2 MFCC的參數(shù)提取過程
(1)連續(xù)音樂信號(hào)集s(n)通過加重渲染、分幀、加窗處理后轉(zhuǎn)換為到一幀音樂信號(hào)集x(n)。
(2)通過快速傅里葉變換將x(n)轉(zhuǎn)換為線性頻域信號(hào)X(k),
(1)
其中,x(n)為輸入信號(hào)集,N為傅里葉變換中點(diǎn)的數(shù)量。
(3)將X(k)代入三角濾波器組Hm(k),設(shè)M為濾波器組的數(shù)量,0≤m≤M。對(duì)于三角濾波器組,其中心頻率f(m)在梅爾頻率域內(nèi)具有相同間隔。在此基礎(chǔ)上相鄰三角帶通濾波器的中心頻率間距為ΔMel=f(max)/(k+1),則可計(jì)算出每個(gè)帶通濾波器組所傳遞的參數(shù)如式(2)。
(2)
(4)濾波器組處理后的Mel坐標(biāo)系上的能量譜s(m)
(3)
(5)通過離散余弦反變換可計(jì)算出頻率域Mel頻率倒譜C(n)
(4)
其中,n=0,1,2,…,L,L為MFCC階數(shù)。
鑒于MCFF前端及末端取值對(duì)音頻識(shí)別性較強(qiáng),因此本文取前12維MFCC系數(shù)及一階差分系數(shù)作為MFCC特性參數(shù)。
獲取了每一段音樂的頻譜特性和梅爾倒譜特性后,就可以分別基于這2種特性進(jìn)行歸類器的訓(xùn)練,再通過測(cè)試集中的音樂對(duì)歸類結(jié)果進(jìn)行分析。
平臺(tái)設(shè)計(jì)過程中利用混淆矩陣對(duì)歸類結(jié)果進(jìn)行可視化分析。混淆矩陣能夠以直觀的方式對(duì)分類結(jié)果的正確性進(jìn)行可視化表達(dá),矩陣中顯示了測(cè)試目標(biāo)的預(yù)想位置與實(shí)際位置,以顏色的深淺度來表示兩者的重疊情況,進(jìn)而表明分類結(jié)果的正確性。圖3中的混淆矩陣對(duì)比圖顯示了分別基于頻譜特性和梅爾倒譜特性設(shè)計(jì)的歸類器運(yùn)行結(jié)果。圖中橫軸代表音樂的歸類器預(yù)測(cè)類別,縱軸代表人工標(biāo)定判定類別。按照混淆矩陣的對(duì)比規(guī)則,主對(duì)角線上的方格顏色越深,橫軸與縱軸的一致性越高。由圖3可見,圖3(a)基于頻譜特性設(shè)計(jì)的歸類器喜悅、躁動(dòng)兩項(xiàng)對(duì)應(yīng)的方格顏色較深,勵(lì)志、悲傷兩項(xiàng)對(duì)應(yīng)的方格顏色較淺,非對(duì)角區(qū)域大多為灰色方格,并未呈現(xiàn)預(yù)想的白色對(duì)角線,可見分類結(jié)果大多不準(zhǔn)確,沒有達(dá)到理想狀態(tài);圖3(b)基于梅爾倒譜特性設(shè)計(jì)的歸類器主對(duì)角線上的方格顏色普遍較深,尤其是躁動(dòng)對(duì)應(yīng)的方格,同時(shí),非對(duì)角線區(qū)域方格顏色較淺且多是白色方格,說明分類錯(cuò)誤的音樂數(shù)量較少,相對(duì)于左面的矩陣圖形在分類結(jié)果上具有明顯的優(yōu)勢(shì)。相比之下基于梅爾倒譜特性設(shè)計(jì)的歸類器運(yùn)行效果明顯更好,因此本平臺(tái)采用梅爾倒譜特性歸類器進(jìn)行音樂情感歸類。

圖3 分別基于頻譜特性和梅爾倒譜特性設(shè)計(jì)的歸類器運(yùn)行結(jié)果
通過歸類器對(duì)音樂情感進(jìn)行歸類后,需要對(duì)用戶的實(shí)時(shí)情緒狀態(tài)進(jìn)行識(shí)別,以實(shí)現(xiàn)兩者的匹配。
(1)情感信息的篩選和預(yù)處理。從新浪微博的7 500條熱門話題中篩選出2 500條信息內(nèi)容色彩較濃的微博作為用戶情感文字信息集。
(2)文字信息情感歸類人工標(biāo)定。由25名具有本科學(xué)歷的人員組成測(cè)評(píng)團(tuán)隊(duì),分悲傷、躁動(dòng)、勵(lì)志、喜悅4個(gè)情緒狀態(tài)對(duì)上述微博中文字信息所透露的情緒進(jìn)行歸類。
(3)創(chuàng)建測(cè)試語料庫(kù)和訓(xùn)練語料庫(kù)。具體過程為:第一步,從2 500條微博的用戶情感文字信息集中篩選出中文詞句,利用分詞工具進(jìn)行分詞,作為情感文本集,將“給力”“杯具”等表明情緒的網(wǎng)絡(luò)熱門詞匯合并到基本情感字典中,形成新的情感字典;第二步,基于新情感字典降維情感文本集矩陣,提取出其中用于明顯情感釋放的詞匯,判定其情感特性;第三步,計(jì)算情感特性權(quán)值,將降維的情感文本集矩陣按7∶3的比例劃分為兩個(gè)語料庫(kù),占70%的部分作為訓(xùn)練語料庫(kù),通過它對(duì)歸類器進(jìn)行訓(xùn)練。用于本次研究的訓(xùn)練集與測(cè)試集的測(cè)評(píng)團(tuán)人工分類結(jié)果如表1所示。

表1 訓(xùn)練集與測(cè)試集人工分類結(jié)果
(4)歸類器訓(xùn)練。語料庫(kù)歸類器基于樸素貝葉斯設(shè)計(jì),用戶的4個(gè)情緒狀態(tài)出現(xiàn)幾率計(jì)算方法為P(Ci)=si/s,不同特性對(duì)不同歸類的條件概率為P(X|Ci),通過這兩個(gè)值能夠生成情感歸類器。
(5)歸類測(cè)試及結(jié)果分析。通過訓(xùn)練過的歸類器對(duì)測(cè)試語料庫(kù)進(jìn)行情感歸類。具體流程:從訓(xùn)練語料庫(kù)中提取出每條文本信息的向量矩陣d={w1,w2,…,wn},通過n維特性向量X={x1,x2,…,xn}來描述,其中xk為特性Ak的值,樣本按情感類別分成4類,即C={C1,C2,C3,C4},為4個(gè)類別分配一個(gè)無類別文本數(shù)據(jù),僅在P(Ci|X)>P(Cj|X)的條件下,將其歸入到Ci類中。
本文基于精確率、召回率兩種評(píng)價(jià)方法對(duì)文本信息的情感歸類結(jié)果進(jìn)行分析。精確率是指被正確判定為正確文檔的數(shù)量占比;召回率是指實(shí)際的正確文檔被判定為正確的數(shù)量占比。通過歸類器對(duì)測(cè)試語料庫(kù)中的文本信息進(jìn)行情感歸類,由測(cè)評(píng)團(tuán)對(duì)歸類器的分類結(jié)果進(jìn)行人工鑒別,從而驗(yàn)證本系統(tǒng)的音樂情感分類準(zhǔn)確性。通過本系統(tǒng)所進(jìn)行的音樂情感分類實(shí)驗(yàn)結(jié)果如表2所示。

表2 本系統(tǒng)情感分析實(shí)驗(yàn)結(jié)果
由表2中的數(shù)據(jù)可見,系統(tǒng)判定為喜悅情感的文本信息為144條,占測(cè)試數(shù)據(jù)集相應(yīng)分類數(shù)量的85.03%,即系統(tǒng)判定精確率為85.03%,通過人工判定,選取的信息中有124條屬于喜悅類文本信息,占測(cè)試數(shù)據(jù)集相應(yīng)分類數(shù)量的73.22%,即系統(tǒng)召回率為73.22%。同理計(jì)算可得勵(lì)志、悲傷、躁動(dòng)情感的系統(tǒng)判定精確率及召回率分別為78.69%和70.24%、73.23%和69.37%、86.37%和75.03%,分類效果如圖4所示。

圖4 測(cè)試語料庫(kù)文本信息歸類結(jié)果
可見,貝葉斯分類器的文本信息情感歸類效果顯著。推薦平臺(tái)將音樂情感歸類結(jié)果與用戶文本信息情感歸類結(jié)果進(jìn)行匹配,即可實(shí)現(xiàn)依據(jù)用戶實(shí)時(shí)情緒進(jìn)行音樂推薦的功能。
(1)硬件環(huán)境
系統(tǒng)運(yùn)行計(jì)算機(jī)硬件配置如表3所示。

表3 系統(tǒng)測(cè)試用計(jì)算機(jī)硬件配置
(2)軟件環(huán)境
計(jì)算機(jī)操作系統(tǒng)為Windows 10 64位專業(yè)版,安裝網(wǎng)絡(luò)爬蟲、SoX音頻處理、結(jié)巴中文分詞工具、WAV音樂播放器等軟件。
(3)測(cè)試結(jié)果及分析
在系統(tǒng)持續(xù)在線運(yùn)行24 h的條件下,逐漸增加系統(tǒng)的同時(shí)訪問用戶數(shù)量,檢查相應(yīng)狀態(tài)下的CPU占用率、內(nèi)存使用率等參數(shù)變化情況。測(cè)試數(shù)據(jù)如圖5所示。在24 h運(yùn)行時(shí)間內(nèi),系統(tǒng)一直保持穩(wěn)定,未出現(xiàn)宕機(jī)現(xiàn)象,分類及推薦功能正常實(shí)現(xiàn)。

圖5 系統(tǒng)穩(wěn)定性測(cè)試數(shù)據(jù)
本文在多數(shù)在線音樂平臺(tái)無法根據(jù)用戶心情的變化進(jìn)行音樂推薦的背景下,提出并設(shè)計(jì)了一種基于雙向情感分析的音樂推薦平臺(tái),它根據(jù)音樂的梅爾倒譜特征開發(fā)分類器進(jìn)行情感音樂分類,通過捕捉用戶發(fā)布的網(wǎng)絡(luò)信息來分析用戶的實(shí)時(shí)情緒狀態(tài),最終向其推薦可以響應(yīng)其情感需求的音樂。通過實(shí)驗(yàn)證明,本平臺(tái)能夠?qū)崿F(xiàn)根據(jù)用戶實(shí)時(shí)情緒進(jìn)行音樂推薦的功能,并以此提升了平臺(tái)用戶的使用體驗(yàn)。