琚春華,黃治移,鮑福光
(1.浙江工商大學(xué)現(xiàn)代商貿(mào)研究中心 杭州310018;2.浙江工商大學(xué)計(jì)算機(jī)與信息工程學(xué)院 杭州310018;3.浙江工商大學(xué)工商管理學(xué)院 杭州310018)
隨著互聯(lián)網(wǎng)和數(shù)字音樂(lè)的不斷發(fā)展和普及,人們逐漸從音樂(lè)匱乏的時(shí)代走入音樂(lè)過(guò)載的時(shí)代。音樂(lè)過(guò)載帶來(lái)一個(gè)問(wèn)題:人們往往需要花費(fèi)大量的時(shí)間從海量的音樂(lè)庫(kù)中找到自己喜歡的音樂(lè),因此音樂(lè)推薦系統(tǒng)應(yīng)運(yùn)而生。
現(xiàn)今,關(guān)于音樂(lè)推薦系統(tǒng)的研究主要分為3類(lèi):基于內(nèi)容過(guò)濾的推薦[1],該方法通過(guò)獲取音樂(lè)的音頻特征或社會(huì)化網(wǎng)絡(luò)標(biāo)簽,為用戶推薦最近播放的相似音樂(lè),如蝦米網(wǎng)、SongTaste等熱門(mén)音樂(lè)網(wǎng)站。這種方法推薦結(jié)果直觀易理解且?guī)缀醪恍枰貏e的用戶歷史數(shù)據(jù),缺點(diǎn)是推薦結(jié)果缺乏新穎性、易受音樂(lè)特征提取能力的影響;基于用戶協(xié)同過(guò)濾的推薦[2],該方法基于用戶對(duì)音樂(lè)的評(píng)分?jǐn)?shù)據(jù),找到具有與該用戶最相似偏好的用戶,進(jìn)而推薦相似用戶評(píng)分最高的音樂(lè),如Ringo、Last.fm等音樂(lè)服務(wù)提供商。這種方法善于發(fā)掘用戶新的興趣點(diǎn)、可處理復(fù)雜的非結(jié)構(gòu)化對(duì)象,缺點(diǎn)是冷啟動(dòng)問(wèn)題和數(shù)據(jù)稀疏性;基于語(yǔ)境的推薦[3],該方法獲取用戶歷史的音樂(lè)評(píng)論、博客百科等文化背景知識(shí)、播放次數(shù)等數(shù)據(jù),記錄用戶偏好,為用戶推薦個(gè)性化的音樂(lè),如豆瓣電臺(tái),這種方法優(yōu)點(diǎn)是更具個(gè)性化、準(zhǔn)確率高,但缺點(diǎn)是語(yǔ)境信息數(shù)據(jù)量龐大,受語(yǔ)境提取準(zhǔn)確率影響。
上述音樂(lè)推薦研究主要集中在音樂(lè)本身的分類(lèi)及分析。然而,音樂(lè)最主要的功能是能夠引起共鳴、調(diào)節(jié)情緒、陶冶情操等,單單地從音樂(lè)本身的相似性和用戶的偏好很難發(fā)揮音樂(lè)的作用,人們往往更希望能夠按照自己的心情推薦適合的音樂(lè),如不高興的時(shí)候,可以推薦一些能夠使自己心情平復(fù)的音樂(lè)。
[4,5]研究音樂(lè)特征和用戶情緒之間的關(guān)系,根據(jù)用戶不同的情緒為用戶推薦適合的音樂(lè)。然而,其認(rèn)為所有的用戶無(wú)論是什么樣的背景因素,都對(duì)相同的音樂(lè)具有相同的情緒反應(yīng),顯然這是不合理的。參考文獻(xiàn)[6]為不同的用戶創(chuàng)建不同的情緒狀態(tài)轉(zhuǎn)換模型(emotion state transition model,ESTM),從而建立用戶情緒和音樂(lè)底層特征之間的關(guān)系,通過(guò)用戶實(shí)時(shí)輸入的環(huán)境信息,判斷用戶的實(shí)時(shí)情緒,根據(jù)ESTM將用戶的情緒調(diào)整到最佳狀態(tài)。但該研究需要用戶實(shí)時(shí)輸入環(huán)境信息,較為繁瑣,也沒(méi)有考慮人格因素對(duì)ESTM的影響。參考文獻(xiàn)[7]提出一個(gè)個(gè)性化的音樂(lè)情緒反應(yīng)預(yù)測(cè)分析方法,考慮使用者背景的差異性,預(yù)測(cè)使用者的音樂(lè)情緒反應(yīng),從而達(dá)到推薦的目的,但該研究并沒(méi)有考慮到人格因素的影響,且推薦依靠用戶最初的問(wèn)卷,如果后期用戶的情緒反應(yīng)發(fā)生變化,推薦并沒(méi)有相應(yīng)的改變。目前,針對(duì)用戶情緒的音樂(lè)推薦方法研究不夠成熟,融入人格因素的個(gè)性化音樂(lè)推薦方法還沒(méi)有被研究。
人格特質(zhì)早已成為對(duì)用戶進(jìn)行音樂(lè)偏好研究的重要對(duì)象。本文提出了一種融入音樂(lè)子人格特質(zhì)和社交網(wǎng)絡(luò)行為分析的音樂(lè)推薦方法,該方法通過(guò)關(guān)聯(lián)用戶發(fā)布在微博等社交媒體的數(shù)據(jù)信息和點(diǎn)播音樂(lè)記錄,挖掘用戶在不同情感狀態(tài)下的音樂(lè)偏好;然后,通過(guò)基于音樂(lè)偏好度預(yù)測(cè)的相似度計(jì)算方法,降低數(shù)據(jù)稀疏性對(duì)推薦結(jié)果的影響;最后,通過(guò)融入音樂(lè)子人格特質(zhì)的偏好度預(yù)測(cè)方法,將預(yù)測(cè)值Top N的項(xiàng)目推薦給用戶。
人格[8](personality)是個(gè)體內(nèi)部的心理特質(zhì)和機(jī)制的集合,具有組織性和相對(duì)持久性,它們影響到個(gè)體對(duì)心靈內(nèi)部的、物理的和社會(huì)環(huán)境的適應(yīng)以及與它們的相互作用。音樂(lè)子人格是基于個(gè)人氣質(zhì)特征和文化沉淀選擇傾向而呈現(xiàn)某些特征的[9],音樂(lè)子人格是個(gè)體對(duì)音樂(lè)感受的取向分析,對(duì)用戶音樂(lè)偏好研究具有重要的意義。基于此,鄒光宇[9]將音樂(lè)子人格用7個(gè)音樂(lè)氣質(zhì)特征來(lái)描述,具體描述見(jiàn)表1。
表1 音樂(lè)子人格特質(zhì)描述
本文在原有數(shù)字音樂(lè)網(wǎng)站的注冊(cè)界面上嵌入音樂(lè)子人格特質(zhì)分析模塊,即用戶首次登錄網(wǎng)站時(shí),填寫(xiě)由晴天心理中心鄒光宇等人提出的“晴天音樂(lè)子人格測(cè)評(píng)量表”(以下簡(jiǎn)稱量表),晴天音樂(lè)子人格量表不計(jì)總分,共有7個(gè)分量表,各有5道題組成,單個(gè)量表粗分范圍為5~35分,實(shí)際得分除以滿分35得出百分比值或者特征指數(shù)。
對(duì)于用戶(user)而言,其音樂(lè)子人格特質(zhì)的7個(gè)維度分別為A、B、C、D、E、F、G,用i=1,2,3,4,5,6,7簡(jiǎn)化表述;xj表示user對(duì)量表中第j題的打分,j=1,2,…,35;j=i+5k,k=0,1,2,3,4,k用以選擇區(qū)分不同題目所屬的音樂(lè)子人格特質(zhì)維度;則Oi表示維度i的得分。計(jì)算方法如式(1)所示。
由于音樂(lè)子人格是分析個(gè)體對(duì)音樂(lè)的情緒感受性,相似的音樂(lè)子人格對(duì)相同的音樂(lè)具有相似的感受,通過(guò)分析用戶實(shí)時(shí)情感,將音樂(lè)子人格融入推薦方法中,以便能夠更好地提高推薦方法的準(zhǔn)確性。
定義1(用戶集合)U={uk|k∈S},U表示用戶集合,S表示用戶的ID集合。
定義2(音樂(lè)子人格特質(zhì)向量)MPk=(A,B,C,D,E,F,G),k∈S,MPk表示用戶ID為k的用戶的音樂(lè)子人格特征向量,S表示用戶的ID集合。
定義3(用戶情感狀態(tài))Ek={Happy,Like,Anger,Sad,Fear,Disgust,Surprise},k∈S,Ek表示用 戶ID為k的用戶的情 感 狀 態(tài),happy,like,anger,sad,fear,disgust,surprise依次為樂(lè)、好、怒、哀、懼、惡、驚。
定義4(音樂(lè)集合)M={i|i∈I},M表示音樂(lè)集合,I表示音樂(lè)ID集合。
定義5(音樂(lè)特征)MCi=(PM,PS,IM,IS,PE,PD,LD,LS),i∈I,MCi表示音樂(lè)ID為i的音樂(lè)特征向量,I表示音樂(lè)ID集合,各特征具體描述見(jiàn)表2[10]。
表2 音樂(lè)特征
定義6(用戶情感—音樂(lè)關(guān)聯(lián))R=
本文的推薦模型分為兩個(gè)階段:第一個(gè)階段為用戶情感與音樂(lè)關(guān)聯(lián)過(guò)程,該階段主要完成音樂(lè)特征提取、用戶歷史微博情感分析、用戶情感與音樂(lè)關(guān)聯(lián);第二階段為實(shí)時(shí)推薦過(guò)程,主要包括用戶實(shí)時(shí)情感分析、基于音樂(lè)偏好度預(yù)測(cè)的音樂(lè)相似度計(jì)算、融入音樂(lè)子人格特征的偏好度預(yù)測(cè)。融入音樂(lè)子人格特質(zhì)和社交網(wǎng)絡(luò)行為的音樂(lè)推薦模型如圖1所示。
音樂(lè)通常分成單調(diào)和復(fù)調(diào)兩類(lèi),復(fù)調(diào)音樂(lè)是最一般的形式音樂(lè)。通常復(fù)調(diào)音樂(lè)由幾個(gè)音軌組成,一部分負(fù)責(zé)旋律,另一部分負(fù)責(zé)伴奏,負(fù)責(zé)旋律的音軌比負(fù)責(zé)伴奏的音軌包含了許多不同音高的獨(dú)特音符,本文選擇音高密度最高的音軌作為主音軌,因?yàn)樽髑彝ǔT谥饕糗壣鲜褂米瞠?dú)特的音符[10],音高密度定義如式(2)所示。
其中,NP為該音軌中獨(dú)特音高的數(shù)量;AP為MIDI標(biāo)準(zhǔn)中所有獨(dú)特音高的數(shù)量[11]。
根據(jù)獲得的音高密度PD,確定主音軌,在此基礎(chǔ)上,再根據(jù)定義5依次獲取其他的各個(gè)特征。音樂(lè)ID為i的音樂(lè)特征向量MCi=(PM,PS,IM,IS,PE,PD,LD,LS),i∈I,I表示音樂(lè)ID集合,各特征具體描述見(jiàn)表2[10]。
3.4.1 中文情感詞匯本體庫(kù)
本文采用大連理工大學(xué)信息檢索研究室(Information Retrieval Laboratory of Dalian University of Technology,DUTIR)提供的情感本體庫(kù)作為細(xì)粒度情感劃分的依據(jù),其情感分為7大類(lèi)21小類(lèi),情感強(qiáng)度分為1、3、5、7、9共5檔,共含有情感詞共計(jì)27 466個(gè)[12]??紤]到DUTIR情感本體庫(kù)中對(duì)于表情和最新的網(wǎng)絡(luò)詞語(yǔ)沒(méi)有收集,本文在其基礎(chǔ)上添加微博等社交媒體上流行的表情(如:[給力]、[威武])及流行詞匯(如呵呵、請(qǐng)?jiān)时?、何棄療),并人工?duì)這些表情及詞匯分類(lèi)并標(biāo)注情感強(qiáng)度。最終本文構(gòu)成的情感本體庫(kù)各個(gè)情感類(lèi)型的情感單詞個(gè)數(shù)見(jiàn)表3。
圖1 融入音樂(lè)子人格特質(zhì)和社交網(wǎng)絡(luò)行為的音樂(lè)推薦模型
表3 情感本體庫(kù)分布
本文根據(jù)情感類(lèi)別特點(diǎn)將七大類(lèi)情感又歸結(jié)為積極(positive)、消極(negative)和中立(neutral)3個(gè)情感傾向類(lèi),其中積極包含樂(lè)、好,消極包含怒、哀、懼、惡,中立包含驚[12]。
3.4.2 微博情感分析
對(duì)于用戶發(fā)布的某條微博,本文采用中國(guó)科學(xué)院ICTCLAS2013漢語(yǔ)詞法分詞系統(tǒng)進(jìn)行預(yù)處理??紤]到句子經(jīng)常會(huì)出現(xiàn)“但是”、“不過(guò)”等連接詞會(huì)將情感詞的情感反轉(zhuǎn),還收集了62個(gè)連接詞,當(dāng)情感詞與連接詞的距離小于2時(shí),則對(duì)其進(jìn)行情感傾向反轉(zhuǎn),如積極反轉(zhuǎn)為消極。本文微博情感判斷步驟如下。
步驟1根據(jù)分詞結(jié)果分別計(jì)算屬于happy、like、anger、sad、fear、disgust、surprise情感大類(lèi)情感詞強(qiáng)度之和,若全部為0,則結(jié)束,句子不含情感;否則,分別計(jì)算情感傾 向positive=happy+like,negative=anger+sad+fear+disgust,neutral=surprise。對(duì)出現(xiàn)情感反轉(zhuǎn)的情感詞,將其情感強(qiáng)度值累積到對(duì)立的情感傾向中,例如,原情感傾向?qū)儆趐ositive,則將其情感強(qiáng)度值加入negative中,若原情感傾向?qū)儆趎egative,則將其情感強(qiáng)度值加入positive。
步驟2判斷情感傾向positive、negative、neutral值大小。若positive最大,則為積極句;若negative最大,則為消極句;若neutral最大,則為中立句。
步驟3根據(jù)步驟2判斷的情感傾向類(lèi),選擇該情感傾向類(lèi)中情感強(qiáng)度最大的情感類(lèi)別為該狀態(tài)用戶主導(dǎo)情感。如happy最大,則該句情感為happy。
例如,對(duì)于微博“周末加班好無(wú)語(yǔ),但是看見(jiàn)萌萌噠的漢良兄,心情一下子舒暢啦[可愛(ài)]”(“[可愛(ài)]”為微博表情),用分詞系統(tǒng)對(duì)其進(jìn)行分析,結(jié)果見(jiàn)表4。
表4 微博分詞結(jié)果
得到情感詞{“無(wú)語(yǔ)”,“舒暢”,“[可愛(ài)]”},其中“無(wú)語(yǔ)”屬于sad類(lèi)別,其情感強(qiáng)度為5,“舒暢”屬于happy類(lèi)別,其情感強(qiáng)度為5,“[可愛(ài)]”屬于happy類(lèi)別,其情感強(qiáng)度為5,連接詞“但是”與情感詞“無(wú)語(yǔ)”距離最近且距離為1。故各 情 感 類(lèi) 別 值 分 別 為:happy=10,like=0,anger=0,sad=0,fear=0,disgust=0,surprise=0,情感傾向positive=15,negative=0,surprise=0,可知positive值最大,故該微博為積極句;happy為positive中值最大的情感類(lèi),所以該狀態(tài)用戶情感為happy。
3.4.3 用戶情感與音樂(lè)關(guān)聯(lián)
不同用戶在相同情感狀態(tài)下對(duì)同一首音樂(lè)的偏好程度不一樣,同一用戶在不同情感狀態(tài)下對(duì)同一首音樂(lè)的偏好程度也會(huì)發(fā)生變化[13]。因此,為了挖掘用戶在不同情感狀態(tài)下的音樂(lè)偏好,本文結(jié)合上述微博等社交媒體情感狀態(tài)分析和用戶點(diǎn)播歌曲記錄,為每一個(gè)用戶建立情感與音樂(lè)之間的關(guān)聯(lián)模型。
當(dāng)一個(gè)用戶發(fā)布一條帶有情感的微博等社交媒體狀態(tài)時(shí),本文認(rèn)為只有在該條狀態(tài)發(fā)布的時(shí)間點(diǎn)附近用戶所點(diǎn)播的音樂(lè)是該用戶在該情感狀態(tài)下喜歡的音樂(lè),點(diǎn)播音樂(lè)的時(shí)間點(diǎn)離該情感狀態(tài)發(fā)布時(shí)間越近,用戶的偏好程度越高。本文用數(shù)值0~10表示用戶對(duì)該音樂(lè)的偏好度(與評(píng)分概念相同),數(shù)值越大,用戶的偏好程度越高,并構(gòu)建<用戶ID,音樂(lè)ID,情感狀態(tài),偏好度>四元組。
用戶發(fā)表的帶有情感的狀態(tài)通常分為兩種:普通狀態(tài)和音樂(lè)分享狀態(tài)。對(duì)于一條含有情感的音樂(lè)分享狀態(tài),最能代表用戶的音樂(lè)偏好,對(duì)于這種類(lèi)型的狀態(tài),本文直接分析用戶的情感并提取分享的音樂(lè)ID,并設(shè)置偏好度數(shù)值為10,得到<用戶ID,音樂(lè)ID,情感狀態(tài),偏好度>四元組。對(duì)于普通含有情感的狀態(tài),將時(shí)間窗口選定時(shí)間為30 min,也就是該條狀態(tài)發(fā)布時(shí)間點(diǎn)的前30 min和后30 min,如果在該時(shí)間段內(nèi)沒(méi)有點(diǎn)播記錄則舍棄這條狀態(tài);否則,選取該時(shí)間段內(nèi)播放時(shí)長(zhǎng)超過(guò)該音樂(lè)時(shí)長(zhǎng)一半的所有音樂(lè)(用戶播放時(shí)長(zhǎng)低于音樂(lè)時(shí)長(zhǎng)一半的音樂(lè),往往是用戶跳過(guò)的不喜歡的音樂(lè),這里去除這類(lèi)音樂(lè))。由于距離狀態(tài)發(fā)布時(shí)間點(diǎn)的不同,用戶的偏好程度也會(huì)不同,所以通過(guò)時(shí)間加權(quán)求和的方式求得用戶對(duì)點(diǎn)播音樂(lè)的偏好度,計(jì)算方式如式(3)所示。
其中,Tw為時(shí)間窗口長(zhǎng)度,本文中取值為30,Tim為音樂(lè)時(shí)長(zhǎng),t為微博狀態(tài)發(fā)布的時(shí)間,ti為第i首音樂(lè)點(diǎn)播的時(shí)間,tie為第i首歌播放結(jié)束時(shí)間,λi為第i首音樂(lè)偏好度,n為時(shí)間窗內(nèi)符合條件的所有音樂(lè)總數(shù)目。
例如,用戶564813087在2015年6月27日12∶10∶23發(fā)布了一條內(nèi)容為“周末加班好無(wú)語(yǔ),但是看見(jiàn)萌萌噠的漢良兄,心情一下子舒暢啦[可愛(ài)]”的微博,通過(guò)微博情感分析,得到該用戶的情感狀態(tài)為happy。該用戶在2015年6月27日12∶10∶23前后30 min點(diǎn)播的音樂(lè)列表見(jiàn)表5。
表5 用戶564813087在2015年6月27日12∶10∶23前后30 min點(diǎn)播記錄
由于音樂(lè)《行走的力量》播放的時(shí)長(zhǎng)小于音樂(lè)時(shí)長(zhǎng)的一半,所以這里去除該條記錄。音樂(lè)《千百度》的偏好度得到四元組<564813087,5473235,happy,6.8>。音樂(lè)《最浪漫的事》的偏好度,所以得到如下的用戶情感與音樂(lè)四元組:<564813087,8334767,happy,9.4>。為了保證四元組的唯一性,如果用戶在相同情感狀態(tài)下再次點(diǎn)播相同的音樂(lè)時(shí),新產(chǎn)生的偏好度會(huì)替換原來(lái)的偏好度。
3.5.1 基于音樂(lè)偏好度預(yù)測(cè)的用戶相似度計(jì)算(SIRP)
傳統(tǒng)的用戶相似度計(jì)算,用戶之間對(duì)相同音樂(lè)進(jìn)行偏好度標(biāo)記得越多,計(jì)算相似的準(zhǔn)確性也就越高。然而,這種方法對(duì)于新用戶來(lái)說(shuō)存在一定的弊端,新用戶的音樂(lè)偏好度或評(píng)分?jǐn)?shù)據(jù)往往極端稀疏,通過(guò)這極少的偏好度和評(píng)分?jǐn)?shù)據(jù)去計(jì)算用戶相似度顯然不是很合理。
為了解決新用戶音樂(lè)偏好度或評(píng)分?jǐn)?shù)據(jù)稀疏的問(wèn)題,本文先通過(guò)計(jì)算音樂(lè)間的相似度,根據(jù)最相似音樂(lè)的已有偏好度λ去預(yù)測(cè)未標(biāo)記音樂(lè)的偏好度λ,增加用戶之間共同標(biāo)記偏好度的音樂(lè)數(shù),從而使得用戶相似度計(jì)算更加準(zhǔn)確。具體計(jì)算步驟如下[14]。
步驟1計(jì)算用戶u與用戶v有偏好度標(biāo)記音樂(lè)的并集Uuv,Uuv=Mu∪Mv,Mu與Mv分別表示用戶u與用戶v的有偏好度標(biāo)記的音樂(lè)集。
步驟2令用戶u沒(méi)有偏好度標(biāo)記的音樂(lè)集Nu=Uuv-Mu,對(duì)任意的音樂(lè)m∈Nu,計(jì)算音樂(lè)m與用戶u已有偏好度標(biāo)記音樂(lè)k之間的相似度,m軖與k軋分別表示音樂(lè)m與音樂(lè)k的特征向量,音樂(lè)m與音樂(lè)k的相似度計(jì)算如式(4)所示。
步驟3設(shè)置相似度閾值s,取相似度值大于s的音樂(lè)作為音樂(lè)m的最近鄰。若不存在最近鄰,則該音樂(lè)的偏好度為0;否則,利用式(5)來(lái)預(yù)測(cè)用戶u對(duì)音樂(lè)m的偏好度Pu,m。
其中,Sm表示音樂(lè)m的最近鄰音樂(lè)集,Pu,k表示用戶u對(duì)音樂(lè)k的偏好度。
步驟4同理,由步驟2和步驟3計(jì)算用戶v沒(méi)有偏好度標(biāo)記音樂(lè)的偏好度。得到所有偏好度后,利用式(6)計(jì)算用戶u與用戶v之間的相似度。
3.5.2 融入音樂(lè)子人格特質(zhì)的偏好度預(yù)測(cè)(MPP)
音樂(lè)心理學(xué)研究表明,具有相同人格的用戶其音樂(lè)偏好也會(huì)變得相似[15]。單獨(dú)使用偏好度或評(píng)分?jǐn)?shù)據(jù)進(jìn)行用戶偏好預(yù)測(cè),會(huì)存在一定的偏差,本文將音樂(lè)子人格特質(zhì)融入用戶的偏好預(yù)測(cè)中,以便更好地提高偏好預(yù)測(cè)結(jié)果的準(zhǔn)確性。用戶音樂(lè)子人格特質(zhì)相似度計(jì)算如式(7)所示。
根據(jù)Top N最近鄰選擇策略,分別從偏好相似用戶和人格相似用戶中選擇相應(yīng)的用戶作為鄰居。融入音樂(lè)子人格特質(zhì)的偏好度預(yù)測(cè)計(jì)算如式(8)所示。
其中,V和T分別表示偏好相似用戶集合和人格相似用戶集合,β和1-β分別表示偏好相似用戶和人格相似用戶在偏好度預(yù)測(cè)中的權(quán)重,權(quán)重取值通過(guò)交叉驗(yàn)證實(shí)驗(yàn)來(lái)設(shè)定。
3.5.3 推薦過(guò)程描述
輸入 用戶音樂(lè)子人格特質(zhì)、用戶點(diǎn)播音樂(lè)記錄、用戶微博等社交媒體數(shù)據(jù)。
輸出 用戶的音樂(lè)推薦列表。
步驟1用戶情感與音樂(lè)關(guān)聯(lián),根據(jù)用戶歷史微博數(shù)據(jù)和用戶點(diǎn)播音樂(lè)記錄,使用第3.4節(jié)方法,分析用戶微博情感狀態(tài),并計(jì)算用戶點(diǎn)播的音樂(lè)偏好度,構(gòu)建<用戶ID,音樂(lè)ID,情感狀態(tài),偏好度>四元組;
步驟2用戶實(shí)時(shí)情感分析,根據(jù)第3.4.2節(jié)方法分析用戶實(shí)時(shí)發(fā)布的微博情感,若微博不含任何情感傾向,則結(jié)束推薦;否則,繼續(xù)執(zhí)行下面操作;
步驟3基于音樂(lè)偏好度預(yù)測(cè)的用戶相似度計(jì)算,根據(jù)用戶實(shí)時(shí)情感狀態(tài),選擇對(duì)應(yīng)情感狀態(tài)的數(shù)據(jù),利用第3.5.1節(jié)方法計(jì)算音樂(lè)之間的相似度,選取大于音樂(lè)相似度閾值的最近鄰音樂(lè),并計(jì)算用戶對(duì)未標(biāo)記偏好度的音樂(lè)的偏好度,基于此計(jì)算用戶相似度;
步驟4選取鄰居集,利用用戶音樂(lè)子人格特質(zhì)計(jì)算用戶相似度,根據(jù)Top N最近鄰選擇策略,分別從偏好相似用戶和人格相似用戶選取相應(yīng)的用戶作為鄰居集;
步驟5融入音樂(lè)子人格特質(zhì)的偏好度預(yù)測(cè),根據(jù)鄰居集,利用式(8)預(yù)測(cè)用戶對(duì)未標(biāo)記偏好度的音樂(lè)的偏好度;
步驟6構(gòu)建推薦列表,根據(jù)對(duì)用戶未標(biāo)記偏好度的音樂(lè)的偏好度預(yù)測(cè),選取用戶在該情感狀態(tài)下已有音樂(lè)偏好度和預(yù)測(cè)的偏好度前Top N的音樂(lè)推薦給目標(biāo)用戶。
本文收集了263位用戶的微博數(shù)據(jù)及點(diǎn)播音樂(lè)記錄,共收集50 473條用戶發(fā)布的微博數(shù)據(jù)和29 530條用戶點(diǎn)播音樂(lè)記錄。為了保證用戶數(shù)據(jù)的可靠性,去除了純轉(zhuǎn)發(fā)、只有圖片等不能分析用戶情感狀態(tài)的微博數(shù)據(jù),然后去除了那些沒(méi)有填寫(xiě)音樂(lè)子人格量表的用戶。最終,本文的實(shí)驗(yàn)數(shù)據(jù)集中共包含226個(gè)用戶、43 625條用戶發(fā)布的微博數(shù)據(jù)以及29 530條用戶點(diǎn)播音樂(lè)記錄。
為了驗(yàn)證推薦算法的準(zhǔn)確性和確定推薦算法中相關(guān)參數(shù),本文將收集的數(shù)據(jù)分為訓(xùn)練集和測(cè)試集。為了保證用戶在訓(xùn)練集和測(cè)試集都有數(shù)據(jù),將用戶微博數(shù)據(jù)和點(diǎn)播音樂(lè)記錄提前關(guān)聯(lián)起來(lái),關(guān)聯(lián)的依據(jù)是以微博發(fā)布時(shí)間點(diǎn)的前30 min和后30 min內(nèi)用戶點(diǎn)播的音樂(lè)記錄,然后按照8∶2的比例將用戶的數(shù)據(jù)隨機(jī)分為訓(xùn)練集和測(cè)試集。
評(píng)價(jià)指標(biāo)的選擇可以有效評(píng)估推薦方法的推薦質(zhì)量,本文采用MAE和P@N作為評(píng)價(jià)指標(biāo)。
(1)MAE根據(jù)預(yù)測(cè)的用戶偏好度和實(shí)際的用戶偏好度來(lái)度量預(yù)測(cè)的準(zhǔn)確性,具體定義如式(9)所示[16]。
其中,pi為預(yù)測(cè)的用戶偏好度,qi為實(shí)際的用戶偏好度,N為已有偏好度項(xiàng)目數(shù)。
(2)P@N是根據(jù)推薦集中Top N的項(xiàng)目與目標(biāo)用戶實(shí)際偏好度前Top N的項(xiàng)目比較,計(jì)算其準(zhǔn)確度,具體定義如式(10)所示[16]。
P@N=推薦集中前Top N的項(xiàng)目包含用戶實(shí)際偏好度前Top N的項(xiàng)目數(shù)量
4.3.1 相似度計(jì)算方法比較
為了驗(yàn)證本文的用戶相似度計(jì)算方法的準(zhǔn)確性,本文基于協(xié)同過(guò)濾推薦算法分別使用余弦、Pearson及基于項(xiàng)目偏好度預(yù)測(cè)的相似度計(jì)算(SIRP)方法進(jìn)行比較,協(xié)同過(guò)濾推薦中使用式(11)作為偏好度預(yù)測(cè)計(jì)算式[17],SIRP方法中項(xiàng)目相似度閾值s通過(guò)交叉實(shí)驗(yàn)得到取值0.9最佳。實(shí)驗(yàn)結(jié)果如圖2、圖3所示。
圖2 3種相似度計(jì)算方法的MAE比較
圖3 3種相似度計(jì)算方法的比較
由實(shí)驗(yàn)結(jié)果圖2可知,在選取不同數(shù)量的最近鄰時(shí),使用SIRP方法比使用余弦和Pearson方法預(yù)測(cè)項(xiàng)目偏好度的準(zhǔn)確度更高,最近鄰數(shù)目K=10時(shí),相對(duì)余弦和Pearson方法改善最優(yōu),分別改善4.0%和5.1%。從圖3可以看出,不同數(shù)量的最近鄰,使用SIRP方法相對(duì)于使用余弦和Pearson方法在P@5和P@10的準(zhǔn)確度依然最好。綜上,與傳統(tǒng)的余弦和Pearson相似度計(jì)算方法相比,使用基于項(xiàng)目偏好度預(yù)測(cè)的相似度計(jì)算方法能夠獲得更好的推薦結(jié)果,這主要是因?yàn)轫?xiàng)目偏好度預(yù)測(cè)方法利用用戶已有偏好度的項(xiàng)目,通過(guò)相似度計(jì)算預(yù)測(cè)沒(méi)有偏好度的項(xiàng)目,可以有效降低數(shù)據(jù)稀疏性對(duì)推薦準(zhǔn)確度的影響,從而提高推薦的準(zhǔn)確性。
4.3.2 參數(shù)β對(duì)推薦結(jié)果的影響
由于偏好相似度計(jì)算和音樂(lè)子人格特質(zhì)相似度計(jì)算使用不同的數(shù)據(jù),其最近鄰居集在偏好度預(yù)測(cè)中的權(quán)重不同,最終的預(yù)測(cè)準(zhǔn)確度也會(huì)不同。該實(shí)驗(yàn)主要確定式(8)中的參數(shù)β的取值,實(shí)驗(yàn)取偏好相似用戶20個(gè)和人格相似用戶20個(gè)作為最近鄰居集。當(dāng)β=1時(shí),最近鄰居集只含偏好相似用戶20個(gè);當(dāng)β=0時(shí),最近鄰居集只含人格相似用戶20個(gè)。實(shí)驗(yàn)結(jié)果如圖4和圖5所示。
圖4 不同參數(shù)值β的MAE
由實(shí)驗(yàn)結(jié)果圖4和圖5可知,參數(shù)β取值不同對(duì)推薦結(jié)果的影響較大,β取值為0.7時(shí)推薦準(zhǔn)確度最高。這充分說(shuō)明偏好相似用戶和人格相似用戶對(duì)推薦結(jié)果影響的程度不同,同時(shí)也說(shuō)明本文引入權(quán)重β的合理性,后續(xù)試驗(yàn)參數(shù)β的取值為0.7。
4.3.3 融入音樂(lè)子人格特質(zhì)的音樂(lè)推薦
本實(shí)驗(yàn)通過(guò)與傳統(tǒng)協(xié)同推薦算法作比較,驗(yàn)證本文算法的有效性。實(shí)驗(yàn)中,設(shè)置最近鄰數(shù)量為30,融入音樂(lè)子人格特質(zhì)的推薦設(shè)置偏好相似用戶15個(gè)和人格相似用戶15個(gè),未融入音樂(lè)子人格特質(zhì)的推薦取偏好相似用戶或人格相似用戶30個(gè)。實(shí)驗(yàn)結(jié)果如圖6和圖7所示。
由圖6和圖7可知:融入音樂(lè)子人格特質(zhì)的推薦算法相對(duì)未融入的推薦算法準(zhǔn)確度更高,具有較小的MAE值和較大的P@N值;融入音樂(lè)子人格特質(zhì)的SIRP推薦可以提高推薦方法的質(zhì)量。實(shí)驗(yàn)結(jié)果表明,融入音樂(lè)子人格特質(zhì)的偏好度預(yù)測(cè)的有效性和準(zhǔn)確性。
圖5 不同參數(shù)值β的P@5和P@10
圖6 融入音樂(lè)人格特質(zhì)推薦算法的MAE比較
圖7 融入音樂(lè)人格特質(zhì)推薦算法的P@N比較
本文提出的融入音樂(lè)子人格特質(zhì)和社交網(wǎng)絡(luò)行為分析的推薦算法,與傳統(tǒng)的依賴于用戶評(píng)分?jǐn)?shù)據(jù)不同,本文提出的算法可以挖掘用戶在不同情感狀態(tài)下對(duì)音樂(lè)的偏好度,用戶不需對(duì)音樂(lè)進(jìn)行評(píng)分,通過(guò)用戶發(fā)布的實(shí)時(shí)微博情感分析,為用戶推薦在該情感狀態(tài)下喜歡聽(tīng)的音樂(lè)。為了降低數(shù)據(jù)稀疏性帶來(lái)的推薦質(zhì)量差的問(wèn)題,本文利用基于用戶音樂(lè)偏好度預(yù)測(cè)的相似度計(jì)算方法,利用用戶已有的音樂(lè)偏好度去預(yù)測(cè)沒(méi)有的音樂(lè)偏好度,提高了相似度計(jì)算的準(zhǔn)確性。為了進(jìn)一步提高推薦的質(zhì)量,將音樂(lè)子人格特質(zhì)融入音樂(lè)偏好度預(yù)測(cè)中。實(shí)驗(yàn)結(jié)果表明,融入音樂(lè)子人格特質(zhì)和社交網(wǎng)絡(luò)行為分析的推薦算法能夠提高推薦的準(zhǔn)確度。
參考文獻(xiàn)
1 Balabanovic M,Shoham Y.Fab:content-based,collaborative recommendation.Communications of the ACM,1997,40(3):66~72
2 Schafer J B,Dan F,Herlocker J,et al.Collaborative Filtering Recommender Systems.The Adaptive Web.Berlin Heidelberg:Springer,2007
3 Yildirim H,Krishnamoorthy M S.A random walk method for alleviating the sparsity problem in collaborative filtering.Proceedings of the 2008 ACM Conference on Recommender Systems(RecSys 08),Lausanne,Switzerland,2008:131~138
4 Shan M K,Kuo F F,Chiang M F,et al.Emotion-based music recommendation by affinity discovery from film music.Expert Systems with Applications,2009,36(4):7666~7674
5 Yoon K,Lee J,Kim M U.Music recommendation system using emotion triggering low-level features.IEEE Transactions on Consumer Electronics,2012,58(2):612~618
6 Han B J,Rho S,Jun S,et al.Music emotion classification and context-based music recommendation.Multimedia Tools Appl,2010(2):433~460
7 Yeh C C,Tseng S S,Tsai P C,et al.Building a Personalized Music Emotion Prediction System.Advances in Multimedia Information Processing-PCM 2006.Berlin Heidelberg:Springer,2006
8 Larsen R J,Buss D M.人格心理學(xué):人性的科學(xué)探索.郭永玉等譯.北京:人民郵電出版社,2012 Larsen R J,Buss D M.Person Psychology.Translatel by Guo Y Y,et al.Beijing:Posts& Telecom Press,2012
9 鄒光宇.晴天音樂(lè)子人格測(cè)評(píng)量表.中國(guó)音樂(lè)治療學(xué)會(huì)第十屆學(xué)術(shù)年會(huì)論文集,廣州,中國(guó),2011 Zou G Y.Fineday measurement scale of music sub-personality.Proceedings of the 10th Annual Conference of Chinese Society of Music Therapy,Guangzhou,China,2011
10 Chen H C,Chen A L P.A music recommendation system based on music and user grouping.Journal of Intelligent Information Systems,2005,24(2~3):113~132
11 Winsor P.Automated Music Composition.Automated Music Composition.Denton:University of North Texas Press,2000
12 劉楠.面向微博短文本的情感分析研究(博士學(xué)位論文).武漢:武漢大學(xué),2013 Liu N.Emotion analysis on short text for Weibo(doctor dissertation).Wuhan:Wuhan University,2013
13 Meyer L B.Music and emotion:distinctions and uncertainties.Series in Affective Science,2001,29(3):23
14 鄧愛(ài)林,朱揚(yáng)勇,施伯樂(lè).基于項(xiàng)目評(píng)分預(yù)測(cè)的協(xié)同過(guò)濾推薦算法.軟件學(xué)報(bào),2003,14(9):1621~1628 Deng A L,Zhu Y Y,Shi B L.A collaborative filtering recommendation algorithm based on item rating prediction.Journal of Software,2003,14(9):1621~1628
15 Delsing M J M H,Ter Bogt T F M,Engels R C M E,et al.Adolescents’music preferences and personality characteristics.European Journal of Personality,2008,22(2):109~130
16 胡勛,孟祥武,張玉潔等.一種融合項(xiàng)目特征和移動(dòng)用戶信任關(guān)系的推薦算法.軟件學(xué)報(bào),2014(8):1817~1830 Hu X,Meng X W,Zhang Y J,et al.Recommendation algorithm combing item features and trust relationship of mobile users.Journal of Software,2014(8):1817~1830
17 Adomavicius G,Tuzhilin A.Toward the next generation of recommender systems:a survey of the state-of-the-art and possible extensions.IEEE Transactions on Knowledge & Data Engineering,2005,17(6):734~749