一種基于神經(jīng)網(wǎng)絡(luò)模型的上下文感知音樂推薦方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于數(shù)據(jù)挖掘及推薦技術(shù)領(lǐng)域,具體涉及一種基于神經(jīng)網(wǎng)絡(luò)模型的上下文 感知音樂推薦方法。
【背景技術(shù)】
[0002] 隨著移動(dòng)通信帶寬的增加、終端處理能力的增強(qiáng)、以及傳感技術(shù)的發(fā)展,越來越多 的用戶通過移動(dòng)終端來收聽音樂。移動(dòng)用戶的聽歌喜好通常會(huì)隨著時(shí)間、空間、天氣、身體 狀況不同而變化,傳統(tǒng)的音樂推薦系統(tǒng)已不適用于個(gè)性化移動(dòng)網(wǎng)絡(luò)服務(wù)領(lǐng)域。近年來,基于 上下文感知的音樂推薦系統(tǒng)通過將上下文信息引入推薦系統(tǒng),成為一個(gè)新興的研究領(lǐng)域。 在研究中發(fā)現(xiàn),把上下文信息融入推薦系統(tǒng),相當(dāng)于把傳統(tǒng)的"用戶-項(xiàng)目"二維評(píng)分效用模 型擴(kuò)展為包含多種上下文信息的多維評(píng)分效用模型,有利于提高推薦精確度。因此利用移 動(dòng)終端提供的位置、時(shí)間、空間、天氣等上下文信息,推薦更符合用戶偏好、當(dāng)前心情和周圍 環(huán)境的音樂,具有重要的研究意義。
[0003] 目前,基于上下文信息的音樂推薦方法通常采用了 "多維推薦"轉(zhuǎn)化為"二維推薦" 的設(shè)計(jì)思路,在推薦結(jié)果生成之前、生成之后或者生成的過程中,利用當(dāng)前上下文信息過濾 掉與當(dāng)前上下文信息不匹配的數(shù)據(jù),同時(shí)采用傳統(tǒng)二維推薦技術(shù)(包含協(xié)同過濾、基于內(nèi)容 的過濾、基于知識(shí)的過濾、混合式過濾等)生成推薦結(jié)果。因?yàn)槔昧藗鹘y(tǒng)推薦系統(tǒng)的成熟 技術(shù),此類方法成為目前應(yīng)用最廣的上下文感知推薦方法。
[0004] 然而,現(xiàn)有技術(shù)在音樂與用戶的匹配過程只考慮了用戶的上下文信息,缺乏對(duì)音 樂內(nèi)容的深層解析,認(rèn)為所有音樂都是同質(zhì)的,音樂的不同屬性來自用戶在不同情境下對(duì) 音樂具有的不同喜好程度,即由音樂的用戶屬性對(duì)不同音樂進(jìn)行差異化區(qū)分,從而忽略了 音樂作為一類多媒體文件,其自身具有的上下文屬性。這種推薦方法過于主觀,降低了用戶 與音樂的耦合性,從而對(duì)推薦系統(tǒng)的精度有所影響。在很多場(chǎng)景下,用戶的收聽上下文往往 會(huì)主導(dǎo)用戶的需求,例如用戶的全局偏好包括搖滾樂和純音樂,但是用戶在晚上休息的時(shí) 候,會(huì)更喜歡后者。
【發(fā)明內(nèi)容】
[0005] 針對(duì)現(xiàn)有技術(shù)所存在的上述技術(shù)問題,本發(fā)明提供了一種基于神經(jīng)網(wǎng)絡(luò)模型的上 下文感知音樂推薦方法,能夠讓推薦的音樂符合用戶的實(shí)時(shí)需求和偏好。
[0006] -種基于神經(jīng)網(wǎng)絡(luò)模型的上下文感知音樂推薦方法,包括如下步驟:
[0007] (1)收集用戶的完整音樂收聽序列,所述的完整音樂收聽序列包含用戶歷史對(duì)于 音樂的每條收聽記錄;
[0008] Ο?枏抿所右田戶的嘗聦咅序刟.建fr W下日烷函救T..
[0009]
[0010] 其中:A表示所有用戶組成的用戶集群,Au表示用戶集群A中的第U個(gè)用戶,Hu表示用 戶A u的完整音樂收聽序列,p(Au|Hu)表示完整音樂收聽序列Hu下觀測(cè)到用戶A u的概率,/f表 示完整音樂收聽序列Hu中的第i條收聽記錄,表示收聽記錄的上下文記錄即包括收 聽記錄¥的前c條以及后c條收聽記錄,#Ρ;?私,)表示上下文記錄下觀測(cè)到收聽記錄 /?,的概率,c為大于0的自然數(shù),i和u均為自然數(shù)且1 < i < m,1 < u < n,m為完整音樂收聽序列 Hu中收聽記錄的總數(shù)量,η為用戶集群A中用戶的總數(shù)量;
[0011] (3)對(duì)上述目標(biāo)函數(shù)L進(jìn)行最大化求解,以求得樂庫(kù)中每首音樂的特征向量以及每 個(gè)用戶的全局興趣向量;
[0012] (4)從用戶完整音樂收聽序列中提取當(dāng)前時(shí)刻之前一段時(shí)間內(nèi)的收聽記錄組成近 期音樂收聽序列;進(jìn)而對(duì)近期音樂收聽序列中各條收聽記錄所對(duì)應(yīng)音樂的特征向量求平 均,得到用戶的上下文收聽興趣向量;
[0013] (5)根據(jù)每首音樂的特征向量以及用戶的全局興趣向量和上下文收聽興趣向量, 計(jì)算出用戶對(duì)于每首音樂的興趣值;進(jìn)而根據(jù)興趣值對(duì)樂庫(kù)中的所有音樂從大到小排序, 并提取興趣值最大的若干首音樂推薦給用戶。
[0014] 所述概率p(Au|Hu)的表達(dá)式如下:
[0015]
[0016] 其中:vu為用戶Au的全局興趣向量,L為完整音樂收聽序列Hu中各條收聽記錄所 對(duì)應(yīng)音樂的平均特征向量, T表示轉(zhuǎn)置。
[0017]所述概率虼,)的表達(dá)式如下:
[0018]
[0019] 其中:為收聽記錄¥所對(duì)應(yīng)音樂的特征向量,|^.'±,.為上下文記錄/^。中各條 收聽記錄所對(duì)應(yīng)音樂的平均特征向量,τ表示轉(zhuǎn)置,1?為樂庫(kù)中第j首音樂的特征向量,j為自 然數(shù)且B j < k,k為樂庫(kù)中音樂的總數(shù)量。
[0020] 所述的步驟(5)中通過以下公式計(jì)算用戶對(duì)于每首音樂的興趣值:
[0021]
[0022] 其中:<為用戶Au對(duì)于樂庫(kù)中第j首音樂的興趣值,為樂庫(kù)中第j首音樂的特征 向量,vu為用戶Au的全局興趣向量,zu為用戶Au的上下文收聽興趣向量, τ表示轉(zhuǎn)置,j為自然 數(shù)且1 < j < k,k為樂庫(kù)中音樂的總數(shù)量。
[0023] 本發(fā)明首次利用神經(jīng)網(wǎng)絡(luò)模型從用戶的完整收聽序列中獲取音樂的特征和用戶 的全局興趣,分別表示為音樂的特征向量和用戶的全局興趣特征向量,為音樂特征提取困 難以及用戶全局興趣建模困難的問題提供了一種可靠的解決方法;本發(fā)明根據(jù)用戶的最近 收聽序列中的音樂的特征向量獲取用戶的收聽上下文興趣,為用戶的收聽上下文的提取和 建模困難的問題提供了一種可行的思路;綜合考慮用戶全局興趣和收聽上下文興趣的推薦 方法,本發(fā)明能夠使得推薦的音樂更符合目標(biāo)用戶當(dāng)前的偏好,從而減少用戶的搜索成本 并提高用戶的滿意度。
【附圖說明】
[0024] 圖1為本發(fā)明音樂推薦方法的系統(tǒng)架構(gòu)示意圖。
[0025] 圖2為本發(fā)明音樂推薦方法中的用戶音樂偏好預(yù)測(cè)流程示意圖。
【具體實(shí)施方式】
[0026] 為了更為具體地描述本發(fā)明,下面結(jié)合附圖及【具體實(shí)施方式】對(duì)本發(fā)明的技術(shù)方案 進(jìn)行詳細(xì)說明。
[0027] 本發(fā)明基于收聽上下文感知的音樂推薦方法包括以下步驟:
[0028] (1)獲取用戶的完整的音樂收聽序列,收聽序列中的每條記錄包括音樂ID、播放時(shí) 間、播放設(shè)備。
[0029] (2)利用神經(jīng)網(wǎng)絡(luò)模型處理所有用戶的完整收聽序列,將每首音樂和每個(gè)用戶表 示為特征向量。該神經(jīng)網(wǎng)絡(luò)模型的目標(biāo)函數(shù)公式為:
[0030]
[0031 ]其中,夕(《 I:是給定用戶u的完整音樂收聽序列Wf :,。丨下觀測(cè)到用戶 u的概率,定義為:
[0032]<