蔣旻雋
(上海應用技術大學計算機科學與信息工程學院,上海 201418)
基于歌詞的流行音樂情感二值分類研究
蔣旻雋
(上海應用技術大學計算機科學與信息工程學院,上海 201418)
著眼于音樂情感的分類,使用計算機領域文本分類的技術,利用KNN分類算法,對流行音樂中的情感進行挖掘,從而實現基于中文歌詞的流行音樂情感的二值分類。主要借鑒文本處理的方法,將歌詞通過分詞、詞頻統計、權重計算等一系列的處理,變為可計算的特征向量;并且在此基礎上使用KNN分類算法,對于流行音樂中的情感進行了二值分類。通過實驗結果可以看出,該方法有較高的準確率。
情感分類;流行音樂;歌詞文本處理;KNN算法
音樂是人們休閑娛樂生活中必不可少的一部分,計算機與互聯網的發展使我們可以通過網絡方便地取得音樂資源,網絡上的海量音樂信息,對媒體內容的管理和檢索提出了更高的要求。通過音樂所表達的情感進行音樂檢索更方便,更智能,更貼近人們的日常生活。從前的音樂檢索方式大多忽略了用戶對于音樂情感上的需求,更多的是通過聲學、音頻等專業鄰域的特征檢索。有關基于情感的音樂檢索的研究工作較少,Feng等通過檢測音樂的演奏速度和清晰度,來分析音樂中所蘊含的情感[1]。情感識別方法主要有基于知識的模型和基于數據的模型[2],使用統計分析或者機器學習的理論建立關鍵變量與其他可測變量的統計或者學習模型也是最常用的方法,例如基于支持向量機[3-5]的方法、高斯混合模型方法[6]。
本文的重點在于挖掘流行音樂中的情感,基于流行音樂的歌詞對其進行二值分類。本文主要從音樂歌詞所包含的情感分類技術出發,在現有歌詞分類方法的基礎上,與音樂領域的相關知識相結合,構建情感所對應的詞匯表,將中文文本分類的方法應用于流行音樂的情感分類中,結合KNN分類算法,實現流行音樂的情感二值分類。
對于情感的分類而言,最常見也是最直接簡單的情感分類方式便是好和壞,積極與消極。根據一定的調查和研究,大部分的流行音樂所帶給人們直觀的感覺便是表示積極情緒和表示消極情緒的音樂,所以本文將流行音樂中的情感分類兩大類,體現積極情緒的一類和表現消極情感的一類。
K最近鄰(KNN,k-Nearest Neighbor)分類算法是數據挖掘分類技術中最簡單的方法之一。KNN算法的核心思想是如果一個樣本在特征空間中的k個最相鄰的樣本中的大多數屬于某一個類別,則該樣本也屬于這個類別,并具有這個類別上樣本的特性。該方法在確定分類決策上只依據最鄰近的一個或者幾個樣本的類別來決定待分樣本所屬的類別。KNN方法在類別決策時,只與極少量的相鄰樣本有關。由于KNN方法主要靠周圍有限的鄰近的樣本,而不是靠判別類域的方法來確定所屬類別的,因此對于類域的交叉或重疊較多的待分樣本集來說,KNN方法較其他方法更為適合。
KNN算法的基本步驟為:(1)算距離:給定測試對象,計算它與訓練集中的每個對象的距離;(2)找鄰近:圈定距離最近的K個訓練對象,作為測試對象的鄰近;(3)做分類:根據這K個鄰近歸屬的主要類別,來對測試對象分類。
2.1 音樂情感表達
本文研究的對象是流行音樂的歌詞與音樂情感的對應關系,已有的研究成果表明,漢語情感詞匯主要分布在名詞、動詞和形容詞中,本文根據查閱的相關資料,在已有的成果的基礎上,構造了適用于本次實驗的情感詞匯與類別對應表。將感情分類積極和消極兩大情感大類,而其中又各細分了6類情感小類。詳見表1中的情感與形容詞的對應關系。
2.2 特征向量
計算機無法直接處理文字、語言,必須通過一定的方法將文本形式的歌詞轉化為可以被計算機處理的形式化特征向量。利用向量空間模型,文本的數據就轉換成了計算機可以處理的結構化數據,兩個文檔之間的相似性問題轉變成了兩個向量之間的相似性問題。
本文將歌詞的文檔以表示情感的特征詞用空間向量的形式表達出來特征向量表示為D=(t1,t2,…,tn),由于我們將情感細分為12小類,因此此處n的取值為12,即每個特征向量是12維的。另外,每一維表示某一文本中出現第i個小類中的形容詞的次數。例如,某首歌詞中出現了3次“笑容”,1次“甜蜜”,1次“溫馨”,對照表1,可以發現這幾個詞語都被歸納在第六個小類“快樂”這一情感中,因此對于這首歌詞的特征元素t6的計數值就為6。
當得到一首歌詞文本后,首先要使用特殊工具對其進行分詞,將完整的詞句變為一個個單詞,隨后通過手動操作從中選取名詞、形容詞等富含情感因素的詞語,第三步是將這些詞語和下表的情感類別詞匯對比,統計任意一首歌詞,對于每一個情感小類中的詞語出現的次數,最終得到每首文本歌詞所對應的特征向量。

表1 情感類別與詞匯對應表
3.1 總體設計
本方法主要有預處理和分類處理兩大部分。預處理部分主要將文本型的歌詞進行分詞以及一系列相關的后序處理,最終得到相關的特征向量;而實際的分類處理,則是利用KNN算法,通過計算測試的未知樣本與已知的訓練樣本之間計算歐式距離,以及排序比對等處理,以得到未知樣本所在的類別。主要可以細分為以下幾個步驟:
①使用ICTCLA2014對實驗數據進行分詞,表示出使用數據的特征詞;
②進行特征項的選取,選擇歌詞中的帶有明顯情感特征的詞匯,形容詞、名詞和動詞作為特征項;
③詞頻統計,統計所選特征項在所需分類歌詞中文檔中出現的次數,將所有的歌詞文本(包括訓練樣本以及測試樣本)轉換為特征向量;
④手動將各個訓練樣本的類別進行標注;
⑤利用KNN算法對各測試樣本進行分類。
3.2 實驗與結果分析
本次研究選用180首流音樂的中文歌詞。在180個實驗數據中,有100首歌曲是情感類別已經明確的訓練樣本,而另外80首未標注情感類別的歌詞文本作為測試樣本,主要用于對分類結果進行觀察和分析驗證分類方法的正確合理性。
對于使用KNN算法有兩個關鍵點,一是特征向量之間的距離計算公式的選擇,其二是關于關鍵參數k的取值。首先,我們選擇最為常用的歐氏距離來度量兩個向量之間的鄰近程度,計算公式為,d=。其中d為我們所求的距離,X=(x1,x2,…,xn)以及Y=(y1,y2,…,yn)為兩個特征向量,代表兩個歌詞文本。而對于k的選擇上,經過反復實驗對比k取值3的時候,分類的效果最佳。
根據前面所設計的方案,所選用的音樂歌詞具有明顯的情感特征,語料庫主要收集近10年的流行音樂。本次實驗中,測試樣本為80首歌曲,表示積極和消極各40首,積極類歌曲分類正確39首,正確率97.5%,消極歌曲分類正確38首,正確率95%。可以看出,大部分情況屬于分類正確,少部分的語料分類不正確。
本文主要研究如何利用KNN算法對流行音樂的情感進行簡單的二值分類。文章首先探討了歌詞與音樂情感的關聯,并借鑒文本處理的方法,將純粹文字記錄的歌詞通過分詞、詞頻統計等一系列的處理,變為可計算的特征向量;并且在此基礎上使用KNN分類算法,對于流行音樂中的情感進行了二值分類。通過實驗結果的相關數據可以看出,該方法能夠得到較高的準確率與覆蓋率。
根據情感分類的方法在音樂信息檢索中有著重要的作用,同時也對理論的研究和應用有著巨大的價值。還有很多知識和理論值的我們去探索去學習。雖然歌詞與音樂情感有著很大的關聯,但是旋律本身對于情感的體現也尤為重要,我們將在未來的研究中更著重旋律對于音樂情感的影響,并結合歌詞做進一步的音樂情感分類研究。
[1]Feng Y Z,Zhuang Y T,Pan Y H.Music Information Retrieval by Detecting Mood Via Computational Media Aesthetics[C].Proceedings of the IEEE International Conference on Web Intelligence.Beijing,China,2003:235-241.
[2]童卡娜.基于音樂聯覺的聽覺金制度識別模型與算法研究[D].長沙:中南大學碩士學位論文,2007.
[3]Umapathy K,Krishnan S,Jimaa S.Multigroup Classification of Audio Signals Using Time-Frequency Parameters[J].IEEE Trans.on Multimedia,2005,7(2):308-315.
[4]Ogihara M.Content-Based Music Similarity Search and Emotion Detection[C].Proceedings on 2004 IEEE International Conference on Acoustics,Speech and Signal Processing,Fairmont Queen Elizabeth Hotel,Montreal,Quebec,Canada,2004:17-21.
[5]Wang M.User-Adaptive Music Emotion Recognition[C].IEEE Transactions on Audio,Speech and Language Processing,2008,16(2): 448-457.
[6]Liu D,Lu L,Zhang HJ.Automatic Mood Detection from Acoustic Music Data[C].Proceedings of the 4th International Conference on Music Information Retrieval.Baltimore,Maryland,USA:Johns Hopkins University,2003.
Research on Binary Classification of the Emotion of Pop Music on Lyric
JIANG Min-jun
(School of Computer Science and Information Engineering,Shanghai Institute of Technology,Shanghai 201418)
Focuses on how to retrieve massive musical information on internet efficiently based on the emotions of different music,by using the techniques of text processing and KNN algorithm,it is possible to discover important information from pop music.Uses text processing method for reference to transform lyrics of music into feature vectors,applies KNN algorithm to classify musical emotion into two different categories.The proposed method is proved effective and correct by the experiments.
Classification of the Emotion of Music;Pop Music;Lyric Text Processing;KNN Algorithm
上海應用技術學院引進人才基金資助項目(No.YJ2011-69)
1007-1423(2016)35-0055-04
10.3969/j.issn.1007-1423.2016.35.011
蔣旻雋(1981-),女,上海人,講師,博士,研究方向為人工智能
2016-11-01
2016-12-01