I. 前言
上周我做了一個Taylor Swift的歌詞文本數據挖掘專題研究(用大數據研究方法分析Taylor Swift的歌詞!),反響還不錯。有很多夥伴在評論區或者發私信跟我說,想讓我用大數據方法研究一下Ariana Grande的歌詞。我個人是從2013年就開始聽Ariana的歌,也非常欣賞Ariana的音樂作品;因此我收集了Ariana Grande所有收錄在專輯的歌詞,用R進行了文本數據挖掘,寫了這份報告。如果你是Ariana Grande的歌迷,想知道哪些歌是Ariana最正面的歌、哪張專輯是Ariana最憤怒的專輯,或者你想觀賞一下Ariana專屬文字雲,請你接著往下閱讀。視頻可以去我的B站平臺 「Jasmine_Allyson」 觀看噢!
上次有些夥伴在Taylor Swift歌詞分析報告視頻的彈幕裡問「為什麼沒有Only the Young」或者「為什麼沒有Safe & Sound」,這是因為這些單曲並沒有被收錄在Taylor的錄音室專輯當中,所以我沒有放在我的歌詞庫裡去做分析。同樣地,這份研究報告收集的歌詞數據也同樣未包含Ariana零散在專輯外的單曲(比如Stuck With U),只包含收錄在專輯裡的歌。若該專輯有豪華版,我整理的歌詞庫包括豪華版的加曲。
敲這份報告的代碼時,我想辦法讓我的代碼比上一份研究報告的代碼更加乾淨、沒有太多累贅,點擊一下run就可以「譁啦譁啦」地跑出來一張圖片;我的目的達到了,這也讓我十分欣喜。我非常高興自己能利用假期時間研究一些我感興趣的主題,不僅鍛鍊了我寫R語言的能力,更是讓我知曉了「生命不息、學習不止」。
II. 詞頻統計與文字雲
在這一節裡,我將研究哪些單詞是Ariana歌詞中最常出現的單詞、哪些單詞對於Ariana所有6張專輯最重要,最後再繪製歌詞的文字雲。
i. 歌詞當中出現最頻繁的單詞
首先,讓我們看一下哪些詞是Ariana Grande歌詞出現最多的詞。在這份報告裡,我畫了兩張圖:第一張圖包括停用詞之外所有的詞,第二張圖不僅將停用詞清除,而且也把歌詞當中一些沒有必要分析的單詞去除。這裡「沒有必要分析的單詞」包括:
"yeah","la","ooh","wanna","bout","gonna","gotta","na","hey","i'ma","ya","mmm","eh","da","ah","uh","em","gon","woah","til","huh","woo","bum","hmm","sheesh","lo","yuh","ayy","ohh","whoa","yup","yee","nah","mm","ta","yo","ahh","gee","ba","mu","slo","st","aw","boo","by's","hoo","li","mi","might'a","ugh","um","you's".
反正都是一些奇怪的詞,我稱它們為「undesirable words」。你可能會問:「『bout』的意思不是短期疾病發作嗎?」不過Ariana的歌詞裡,bout是about的縮寫,本來應該寫作「』bout」,而about是停用詞,應該予以清除。另外說明一下,「停用詞(stop words)」就是一門語言裡最常出現的單詞,比如a、the、be、although就是英語的停用詞。
下面這張圖就是只清除停用詞、沒有清除undesirable words。
圖1 歌詞裡出現頻率最高的單詞(未過濾undesirable words)
有些小夥伴們猜對了,出現頻率最高的果然是yeah。但是這張圖看上去似乎沒有太大的意義,所以我將停用詞和undesirable words清除之後,統計圖如下所示。
圖2 歌詞裡出現頻率最高的單詞(已過濾undesirable words)
啊,這下看上去就好多了。Ariana歌詞出現次數最多的是love,高達391次。順便稍微透露一下,我還做了Coldplay和Lorde的歌詞文本挖掘,出現頻率最高的單詞也是love;看來love是藝術永恆的話題啊!剩下的單詞大多數比較平常,既然Ariana的歌大多數都是有關love的,那麼在歌詞中對「愛慕對象」的稱呼——即baby或者boy——自然也出現很多次。不過這裡greedy出現了56次,這56次全都是Greedy這首歌貢獻的:「GREEDY! OOH! You know that I’m greedy for love」。Greedy屬於Dangerous Woman這張專輯,這個時候我們已經可以猜到,Greedy肯定是Dangerous Woman專輯的「象徵性詞彙」。這個我們馬上會在下一小節說明。
ii. 詞頻-逆文檔頻率
在這一小節裡,我將研究Ariana這6張專輯當中,哪些詞彙是這張專輯的「象徵性詞彙」,即哪些單詞對於這張專輯最重要。這裡的「重要性」以「詞頻-逆文檔頻率」衡量:詞頻-逆文檔頻率英文縮寫為TF-IDF,簡要來說,若這個單詞在這張專輯裡多次出現、而在其他專輯很少出現,則這個單詞對於這張專輯很重要。
我繪製出統計圖,如下所示:
圖3 哪些單詞對這張專輯比較重要?各專輯小圖見下
在Yours Truly專輯當中,tattooed和popular霸居前兩位。tattooed這個單詞只在Tattooed Heart這首歌裡出現過,且出現23次;popular只在Popular Song這首歌裡出現過,且出現22次。兩個單詞都在Yours Truly專輯多次出現、而且在其他專輯沒有出現,因此其TF-IDF值較高,即tattooed和popular可以「代表」Yours Truly專輯。再來看My Everything專輯,bang的TF-IDF值竟然高達0.0524,這是因為Bang Bang這首歌重複了41次bang,而且bang只在Bang Bang這首歌出現過。最剛開始我分析的時候,我思考很久要不要把bang這個單詞給清除。後來我發現nrc詞典包含bang這個單詞,而且還賦予bang很多情感(下文會談及),所以我最終保留了bang。
在第三張專輯Dangerous Woman當中,greedy這個單詞高居第一位,也驗證了我們之前的猜測。Sweetener專輯當中,breathin單詞的TF-IDF值較高。其實breathin應該寫作breathin』,即breathing的縮寫。為了避免這樣的差異造成R分析不準確,我特意查看了breathing這個單詞,發現它只在Dangerous Woman專輯裡的Touch It這首歌出現過:「How do you know I'm breathing, when I'm holding my breath?」除此之外並未出現在其他歌曲,因此不影響我的分析結果。Ariana Grande的歌詞當中,有很多詞後面的-ing都變成了-in』,例如圖中的lovin、somethin、pickin、waitin等。這其中有一些詞是停用詞,例如something,所以我在整理歌詞的過程中慎重考慮過要不要把類似的詞(例如somethin)清除。後來我覺得這些-ing變成-in』形式的單詞恰恰是Ariana Grande歌詞的一個「特點」,所以我沒有清除。
iii. 文字雲
在本節的最後,我繪製了Ariana Grande的文字雲,供大家參考。在「Ariana」的文字雲當中你看不到love或者boy, 是因為這兩個詞出現頻率太高,字號太大,「A-r-i-a-n-a」這六個字母裝不下。
圖4-5 Ariana Grande歌詞文字雲
III. 情感分析
在本節,我將使用R Package: Tidytext內建的AFINN、Bing和NRC三個詞典詞典,分析Ariana Grande歌詞的情感。研究此部分的目的不僅是讓機器讀懂人類語言的情感,更是要探討機器分析「不準確」的地方,為日後機器的情感分析做改進的基礎。
i. AFINN, Bing & NRC簡介
AFINN由Finn Årup Nielsen創立,共包含2477個單詞。Finn Årup Nielsen手動給這些單詞賦予了-5至5的一個值(真有耐心),其中-5為最負面、5為最正面。例如,angry是-3,excited是3,WTF是-4. Bing由美籍華裔計算機科學家Bing Liu等人創立,一共包含6786個單詞,其中每一個單詞非負即正,即這六千多個單詞被劃分為兩大類,分別為positive和negative,是一個二元詞典。NRC詞典則是由加拿大國家研究委員會信息技術研究所製作的詞典,一共14182個單詞。NRC詞典不僅給這些單詞分成positive和negative兩種sentiment,而且賦予這些單詞8種情感,包括anger, anticipation, disgust, fear, joy,sadness, surprise和trust,即憤怒、期望、厭惡、恐懼、喜悅、憂傷、驚喜和信任。例如birthday是正面的,它包含的情感有期望、喜悅和驚喜。
這三個詞典各有各的優缺點。AFINN是詞數最少的詞典,但是它針對每個單詞情感的分類較比Bing要更加細緻;NRC是詞數最多的詞典,但是它給單詞賦予的情感並不能識別語義,例如無法識別反諷。
ii. 最正面的歌:以AFINN, Bing & NRC分析
我們先來看一下如果用AFINN, Bing & NRC三個詞典分別分析,哪些歌是Ariana Grande最正面的歌。其中,AFINN分析計分法是所有詞得分的加總,Bing和NRC分析計分法是正面詞個數減去負面詞個數。三張統計圖如下所示:
圖6-8 用AFINN, Bing, NRC分析Ariana Grande最正面的歌曲
首先,不論用哪個詞典分析,The Way排名都相當靠前。我們先來看一下The Way的部分歌詞:
I love the way you make me feel
……
On a scale of one to ten, I'm at a hundred
……
Stay by your side, I'll never leave ya
And I ain't going nowhere 'cause you're a keeper
不用說,The Way確實是一首兩人熱戀的正面歌曲(不要忘記,這首歌是Ariana和她前男友Mac Miller合作的)。這首歌的歌詞共出現54次love,是所有Ariana歌曲出現love這個單詞次數最多的一首歌(其次是Love Me Harder, 40次;接下來是Let Me Love You, 30次;第四是Bad Decisions, 22次)。因為我使用的計分方式是這個單詞每出現一次就計一次分數,因此The Way分析出來是Ariana最正面的歌曲之一。再來看一下排名同樣靠前的Love Me Harder這首熱門單曲:如果使用AFINN或者Bing分析,這首歌的歌詞只有love、leave、pain、pleasure、bliss、moaning、pressure是AFINN或者Bing詞典裡所包括的,如果使用NRC詞典分析,則這首歌有12個詞出現在NRC詞典裡,多出來的詞包括invade、reason、baby、bite、boy、real、time,少了pleasure和moaning(NRC詞典沒有pleasure非常讓我震驚)。也正因如此,如果使用NRC分析,Love Me Harder的排名較比用AFINN或者Bing分析下滑不少。
iii. 最負面的歌:以AFINN, Bing & NRC分析
讓我們再來看一下哪些歌曲是Ariana最負面的歌曲。
圖9-11 用AFINN, Bing, NRC分析Ariana Grande最負面的歌曲
用三個不同的詞典分析最負面的歌曲,分析結果的差異就有些大了。其中如果使用Bing分析,Piano竟然高居榜首。這個結果實在是太驚悚了,聽過這首歌的人都知道這首歌是非常歡快的。這首歌雖然在開頭唱到「love is a losing battle」以及「my heart was battered」,但是在中間部分則唱到「But I'd rather make a song they can play on the radio that makes you wanna dance」以及「I want to see you rock to the piano, the piano」,發生了明顯的轉折。於是我去特意看了一下為什麼用Bing分析,Piano是最負面的歌,發現原因竟然是這首歌出現了39次hard,而hard被bing歸類成「negative」。呃……歌詞中實際唱的是「it’s not hard」,也就是「並不困難」,所以說這個分析就有點草率了。
至於為什麼用NRC分析,Bang Bang是最負面的歌……是因為這首歌出現了41次bang,而NRC詞典表示,bang是負面詞彙,且情感包含憤怒、厭惡、恐懼、憂傷以及驚喜,所以在第三張圖裡,Bang Bang高居榜首;但實際上這首歌是一首非常「粗暴」的求偶歌,從某些歌詞(例如「Bang bang all over you (I'll let you have it)」)就可以看出來,所以說它並不是「負面」的歌曲。
iv. 專輯中的歌曲從最正面至最負面排名:以AFINN和Bing分析
在這一節,我使用了AFINN和Bing兩個詞典,將所有歌曲以專輯分類,從最正面的歌曲排至最負面的歌曲,繪製了如下統計圖:
圖12 各專輯歌曲從最正面排到最負面(AFINN分析),各專輯圖見下
圖13 各專輯歌曲從最正面排到最負面(Bing分析),各專輯圖見下
就我個人觀點來看,專輯「最正向」的歌曲(排在最上面的歌)確實是很正面的,比如thank u, next專輯的同名曲thank u, next以及positions專輯裡的pov,兩首歌都非常正向;而且兩個詞典分析的結果是一樣的。不過排行比較靠後的歌曲可能還有待斟酌,例如如果用AFINN分析,Sweetener最負面的歌曲竟然是no tears left to cry,原因是歌詞中出現10次cry和8次tears,而兩個單詞的分數依次為-1和-2,所以這首歌「很負面」。但實際上,no tears left to cry歌詞裡唱到:
Right now, I'm in a state of mind
I wanna be in like all the time
Ain't got no tears left to cry
So I'm pickin' it up, pickin' it up
I'm lovin', I'm livin', I'm pickin' it up
……
維基百科說了:Sweetener這張專輯有關焦慮和創傷。no tears leftto cry的歌詞實際講在經歷種種創傷性經歷(比如2017年Ariana曼徹斯特演唱會發生恐怖襲擊)之後,Ariana已經流幹了眼淚,但生活還要繼續以微笑面對。所以這首歌說它是「很負面」實際是不準確的。
v. 正負面對比文字雲
在這裡,我使用Bing詞典,對歌詞中出現的單詞進行正面和負面的歸類,繪製出正負面對比文字雲,如下圖。
圖14 Ariana Grande歌詞對比文字雲
vi. ArianaGrande歌詞整體傳達的情感
在接下來的3小節裡,我將以NRC詞典分析Ariana Grande歌詞傳達出來的情感。這裡的情感就不再是正面和負面的了,而是再加入即憤怒、期望、厭惡、恐懼、喜悅、憂傷、驚喜和信任這八種情感。
首先我從宏觀來看,研究Ariana所有歌曲傳達出來的情感如何,如下圖。這裡的計分方式是這個單詞每出現1次,其包含的所有情緒都加1分。比如love是正面(positive)詞彙,包含喜悅(joy)的情感,則positive和joy各得1分;每出現1次love,positive和joy就再各得1分。
圖15 Ariana Grande所有歌曲整體表達的情感
可以看到,Ariana Grande的歌曲傳達出正面情緒要多於負面情緒;同時也傳達出來相當多的喜悅,接著是厭惡、期望、憤怒、憂傷、信任、恐懼和驚喜依次遞減。我很好奇為何「disgust」得分高達575分,於是我去查了一下,發現Ariana歌詞的詞彙當中,包含「厭惡」情緒的一共有61個詞:bang、spoil、toxic、ugly、dirty、shit……等等。令我很驚奇的是,boy這個出現了162次的單詞,竟然是負面詞彙,包含的情緒是「厭惡」。難道NRC詞典是在暗示「男人都是大豬蹄子」嗎?也許是因為NRC把boy當成了語氣詞,英語中如果boy當語氣詞來用,它可以表示驚嘆、痛苦和喜悅(也許……還有厭惡)。但是Ariana的歌詞如果出現boy,傳達出的情緒肯定不是「厭惡」,所以這個分析是有偏差的。總結來說,Ariana的歌詞當中,boy、bang和shit多次出現,導致Ariana歌詞傳達出不少「厭惡」的情緒。
太搞笑了。
vii. 單曲歌詞的情感分析:以NRC為詞典為分析工具
接下來我們看一下哪一些歌曲可以更好地表達這種情緒。我篩選了各情緒得分前8名的歌曲,繪製統計圖如下所示:
圖16 哪些歌最好地傳達出這些情感?各情感分圖見下
首先我們看anticipation和trust兩種情感,pete davidson這首歌霸佔這兩種情感得分的第一名。眾所周知Pete Davidson是Ariana的前未婚夫,兩個人從2018年5月開始交往,同年6月就宣布訂婚,然後10月就解除婚約、分手。pete davidson這首歌收錄在Sweetener專輯當中,Sweetener又發布在2018年8月,正是處在Ariana和Pete的訂婚期。這首歌的歌詞特別簡單:
I thought you into my life (Whoa), look at my mind (Yuh)
No better place or a time, (Look) how they align
Universe must have my back, fell from the sky into my lap
And I know you know that you're my soulmate and all that
I'm like ooh, ooh, my whole life got me ready for you, ooh, ooh
Got me happy, happy
I'ma be happy, happy, yeah
I'ma be happy, happy
Won't get no crying from me, yeah
Gonna be happy, happy
I'ma be happy, happy (Happy) ……然後一直重複這句話。
總之,這首歌一共重複了25次happy,而happy包含anticipation和trust兩種情感,所以pete davidson這首歌最可以表達期望和信任。也許當時Ariana和Pete還在訂婚期的時候,Ariana確實是很happy的吧,很期待和Pete接下來的生活,同時很信任未婚夫。不過這都過去了……聽說Ariana和Dalton Gomez訂婚了?恭喜啊。下張專輯會不會有首歌叫dalton gomez?
再來看一下disgust。看來根據R的分析,Greedy表達「厭惡」的情緒最多。原因不用我多說,Greedy裡唱了56次greedy,而NRC詞典裡,greedy是負面的詞彙,包含的情感有「厭惡」。但是實際歌詞唱的是「You know that I'm greedy for love」,所以它還是一首求偶歌,並不是在唱「you’re so disgusting」之類的,這個分析結果我不是很同意。在joy一欄裡,Baby I是「最喜悅」的歌曲。其實Baby I是我聽過的第一首Ariana的歌,當年我13歲,立馬被她的歌聲吸引住了(你不得不承認,這首歌的vocals實在是太令人驚豔了)。這首歌一共出現了62次baby,而baby就包含「喜悅」這種情感,因此Baby I是Ariana「最喜悅」的一首歌。這首歌的歌詞確實傳達出喜悅的情緒:
Baby, I got love for thee so deep inside of me
……
I love you more than anything
……
All I'm tryna say is you're my everything, baby
……
所以說這個分析沒毛病。
還有,你會發現Bang Bang這首歌出現在憤怒、恐懼、憂傷、驚喜的榜首,這個原因我之前已經提到了:這首歌出現了41次bang,而NRC詞典把bang歸類成負面詞彙,且情感包含憤怒、厭惡、恐懼、憂傷以及驚喜。也許這首歌確實是很憤怒的一首歌,因為Bang Bang在我看來就是一首粗暴的求偶歌,歌詞整體穿搭出來的意思簡單粗暴來講,就是:「你為啥不跟我處對象?!我DuangDuangDuang走到你屋裡,讓我們開始搞事情吧!」所以說……也許Bang Bang是一首憤怒的歌曲(Jessie J不論唱什麼歌都給我一種「憤怒」的感覺,大概因為她的歌聲太粗獷了)。
viii. 專輯歌詞的情感分析:以NRC為詞典為分析工具
在本小節,我將Ariana所有6張專輯做了情感的排名,統計圖如下。其中,這裡的計分方式是每張專輯在這種情感得到的平均分(總分除以專輯歌曲數):
圖17 各專輯傳達出的情感如何?各情感分圖見下
我們可以看出,最新專輯positions在trust這種情感平均分較高,而在其他情感得分則不是很突出。positions專輯裡可以體現「信任」的詞彙有:pov裡的trust(這首歌出現了12次trust)、off the table裡的stable、obvious這首歌裡的obvious……等,較比其他專輯更常出現表達信任的詞彙。同時,thank u, next這張專輯不僅是Ariana最憤怒的專輯,還是最傷心的專輯。thank u, next發行在2019年2月,與Sweetener只隔了不到半年。實際上,thank u, next在Sweetener發行不到兩個月就開始錄製、製作了。在這兩個月之內,Ariana的前男友Mac Miller在9月吸毒過量死亡,而且Ariana和Pete Davidson在10月解除婚約……經歷著一切之後,thank u, next這張專輯自然可以體現出憤怒、憂傷這些情感,我們也能看到,在joy一欄裡,thank u, next專輯得分最低,即thank u, next是Ariana「最憂傷、最不快樂」的專輯。
ix. 歌詞中哪些詞彙可以傳達這種情感
下面這張圖展現的是在所有Ariana的歌詞當中,傳達這些情感的詞彙哪些出現頻率最高。
圖18 表達這些情感的單詞哪些出現頻率最高?各情感分圖見下
這張圖不需要過多的解釋。最搞笑的大概就是disgust一欄當中,boy高居榜首,甚至是第二名的近3倍。「boy的情感包含『厭惡』」這個事實實在是太有趣了。不過,有趣歸有趣——我查了一下NRC詞典,發現詞典不包括「girl」這個單詞,說明NRC詞典確實是把「boy」當做語氣詞處理的。如果是當做語氣詞,boy可以傳達的情感不僅僅是「厭惡」,更多傳達的應該是「驚喜」。這些都是我們之後需要做以改進的。
IV. 歌曲之間的關聯
在這份研究結果的最後,我繪製了Ariana歌曲之間的關聯圖。這裡的「關聯」,指的是歌詞之間的關聯。我篩選出correlation大於0.17的歌曲,繪製如下統計圖:
圖19 Ariana Grande歌曲關聯圖
亂七八糟的關聯當中,bloodline和Knew Better / Forever Boy的關聯度高達0.273,為最高;其次是Just aLittle Bit of Your Heart和Baby I,關聯度為0.264。Just a Little Bit of Your Heart和Sometimes的關聯度則排在第3位,為0.255。Ariana的歌曲有35對的關聯度都高於0.2,而我上次做的Taylor Swift歌詞文本數據挖掘結果顯示,Taylor的歌曲只有4對關聯度高於0.2。這是一個有趣的結果。
V. 結論
這份報告寫到這裡就接近尾聲了。這份報告從2021年2月4日晚上開始寫起,一直到2021年2月5日晚上結束,用時一天多,我用R做情感分析真是越來越熟練了。
從研究結論來看,有不少機器分析的結果和真實情感還是有些許偏差,而且AFINN、Bing、NRC詞典的構建也有很大的改進之處。儘管如此,在經過我們不斷的練習與探索之後,我們得到的研究結論最終會越來越趨於完美。若你對我的研究結果有任何疑問、或者對我的研究方法有改進建議,請務必告訴我;也希望你可以更加理解Ariana歌詞的情感,我們下次再見!
點亮在看,分享給其他Ariana Grande歌迷!
一個寂寞與孤獨並存、用三弦奏樂的公眾號。
其實我是一名經濟學系的在讀大三學生,平日喜歡寫寫琴譜、聽聽音樂,現在寫寫代碼也成為了我的愛好。
我是Jasmine Allyson,感謝你的關注。