一種基于多維時(shí)間序列分析的個(gè)性化音樂(lè)推薦系統(tǒng)及其實(shí)現(xiàn)方法
【專利摘要】本發(fā)明涉及一種基于多維時(shí)間序列分析的個(gè)性化音樂(lè)推薦系統(tǒng)及實(shí)現(xiàn)方法。其包括系統(tǒng)交互界面、候選歌曲數(shù)據(jù)庫(kù)、用戶行為數(shù)據(jù)庫(kù)以及時(shí)序推薦引擎。本發(fā)明充分考慮了歌曲分類標(biāo)準(zhǔn)的多樣性以及用戶聽(tīng)歌行為的時(shí)序性,在將歌曲建模為若干隱含主題概率分布的基礎(chǔ)上將用戶的收聽(tīng)行為建模為多維時(shí)間序列,進(jìn)而通過(guò)多維時(shí)間序列分析的方法挖掘用戶的行為習(xí)慣,并最終從候選歌曲數(shù)據(jù)庫(kù)中為用戶推薦合適的歌曲,提高了推薦的準(zhǔn)確性。
【專利說(shuō)明】一種基于多維時(shí)間序列分析的個(gè)性化音樂(lè)推薦系統(tǒng)及其實(shí)現(xiàn)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種基于多維時(shí)間序列分析的個(gè)性化音樂(lè)推薦系統(tǒng)及其實(shí)現(xiàn)方法。
【背景技術(shù)】
[0002]數(shù)字音樂(lè)和互聯(lián)網(wǎng)技術(shù)的蓬勃發(fā)展使歌曲的出現(xiàn)和傳播速度大大加快,而云服務(wù)和智能手機(jī)的出現(xiàn)則為人們提供了更加便利的途徑來(lái)收藏或收聽(tīng)數(shù)量龐大的音樂(lè)作品。然而,海量的歌曲造成了嚴(yán)重的信息過(guò)載問(wèn)題,導(dǎo)致人們無(wú)法快速地從中獲取符合自己喜好的歌曲。為了應(yīng)對(duì)這一問(wèn)題,音樂(lè)推薦系統(tǒng)應(yīng)運(yùn)而生,并且已經(jīng)成為當(dāng)前解決音樂(lè)領(lǐng)域信息過(guò)載問(wèn)題非常有潛力的方法。
[0003]音樂(lè)推薦系統(tǒng)本質(zhì)上是一種信息過(guò)濾系統(tǒng),其通過(guò)對(duì)用戶歷史行為習(xí)慣、用戶社會(huì)關(guān)系以及用戶所處環(huán)境等因素的分析,幫助用戶從不斷增長(zhǎng)的數(shù)據(jù)中過(guò)濾掉那些不必要的信息,從而為用戶推薦符合其喜好和習(xí)慣的優(yōu)質(zhì)歌曲。
[0004]按照檢索候選歌曲方式的不同,眾多的音樂(lè)推薦算法可以大致分為兩類:基于內(nèi)容的推薦和基于協(xié)同過(guò)濾的推薦。其中,基于內(nèi)容的推薦通過(guò)考察用戶所收聽(tīng)歌曲本身的屬性特征(聲調(diào)、音色、節(jié)奏等低層次聲學(xué)特征和標(biāo)簽、歌詞、曲作者信息等文本特征)來(lái)挖掘用戶的喜好和傾向特征,進(jìn)而為用戶推薦與這些特征相近的歌曲?;趨f(xié)同過(guò)濾的推薦主要通過(guò)考察用戶與用戶之間的關(guān)系,從而找出與目標(biāo)用戶相近的用戶,進(jìn)而依據(jù)相似用戶的行為為目標(biāo)用戶作出推薦(user-based)。還有一種基于協(xié)同過(guò)濾的推薦考察歌曲與歌曲之間的關(guān)系,找出與用戶所聽(tīng)歌曲近似的歌曲,并據(jù)此為用戶作出推薦(item-based)。
[0005]雖然目前的一些個(gè)性化推薦算法能夠?yàn)橛脩糇鞒鲆恍┩扑],但現(xiàn)有的技術(shù)仍存在一些問(wèn)題。這主要表現(xiàn)在以下幾點(diǎn):1,音樂(lè)的分類方法和標(biāo)準(zhǔn)眾多,而且這些標(biāo)準(zhǔn)往往不具有排他性,導(dǎo)致難以利用一組統(tǒng)一且準(zhǔn)確的特征對(duì)歌曲進(jìn)行刻畫(huà);2,傳統(tǒng)的推薦算法較少考慮歌曲時(shí)間短、消耗代價(jià)低、容易形成序列的特征;3,
[0006]歌曲具有強(qiáng)烈的感情色彩,用戶對(duì)歌曲的消費(fèi)對(duì)其所處的上下文環(huán)境比較敏感,而用戶收聽(tīng)歌曲所形成的序列恰好能夠反映這種上下文環(huán)境。
【發(fā)明內(nèi)容】
[0007]針對(duì)現(xiàn)有技術(shù)中存在的問(wèn)題,本發(fā)明的目的是提供一種基于多維時(shí)間序列分析的個(gè)性化音樂(lè)推薦系統(tǒng)及其實(shí)現(xiàn)方法,其可以較好的將歌曲劃分標(biāo)準(zhǔn)的不確定性以及用戶對(duì)上下文的敏感性融合起來(lái),從而為用戶作出更加合理的推薦。
[0008]為了實(shí)現(xiàn)上述目的,本發(fā)明通過(guò)一定方式將用戶在一定會(huì)話周期內(nèi)所收聽(tīng)的歌曲序列建模為一個(gè)多維時(shí)間序列并通過(guò)對(duì)該多維時(shí)間序列的分析挖掘用戶的行為習(xí)慣。本發(fā)明的具體方案為:一種基于多維時(shí)間序列分析的個(gè)性化音樂(lè)推薦系統(tǒng),它包括交互界面模塊、候選歌曲數(shù)據(jù)庫(kù)、用戶行為數(shù)據(jù)庫(kù)以及時(shí)序推薦引擎模塊;其中,所述交互界面模塊作為用戶與系統(tǒng)交互的接口,包括用戶向系統(tǒng)提交自己的收聽(tīng)行為以及系統(tǒng)為用戶推薦合適的歌曲;所述候選歌曲數(shù)據(jù)庫(kù)用于存儲(chǔ)歌曲的描述信息,包括歌曲的標(biāo)識(shí)符、歌曲名、藝術(shù)家、鏈接、縮略圖、用戶標(biāo)簽及頻次、歌詞信息;所述用戶行為數(shù)據(jù)庫(kù)用于存儲(chǔ)用戶與系統(tǒng)的交互行為,包括喜歡一首歌曲、跳過(guò)一首歌曲、將一首歌曲放進(jìn)垃圾桶;所述時(shí)序推薦引擎模塊是系統(tǒng)的核心部件,用于從候選歌曲數(shù)據(jù)庫(kù)和用戶行為數(shù)據(jù)庫(kù)中讀取數(shù)據(jù)并對(duì)歌曲和用戶行為建模,并在分析用戶行為特征的基礎(chǔ)上為從候選歌曲數(shù)據(jù)庫(kù)中為用戶推薦歌曲。
[0009]上述的個(gè)性化音樂(lè)推薦系統(tǒng),其進(jìn)一步特征在于:
[0010]所述交互界面模塊分為四個(gè)單元:展示區(qū)單元、操作區(qū)單元、信息區(qū)單元、輔助區(qū)單元,展示區(qū)單元用于展示歌曲對(duì)應(yīng)的圖片、歌詞內(nèi)容,操作區(qū)單元用于展示用戶可與系統(tǒng)交互的按鈕,信息區(qū)單元用于展示歌曲的曲名和作者信息,輔助信息區(qū)單元用于展示歌曲的時(shí)長(zhǎng)、播放進(jìn)度以及其他額外信息。
[0011]所述時(shí)序推薦引擎模塊用來(lái)分析用戶的行為序列以挖掘用戶的行為習(xí)慣并進(jìn)而為用戶生成一個(gè)合適的推薦列表,完成歌曲對(duì)應(yīng)文檔生成、主題模型建模、時(shí)間序列構(gòu)造、時(shí)間序列分析、推薦列表生成工作。
[0012]本發(fā)明同時(shí)公開(kāi)了一種基于多維時(shí)間序列分析的個(gè)性化音樂(lè)推薦方法,組建個(gè)性化音樂(lè)推薦系統(tǒng),其特征在于:
[0013]步驟一、用戶在系統(tǒng)上產(chǎn)生動(dòng)作:
[0014]包含UN個(gè)用戶的用戶集U= Iu1, U2,…,uUN},這里UN=|U|表示所有用戶的數(shù)目;對(duì)于用戶U,其在系統(tǒng)上產(chǎn)生的動(dòng)作action包括“喜歡”(like)和“不喜歡”(dislike)兩類,而“喜歡”包括用戶聽(tīng) 完一首歌曲總時(shí)長(zhǎng)的50%、顯式地點(diǎn)擊表達(dá)喜歡的按鈕操作,“不喜歡”包括用戶直接跳過(guò)一首歌曲、收聽(tīng)一首歌曲的時(shí)間少于歌曲總時(shí)長(zhǎng)的50%以及將歌曲扔進(jìn)垃圾桶操作;
[0015]步驟二、系統(tǒng)將用戶動(dòng)作收集到用戶行為數(shù)據(jù)庫(kù):
[0016]系統(tǒng)將用戶的行為以四元組(user, song, action, timestamp)的形式存儲(chǔ)到用戶行為數(shù)據(jù)庫(kù);其中,user表示用戶及其標(biāo)識(shí)符,song表示歌曲及其標(biāo)識(shí)符,action表示用戶user對(duì)歌曲song產(chǎn)生的動(dòng)作,timestamp表征用戶user對(duì)歌曲song產(chǎn)生動(dòng)作action的時(shí)刻;所述四元組表示用戶user在時(shí)刻timestamp對(duì)歌曲song產(chǎn)生了 action動(dòng)作;
[0017]步驟三、時(shí)序推薦引擎模塊讀取候選歌曲數(shù)據(jù)庫(kù)和用戶行為數(shù)據(jù)庫(kù)信息,通過(guò)建模與分析為用戶生成一個(gè)包含若干歌曲的推薦列表:
[0018]包含SN首歌曲的歌曲集S = {81,82,...,^},這里3#|5表示所有候選歌曲的數(shù)目;對(duì)于用戶U,為其推薦的歌曲列表為R(U) = {sul,Su2,...,SuN},其中N為推薦列表長(zhǎng)度,sui e S(1 < i < N)表示為用戶u推薦的歌曲列表中的第i首歌曲,所述第i首歌曲存在于歌曲集S中;
[0019]步驟四、交互界面模塊將推薦列表展示出來(lái);
[0020]步驟五、用戶收聽(tīng)列表中的歌曲。
[0021]上述的個(gè)性化音樂(lè)推薦方法,步驟三中時(shí)序推薦引擎模塊,具體工作步驟為:
[0022]步驟3.1、讀取歌曲對(duì)應(yīng)的文本標(biāo)簽信息,構(gòu)造歌曲對(duì)應(yīng)的文本文檔:
[0023]包含tagN個(gè)有效標(biāo)簽的標(biāo)簽集Tag = Itag1, tag2,...,tagtagN},這里tagN= I Tag表示所有有效標(biāo)簽的數(shù)目;包含SN首歌曲對(duì)應(yīng)文本文檔的文檔集Doc =Idoc1, doc2,..., docSN};三元組(song, tag, count)表示有效標(biāo)簽tag被用戶標(biāo)記到歌曲song 上 count 次;
[0024]按照如下方式構(gòu)造歌曲song對(duì)應(yīng)的文本文檔doc ;
[0025]
【權(quán)利要求】
1.一種基于多維時(shí)間序列分析的個(gè)性化音樂(lè)推薦系統(tǒng),其特征在于: 包括交互界面模塊、候選歌曲數(shù)據(jù)庫(kù)、用戶行為數(shù)據(jù)庫(kù)以及時(shí)序推薦引擎模塊;其中,所述交互界面模塊作為用戶與系統(tǒng)交互的接口,包括用戶向系統(tǒng)提交自己的收聽(tīng)行為以及系統(tǒng)為用戶推薦合適的歌曲;所述候選歌曲數(shù)據(jù)庫(kù)用于存儲(chǔ)歌曲的描述信息,包括歌曲的標(biāo)識(shí)符、歌曲名、藝術(shù)家、鏈接、縮略圖、用戶標(biāo)簽及頻次、歌詞信息;所述用戶行為數(shù)據(jù)庫(kù)用于存儲(chǔ)用戶與系統(tǒng)的交互行為,包括喜歡一首歌曲、跳過(guò)一首歌曲、將一首歌曲放進(jìn)垃圾桶;所述時(shí)序推薦引擎模塊是系統(tǒng)的核心部件,用于從候選歌曲數(shù)據(jù)庫(kù)和用戶行為數(shù)據(jù)庫(kù)中讀取數(shù)據(jù)并對(duì)歌曲和用戶行為建模,并在分析用戶行為特征的基礎(chǔ)上從候選歌曲數(shù)據(jù)庫(kù)中為用戶推薦歌曲。
2.根據(jù)權(quán)利要求1所述的個(gè)性化音樂(lè)推薦系統(tǒng),其特征在于: 所述交互界面模塊分為四個(gè)單元:展示區(qū)單元、操作區(qū)單元、信息區(qū)單元、輔助區(qū)單元,展示區(qū)單元用于展示歌曲對(duì)應(yīng)的圖片、歌詞內(nèi)容,操作區(qū)單元用于展示用戶可與系統(tǒng)交互的按鈕,信息區(qū)單元用于展示歌曲的曲名和作者信息,輔助區(qū)單元用于展示歌曲的時(shí)長(zhǎng)、播放進(jìn)度以及其他額外信息。
3.根據(jù)權(quán)利要求1所述的個(gè)性化音樂(lè)推薦系統(tǒng),其特征在于: 所述時(shí)序推薦引擎模塊用來(lái)分析用戶的行為序列以挖掘用戶的行為習(xí)慣并進(jìn)而為用戶生成一個(gè)合適的推薦列表,完成歌曲對(duì)應(yīng)文檔生成、主題模型建模、時(shí)間序列構(gòu)造、時(shí)間序列分析、推薦列表生成工作。
4.一種基于多維時(shí)間序列分析的個(gè)性化音樂(lè)推薦方法,組建權(quán)利要求1所述的個(gè)性化音樂(lè)推薦系統(tǒng),其特征在于: 步驟一、用戶在系統(tǒng)上產(chǎn)生動(dòng)作: 包含UN個(gè)用戶的用戶集U= Iu1, u2,...,uUN},這里UN=|U|表示所有用戶的數(shù)目;對(duì)于用戶U,其在系統(tǒng)上產(chǎn)生的動(dòng)作action包括“喜歡”(like)和“不喜歡”(dislike)兩類,而“喜歡”包括用戶聽(tīng)完一首歌曲總時(shí)長(zhǎng)的50%、顯式地點(diǎn)擊表達(dá)喜歡的按鈕操作,“不喜歡”包括用戶直接跳過(guò)一首歌曲、收聽(tīng)一首歌曲的時(shí)間少于歌曲總時(shí)長(zhǎng)的50%以及將歌曲扔進(jìn)垃圾桶操作; 步驟二、系統(tǒng)將用戶動(dòng)作收集到用戶行為數(shù)據(jù)庫(kù): 系統(tǒng)將用戶的行為以四元組(user, song, action, timestamp)的形式存儲(chǔ)到用戶行為數(shù)據(jù)庫(kù);其中,user表示用戶及其標(biāo)識(shí)符,song表示歌曲及其標(biāo)識(shí)符,action表示用戶user對(duì)歌曲song產(chǎn)生的動(dòng)作,timestamp表征用戶user對(duì)歌曲song產(chǎn)生動(dòng)作action的時(shí)刻;所述四元組表示用戶user在時(shí)刻timestamp對(duì)歌曲song產(chǎn)生了 action動(dòng)作; 步驟三、時(shí)序推薦引擎模塊讀取候選歌曲數(shù)據(jù)庫(kù)和用戶行為數(shù)據(jù)庫(kù)信息,通過(guò)建模與分析為用戶生成一個(gè)包含若干歌曲的推薦列表: 包含SN首歌曲的歌曲集S = {81,82,...,^},這里5#|5|表示所有候選歌曲的數(shù)目;對(duì)于用戶U,為其推薦的歌曲列表為R(U) = {sul,Su2,...,SuN},其中N為推薦列表長(zhǎng)度,sui e S(1 ≤ i≤ N)表示為用戶u推薦的歌曲列表中的第i首歌曲,所述第i首歌曲存在于歌曲集S中; 步驟四、交互界面模塊將推薦列表展示出來(lái); 步驟五、用戶收聽(tīng)列表中的歌曲。
5.根據(jù)權(quán)利要求4所述的個(gè)性化音樂(lè)推薦方法,其特征在于:步驟三中時(shí)序推薦引擎模塊,具體工作步驟為: 步驟3.1、讀取歌曲對(duì)應(yīng)的文本標(biāo)簽信息,構(gòu)造歌曲對(duì)應(yīng)的文本文檔: 包含tagN個(gè)有效標(biāo)簽的標(biāo)簽集Tag = Itag1, tag2,...,tagtagN},這里tagN=|Tag表示所有有效標(biāo)簽的數(shù)目;包含SN首歌曲對(duì)應(yīng)文本文檔的文檔集Doc =Idoc1, doc2,..., docSN};三元組(song, tag, count)表示有效標(biāo)簽tag被用戶標(biāo)記到歌曲song 上 count 次; 步驟3.2、通過(guò)主題模型建模對(duì)歌曲對(duì)應(yīng)的文檔集合進(jìn)行分析,將歌曲建模為K個(gè)隱含主題的概率分布: 包含所得隱含主題的主題集τ = It1, t2,...,tK},這里K= | t |表示所有隱含主題的數(shù)目;歌曲s被表不為K個(gè)隱含王題的概率分布s = (W1, W2,..., Wi,..., wK) (1≤ i ≤ K),其中Wi表示歌曲s隸屬于隱含主題\的概率; 步驟3.3、讀取用戶在當(dāng)前會(huì)話周期內(nèi)的動(dòng)作并按照時(shí)間順序排列,形成一個(gè)歌曲序列; 步驟3.4、將步驟3.3中的歌曲序列按照步驟3.2中得到的隱含主題展開(kāi),得到一個(gè)KXn的二維矩陣M(U);
6.根據(jù)權(quán)利要求5所述的個(gè)性化音樂(lè)推薦方法,其特征在于:步驟3.1中,按照如下方式構(gòu)造歌曲song對(duì)應(yīng)的文本文檔doc ;
7.根據(jù)權(quán)利要求5所述的個(gè)性化音樂(lè)推薦方法,其特征在于:步驟3.3中,所述會(huì)話周期指用戶連續(xù)不中斷產(chǎn)生動(dòng)作的時(shí)間區(qū)間, I τ ≤ τ H I < ε (I < τ ≤ η) 其中,τ表示動(dòng)作發(fā)生時(shí)刻,ε表示最長(zhǎng)時(shí)間間隔; 對(duì)于用戶在某一時(shí)刻τ的行為事件,用三元組e (U,τ,8)表示,即用戶u在時(shí)刻τ收聽(tīng)了歌曲s, s可由c和τ唯一決定,因此e(u, τ,s)可簡(jiǎn)化為e (U,τ );考察用戶在一定會(huì)話周期內(nèi)的積極行為-“喜歡”,定義用戶的積極行為序列,
Q (U) = < e (U,τ≤ , e (u, τ 2),...,e (U,τ n) > 其中,n為用戶u所“喜歡”的歌曲數(shù)目,τ為事件發(fā)生的時(shí)刻,且、< τ 2 <...< Ti< τ i+1 < …< τ n(l < i ≤ η)。
8.根據(jù)權(quán)利要求5所述的個(gè)性化音樂(lè)推薦方法,其特征在于:步驟3.7中,歌曲之間的距離按下式進(jìn)行計(jì)算,
9.根據(jù)權(quán)利要求5所述的個(gè)性化音樂(lè)推薦方法,其特征在于:步驟3.8中,R(U)={sui,Su2,...,SunI ο
【文檔編號(hào)】G06F17/30GK103793537SQ201410077177
【公開(kāi)日】2014年5月14日 申請(qǐng)日期:2014年3月4日 優(yōu)先權(quán)日:2014年3月4日
【發(fā)明者】呂建, 徐鋒, 王守濤 申請(qǐng)人:南京大學(xué)