盧盛祺,管 連,金 敏,韓景倜
(1.上海財(cái)經(jīng)大學(xué) 信息管理與工程學(xué)院,上海 200433;2.上海財(cái)經(jīng)大學(xué)上海市金融信息技術(shù)重點(diǎn)實(shí)驗(yàn)室,上海 200433;3.復(fù)旦大學(xué) 軟件學(xué)院,上海 200433;4.國(guó)際商業(yè)機(jī)器(中國(guó))有限公司,北京 100101)
?
LDA模型在網(wǎng)絡(luò)視頻推薦中的應(yīng)用*
盧盛祺1,2,3,管連4,金敏3,韓景倜1,2
(1.上海財(cái)經(jīng)大學(xué) 信息管理與工程學(xué)院,上海 200433;2.上海財(cái)經(jīng)大學(xué)上海市金融信息技術(shù)重點(diǎn)實(shí)驗(yàn)室,上海 200433;3.復(fù)旦大學(xué) 軟件學(xué)院,上海 200433;4.國(guó)際商業(yè)機(jī)器(中國(guó))有限公司,北京 100101)
視頻推薦系統(tǒng)最主要的功能就是從用戶(hù)的歷史行為中發(fā)現(xiàn)用戶(hù)興趣偏好,然后找出其可能感興趣的視頻并展示給用戶(hù)。該文針對(duì)用戶(hù)的視頻選擇過(guò)多、視頻轉(zhuǎn)化率較低等問(wèn)題,提出了一種基于LDA模型的電影推薦方法。首先將視頻的評(píng)論文本集轉(zhuǎn)化為評(píng)論-主題-詞語(yǔ)的三層貝葉斯模型,提取每個(gè)視頻的評(píng)論關(guān)鍵詞,再基于目標(biāo)用戶(hù)的歷史行為發(fā)現(xiàn)其偏好的視頻關(guān)鍵詞集合,最后利用杰卡德相似系數(shù),預(yù)測(cè)用戶(hù)可能感興趣的視頻,以實(shí)現(xiàn)基于內(nèi)容的個(gè)性化視頻推薦服務(wù)。實(shí)驗(yàn)表明,該方法可以提高視頻推薦的精度,使得視頻轉(zhuǎn)化率得到較好的提升。
LDA模型;用戶(hù)偏好;視頻推薦;電子推薦;貝葉斯模型
引用格式:盧盛祺,管連,金敏,等. LDA模型在網(wǎng)絡(luò)視頻推薦中的應(yīng)用[J].微型機(jī)與應(yīng)用,2016,35(11):74-79.
隨著互聯(lián)網(wǎng)的快速發(fā)展和網(wǎng)民數(shù)量的迅速上升,人們正處在信息過(guò)載的時(shí)代。尤其在網(wǎng)絡(luò)視頻領(lǐng)域,各種視頻數(shù)據(jù)正在以驚人的速度增長(zhǎng)。例如,YouTube視頻分享網(wǎng)站目前已經(jīng)擁有超過(guò)1.5×108個(gè)視頻[1],國(guó)內(nèi)的專(zhuān)業(yè)視頻網(wǎng)站優(yōu)酷土豆、騰訊視頻、搜狐、愛(ài)奇藝等,視頻播放量和瀏覽次數(shù)也每日劇增。面對(duì)海量的視頻信息,用戶(hù)很難找到自己感興趣的內(nèi)容,而視頻提供商又迫切地需要將優(yōu)質(zhì)的視頻準(zhǔn)確地推送給用戶(hù),以提高視頻轉(zhuǎn)化率和用戶(hù)停留時(shí)間。推薦系統(tǒng)被認(rèn)為是行之有效的方法,其可以建立用戶(hù)與用戶(hù)、用戶(hù)與視頻之間的關(guān)系,因而成為近幾年來(lái)視頻領(lǐng)域的研究熱點(diǎn)。
目前在視頻網(wǎng)站中使用的推薦方法主要有相關(guān)性推薦和個(gè)性化推薦兩大類(lèi),相關(guān)性推薦就是把用戶(hù)正在觀看或?yàn)g覽的相關(guān)視頻推薦給用戶(hù),個(gè)性化推薦是根據(jù)用戶(hù)的歷史行為推斷用戶(hù)的興趣愛(ài)好,并以此推薦用戶(hù)可能感興趣的視頻列表。在90年代中期,美國(guó)人工智能協(xié)會(huì)春季會(huì)議(AAAI)、ACM智能用戶(hù)接口會(huì)議(ACMIUI)、國(guó)際人工智能聯(lián)合大會(huì)(IJCAI)等國(guó)際會(huì)議上發(fā)表了多篇有關(guān)個(gè)性化推薦系統(tǒng)的論文[2],此后,推薦系統(tǒng)在電子商務(wù)、網(wǎng)絡(luò)視頻等領(lǐng)域得到深入研究。例如,在2006年,美國(guó)著名的電影租賃公司Netflix就推出了關(guān)于推薦系統(tǒng)研究的比賽,在2005~2009年間,更多的推薦算法[3-6]被提出,并取得令人矚目的研究成果。從視頻推薦的研究技術(shù)上看,目前主流的視頻推薦方法有基于協(xié)同過(guò)濾的推薦和基于內(nèi)容的推薦。協(xié)同過(guò)濾推薦[7]的核心思想是通過(guò)發(fā)現(xiàn)具有相似喜好的用戶(hù)群體,或評(píng)分相似的視頻集合,將用戶(hù)可能感興趣的視頻推薦給用戶(hù)。例如,美國(guó)視頻網(wǎng)站YouTube,由于其視頻內(nèi)容繁多、視頻標(biāo)簽不規(guī)則、存儲(chǔ)周期不確定等原因,采用的就是最簡(jiǎn)單的協(xié)同過(guò)濾算法。參考文獻(xiàn)[8]詳細(xì)介紹了YouTube推薦算法的實(shí)現(xiàn)。參考文獻(xiàn)[9]提出使用基于群組內(nèi)其他用戶(hù)信息預(yù)測(cè)用戶(hù)興趣點(diǎn)的方法;參考文獻(xiàn)[10]采用基于社會(huì)化網(wǎng)絡(luò)的視頻推薦方法,認(rèn)為社交網(wǎng)絡(luò)中的好友也應(yīng)該具有相似的視頻偏好。參考文獻(xiàn)[11]將不同源網(wǎng)站針對(duì)某部電影的相關(guān)推薦聚合起來(lái),結(jié)合語(yǔ)義知識(shí)從中按照相似度高低進(jìn)行推薦?;趦?nèi)容的推薦[12]核心思想是通過(guò)分析用戶(hù)歷史行為來(lái)獲取用戶(hù)興趣特征,然后推薦與用戶(hù)偏好視頻內(nèi)容相似的視頻。比如網(wǎng)站Jinni定義了描述電影基因的900多個(gè)標(biāo)簽(類(lèi)型、劇情、評(píng)分等),然后人工標(biāo)注每部電影的這些標(biāo)簽,最后根據(jù)專(zhuān)家標(biāo)注的向量空間做出推薦。此外,PARK J等人提出基于視頻關(guān)鍵詞的個(gè)性化推薦方法[13],YANG B等人提出線(xiàn)性組合描述視頻相關(guān)性的方法[14]。
人工標(biāo)注電影標(biāo)簽耗時(shí)又耗力,在實(shí)際應(yīng)用中無(wú)法大規(guī)模應(yīng)用;基于關(guān)鍵詞的視頻特征描述是可行的方法,最常用的關(guān)鍵詞提取方法是TF-IDF,該方法是一種基于詞頻的統(tǒng)計(jì)方法,但是局限于字面匹配,缺乏語(yǔ)義理解。LDA(Latent Dirichlet Allocation)則是近些年興起的比較熱門(mén)的文本挖掘技術(shù),主要用于文本語(yǔ)義層面的分析處理,由BLEI D M等人在 2003 年提出[15],用來(lái)發(fā)現(xiàn)大規(guī)模文檔的主題分布情況。目前,該技術(shù)在視頻推薦領(lǐng)域也得到良好的應(yīng)用。例如,美國(guó)的視頻網(wǎng)站Hulu,搭建了Hadoop集群來(lái)處理用戶(hù)興趣行為,包括觀看、搜索、評(píng)論以及用戶(hù)對(duì)推薦系統(tǒng)的反饋行為等,其推薦引擎的離線(xiàn)部分,用于計(jì)算一系列的關(guān)聯(lián)矩陣,例如視頻之間的兩兩相似度、視頻主題與視頻之間的關(guān)聯(lián)等,其使用的關(guān)鍵技術(shù)之一就是LDA模型。
本文基于LDA模型,研究其在電影推薦系統(tǒng)中的應(yīng)用。以視頻的用戶(hù)評(píng)論為數(shù)據(jù)基礎(chǔ),識(shí)別出每個(gè)視頻的影評(píng)關(guān)鍵詞序列,再結(jié)合目標(biāo)用戶(hù)的歷史行為視頻列表,建立用戶(hù)興趣模型,最后利用杰卡德相似系數(shù)(Jaccard Similarity)方法[16],發(fā)現(xiàn)影評(píng)內(nèi)容相關(guān)的視頻列表,為用戶(hù)提供相關(guān)性視頻和個(gè)性化的視頻推薦服務(wù)。
1.1影評(píng)數(shù)據(jù)預(yù)處理
基于LDA模型的網(wǎng)絡(luò)視頻推薦中,用戶(hù)歷史行為包括視頻觀看、視頻下載和視頻收藏等。這些視頻列表可以看作為該用戶(hù)的偏好視頻集合,集合中每個(gè)視頻對(duì)應(yīng)一個(gè)影評(píng)數(shù)據(jù)集。在對(duì)影評(píng)數(shù)據(jù)集進(jìn)行LDA建模前,需對(duì)每個(gè)數(shù)據(jù)集進(jìn)行中文分詞、詞性標(biāo)注、新詞識(shí)別、停用詞過(guò)濾等預(yù)處理操作,以降低文本空間的維度,提高LDA建模效率。
一般的中文分詞方法有正向最大匹配法、逆向最大匹配法和雙向最大匹配法,其主要原理就是將文本劃分為單字或單詞串,再與詞庫(kù)進(jìn)行匹配,直至劃分成功。本文對(duì)中科院的NLPIR分詞系統(tǒng)[17]進(jìn)行二次開(kāi)發(fā),實(shí)現(xiàn)對(duì)影評(píng)數(shù)據(jù)集的中文分詞和詞性標(biāo)注。每個(gè)詞都指派合適的詞性,標(biāo)注格式表示為名詞(/n)、動(dòng)詞(/v)、形容詞(/a)、數(shù)詞(/m)、量詞(/q)、副詞(/d)、標(biāo)點(diǎn)符號(hào)(/w)等。
在分詞過(guò)程中,系統(tǒng)還需識(shí)別新詞,這些詞是字典中未收錄過(guò)的詞語(yǔ)。比如在句子“力挺趙又廷”中,“趙又廷”是個(gè)詞, 如果要計(jì)算機(jī)識(shí)別,最終結(jié)果可能是劃分成3個(gè)單獨(dú)的字。目前,新詞識(shí)別是評(píng)價(jià)分詞效果的重要指標(biāo)之一,解決這個(gè)問(wèn)題的簡(jiǎn)單方法是創(chuàng)建用戶(hù)詞典。本文創(chuàng)建的典型用戶(hù)詞典有影視明星詞典、影視名稱(chēng)詞典、影視流行語(yǔ)詞典等,創(chuàng)建方式主要是從網(wǎng)絡(luò)詞庫(kù)載入,或手動(dòng)輸入添加。
分詞后的評(píng)論文本中,包含大量的無(wú)用詞,比如代詞、方位詞、介詞、限定詞、 助詞、嘆詞、連詞、擬聲詞等,這些字或詞沒(méi)有特別的含義,不僅對(duì)主題發(fā)現(xiàn)的語(yǔ)義層面的分析沒(méi)有太大幫助,而且還會(huì)降低 LDA 建模的效率,因此需要將這些詞過(guò)濾掉。本文首先根據(jù)詞性將代詞、介詞、連詞等過(guò)濾掉,再導(dǎo)入停用詞表對(duì)評(píng)論文本進(jìn)行二次過(guò)濾,以提高分詞效果。
1.2影評(píng)LDA建模過(guò)程
本文利用MCMC方法中的Gibbs Sampling算法對(duì)每部電影的用戶(hù)評(píng)論數(shù)據(jù)集進(jìn)行參數(shù)估計(jì),也就是估計(jì)文本集的影評(píng)-主題概率分布Θ和主題-詞項(xiàng)概率分布Φ。LDA模型是一個(gè)文檔、主題、單詞三層的貝葉斯模型,應(yīng)用到視頻推薦系統(tǒng)中,可轉(zhuǎn)化為影評(píng)集、影評(píng)潛在主題、影評(píng)詞項(xiàng)三層用戶(hù)評(píng)論模型,其矩陣模型圖如1所示。
圖1 基于LDA模型的視頻用戶(hù)興趣模型的矩陣示意圖
其中,D表示一部電影用戶(hù)評(píng)論集合,dm是第m條影評(píng);Θ表示每條影評(píng)的主題分布,zk是第k個(gè)隱含主題;Φ表示每個(gè)主題在所有詞項(xiàng)上的概率分布,wn是第n個(gè)詞項(xiàng)。分詞后的影評(píng)數(shù)據(jù)集,對(duì)應(yīng)矩陣圖中的文本集D,算法的目標(biāo)就是估計(jì)模型中后兩個(gè)矩陣的參數(shù)分布。
Gibbs Sampling算法就是每次選取概率向量的一個(gè)維度,通過(guò)給定其他維度的變量值來(lái)采樣當(dāng)前維度的值,不斷迭代該運(yùn)行過(guò)程,直到待估計(jì)的參數(shù)收斂[18]。其計(jì)算公式如下:
(1)
在視頻推薦系統(tǒng)中,影評(píng)數(shù)據(jù)集的LDA訓(xùn)練過(guò)程為:
(1)對(duì)影評(píng)數(shù)據(jù)集中每條影評(píng)中的每個(gè)詞語(yǔ)w,隨機(jī)分配一個(gè)主題編號(hào)z(該z是隱含變量,即每個(gè)單詞所對(duì)應(yīng)的語(yǔ)義是未知的);
(2)重新掃描影評(píng)數(shù)據(jù)集,對(duì)集合中的每個(gè)詞項(xiàng)w,按照Gibbs Sampling公式,重新采樣詞語(yǔ)w的主題z,并在集合中進(jìn)行更新;
(3)重復(fù)上述影評(píng)數(shù)據(jù)集的重新采樣過(guò)程,直至Gibbs Sampling收斂,即每條評(píng)論下的主題分布和每個(gè)主題下的詞項(xiàng)分布收斂;
(4)統(tǒng)計(jì)影評(píng)數(shù)據(jù)集的主題-詞項(xiàng)和影評(píng)-主題的共現(xiàn)頻率矩陣,該矩陣就是LDA的生成模型。
上述LDA模型的訓(xùn)練,預(yù)設(shè)參數(shù)有α和β,一般β取默認(rèn)值 0.01,α等于50/K,K為影評(píng)數(shù)據(jù)集的主題數(shù)目[19]。本文采用perplexity(困惑度)來(lái)確定最佳主題數(shù)量,即設(shè)定不同的K值,對(duì)影評(píng)數(shù)據(jù)集進(jìn)行LDA模型的訓(xùn)練,直至模型的困惑度盡量低[20]。困惑度計(jì)算公式如下:
(2)
上式中,D為某視頻的影評(píng)數(shù)據(jù)集,dm={w1,w2,w3,…,wNn}表示第m條用戶(hù)評(píng)論,一條評(píng)論看成一篇文檔,N為數(shù)據(jù)集中的評(píng)論文檔個(gè)數(shù),Nm為評(píng)論文檔d中詞語(yǔ)的個(gè)數(shù),P(dm)為評(píng)論文檔dm相似性,dm的似然值為:
(3)
其中n(wn,d)為文檔d中詞w出現(xiàn)的次數(shù)。
1.3影評(píng)關(guān)鍵詞提取
視頻推薦系統(tǒng)的一個(gè)首要任務(wù)是根據(jù)用戶(hù)歷史行為發(fā)現(xiàn)用戶(hù)的興趣偏好,也就是從用戶(hù)偏好的視頻列表中,提取每部視頻的影評(píng)數(shù)據(jù)集的關(guān)鍵詞,其提取過(guò)程依賴(lài)LDA生成模型的兩個(gè)重要分布:影評(píng)-主題概率分布Θ和主題-詞項(xiàng)概率分布Φ。詞語(yǔ)的重要度由主題生成該詞語(yǔ)的概率和該主題在影評(píng)數(shù)據(jù)集中的重要度共同決定[21]。
首先,基于影評(píng)-主題分布計(jì)算影評(píng)數(shù)據(jù)集中每個(gè)主題的重要度。該分布是每行一條用戶(hù)評(píng)論、每列一個(gè)隱含主題的概率矩陣。其計(jì)算公式為:
(4)
其中,N為影評(píng)數(shù)據(jù)集用戶(hù)評(píng)論的個(gè)數(shù),T為文檔集中主題的個(gè)數(shù),dn表示第n條用戶(hù)評(píng)論,zi表示第i個(gè)主題。
然后,基于主題-詞項(xiàng)分布計(jì)算影評(píng)數(shù)據(jù)集合中每個(gè)詞語(yǔ)的重要度。該分布是每行一個(gè)主題,每列一個(gè)詞語(yǔ)的分布,表示了每個(gè)詞語(yǔ)在不同主題上的概率值,其計(jì)算公式為:
(5)
其中,T為主題個(gè)數(shù),P(w|zi)為詞語(yǔ)w在主題zi上的概率值,而 P(zi|D)表示zi在影評(píng)數(shù)據(jù)集D中主題的重要度。
最后,將詞語(yǔ)按詞語(yǔ)重要度從大到小排序,取權(quán)重較大的前i個(gè)詞語(yǔ)作為該視頻的影評(píng)關(guān)鍵詞集合{kw1,kw2,kw3,…,kwi},其中kwi表示該視頻的第i個(gè)關(guān)鍵詞。
1.4個(gè)性化視頻推薦
視頻推薦系統(tǒng)的最終目的是根據(jù)用戶(hù)的興趣偏好進(jìn)行個(gè)性化的視頻推薦,也就是根據(jù)目標(biāo)用戶(hù)偏好的視頻集合,將影評(píng)主題相似的視頻推薦給該用戶(hù)。本文利用杰卡德相似系數(shù)(Jaccard Similarity)方法,衡量?jī)刹恳曨l間的相似度,實(shí)質(zhì)是計(jì)算兩個(gè)視頻的影評(píng)關(guān)鍵詞集合的相似度,系數(shù)越大,說(shuō)明這兩部視頻的內(nèi)容越相似。電影的關(guān)鍵詞集合可以表示為U{a1,a2,a3,…,ai},其中ai表示該電影的第i個(gè)關(guān)鍵詞。
本文個(gè)性化視頻推薦的主要流程為:
(1)從用戶(hù)偏好視頻列表中取出一部視頻,其影評(píng)關(guān)鍵詞集合為U。
(2)從待匹配視頻列表中取出一部視頻,其影評(píng)關(guān)鍵詞集合為V;使用 Jaccard Similarity方法計(jì)算這兩部視頻影評(píng)之間的相似度,即集合U和V的交集元素在U和V的并集中所占的比例,用符號(hào)Jr(U,V)表示:
(6)
(3)計(jì)算這兩部視頻的類(lèi)型之間的相似度,假設(shè)這兩部視頻的類(lèi)型集合分別為A和B,同樣利用JaccardSimilarity方法計(jì)算類(lèi)型相似度,記作Jt(A, B)。為影評(píng)相似度Jr和類(lèi)型相似度Jt分配權(quán)衡因子p(0
J=p×Jr(A,B)+(1-p)×Jt(A,B)
(7)
其中,p的取值要通過(guò)反復(fù)試驗(yàn)和專(zhuān)家評(píng)審最終確定,初始化為0.1。計(jì)算視頻間的相似度J,每次以0.1為單位在定義域范圍內(nèi)遞增賦值,重新計(jì)算視頻間的相似度。再根據(jù)不同p值下的視頻相似度系數(shù),由專(zhuān)家指定最佳p值。一般視頻類(lèi)型有“動(dòng)作”、“愛(ài)情”、“魔幻”、“劇情”等。之所以添加這一特征項(xiàng),是考慮到如果同時(shí)有多部電影與目標(biāo)電影的相似度系數(shù)接近,那么同一類(lèi)型的視頻應(yīng)該優(yōu)先被推薦。
(4)從待匹配視頻列表中取出下一部視頻,按照上述步驟(2)和(3),計(jì)算新取的視頻與目標(biāo)視頻的相似度,直至待匹配視頻列表為空。
(5)從用戶(hù)偏好視頻列表中取出下一部視頻,重復(fù)上述步驟(2)、(3)、(4),分別計(jì)算待匹配列表L中每部視頻與該視頻的相似度,直至用戶(hù)偏好視頻列表為空。
圖2 用戶(hù)偏好視頻列表M與待匹配視頻列表L之間的相似度矩陣
(6)至此,已經(jīng)建立了用戶(hù)偏好視頻列表與待匹配視頻列表的影評(píng)相似度矩陣,如圖2所示,其中,用戶(hù)偏好視頻列表為M,待匹配視頻列表為L(zhǎng)。假設(shè)個(gè)性化推薦列表為G,其格式為G{視頻ID:相似度系數(shù)},系統(tǒng)根據(jù)視頻間的相似度矩陣,為M中的每個(gè)視頻從L中提取相似系數(shù)較大的前n個(gè)視頻,添加到G中生成該用戶(hù)的個(gè)性化視頻推薦列表,如果待添加的視頻在G中已經(jīng)存在,但相似系數(shù)較大,則在G中更新該視頻的相似系數(shù);否則,添加下一部匹配的視頻,即:
(8)
其中,f(i)=Ji,k-Ji,t,Ji,k表示L中第i個(gè)視頻與M中第k個(gè)視頻的相似度,Ji,t表示L中第i個(gè)視頻與M中第t個(gè)視頻的相似度。在個(gè)性化推薦列表最終生成后,還需按照相似系數(shù)從大到小對(duì)視頻進(jìn)行排序,排序后的格式為{ID1:J1,ID2:J2,…,IDi:Ji},J1>J2>J3>…>Ji,系統(tǒng)選取相似系數(shù)較大的前n個(gè)視頻推薦給用戶(hù),完成個(gè)性化視頻推薦服務(wù)。
2.1實(shí)驗(yàn)基本流程
從某專(zhuān)業(yè)視頻網(wǎng)站中隨機(jī)選取500名活躍用戶(hù),每個(gè)用戶(hù)的歷史行為記錄中平均包含100部左右的電影,實(shí)驗(yàn)將每個(gè)用戶(hù)的偏好視頻列表分為兩個(gè)部分:60%的視頻作為訓(xùn)練集,用來(lái)訓(xùn)練最佳LDA主題模型,發(fā)現(xiàn)用戶(hù)的興趣偏好特征(影評(píng)關(guān)鍵詞的提取),并使用JaccardSimilarity方法推導(dǎo)用戶(hù)可能感興趣的視頻集合;40%的視頻作為測(cè)試集,用于評(píng)估和檢測(cè)本文提出的推薦系統(tǒng)的性能。圖3顯示的是訓(xùn)練集中部分用戶(hù)的歷史行為數(shù)據(jù)。
圖3 視頻網(wǎng)站部分用戶(hù)偏好電影列表
實(shí)驗(yàn)數(shù)據(jù)準(zhǔn)備好后,按照本文介紹的視頻推薦方法分別對(duì)這500個(gè)用戶(hù)的訓(xùn)練集中用戶(hù)偏好視頻的影評(píng)數(shù)據(jù)集合進(jìn)行分析處理,生成個(gè)性化視頻推薦列表。步驟如下:
(1)提取訓(xùn)練集視頻列表中每個(gè)視頻的影評(píng)內(nèi)容,包含電影ID、用戶(hù)ID、評(píng)論文本、用戶(hù)評(píng)分、評(píng)論時(shí)間等,提取每部電影的所有評(píng)論數(shù)據(jù),一條評(píng)論看作一篇文檔,n條評(píng)論構(gòu)成該視頻的一個(gè)影評(píng)數(shù)據(jù)集。然后對(duì)每個(gè)數(shù)據(jù)集分別進(jìn)行中文分詞、詞性標(biāo)注、新詞識(shí)別、停用詞過(guò)濾等預(yù)處理操作,將數(shù)據(jù)集的噪音降到最低,并轉(zhuǎn)化為標(biāo)準(zhǔn)的LDA詞袋矩陣(如圖1中的D)。
(3)根據(jù)每個(gè)影評(píng)數(shù)據(jù)集的LDA生成模型中的影評(píng)-主題概率分布Θ和主題-詞項(xiàng)概率分布Φ,利用式(4)計(jì)算各個(gè)隱含主題的重要性,圖4是某個(gè)影評(píng)數(shù)據(jù)集的LDA生成模型中的部分主題概率分布圖;然后利用詞語(yǔ)重要性計(jì)算公式(5),提取影評(píng)數(shù)據(jù)集的關(guān)鍵詞,記作Vi{t1,t2,t3,…},Vi表示第i部視頻的關(guān)鍵詞集合。
(4)對(duì)于每個(gè)目標(biāo)用戶(hù),其視頻偏好列表中每個(gè)視頻的關(guān)鍵詞集合為{V1,V2,…,Vi,…,Vj},每個(gè)集合中大概包含50個(gè)關(guān)鍵詞,偏好視頻數(shù)目平均為60個(gè),所有偏好視頻的關(guān)鍵詞集合構(gòu)成了該目標(biāo)用戶(hù)的興趣偏好特征集合,利用Jaccard Similarity方法,建立待推薦視頻與偏好視頻的相似度矩陣。實(shí)驗(yàn)訓(xùn)練集中共有3 480部視頻,除去目標(biāo)用戶(hù)的偏好視頻列表M(大約60部),將剩下的3 420多部視頻表示為待匹配視頻列表L,該列表中的每一部視頻有其自身的影評(píng)關(guān)鍵詞序列,利用式(6)和(7)分別計(jì)算L中每個(gè)視頻與M中偏好視頻的相似度,建立相似度矩陣,其中,權(quán)衡因子p取值0.7(實(shí)驗(yàn)過(guò)程中發(fā)現(xiàn),該值的權(quán)衡效果最好)。
(5)根據(jù)相似度矩陣,利用式(8)從待匹配視頻列表L中選取相關(guān)性系數(shù)較高的視頻,添加到匹配視頻列表G,并不斷更新G中每部視頻的權(quán)值直至列表完全生成,再?gòu)拇蟮叫“葱驅(qū)⑶?0部電影推薦給該目標(biāo)用戶(hù),完成個(gè)性化視頻推薦服務(wù)。
2.2實(shí)驗(yàn)結(jié)果評(píng)測(cè)
判斷一個(gè)推薦系統(tǒng)的質(zhì)量和性能,常用的評(píng)測(cè)指標(biāo)有:準(zhǔn)確度、覆蓋率、召回率、多樣性、新穎性、驚喜度等[22],本文從準(zhǔn)確率和召回率兩個(gè)角度評(píng)測(cè)本文推薦算法的性能。
(1)準(zhǔn)確率和召回率
準(zhǔn)確度Precision用于度量一個(gè)推薦系統(tǒng)預(yù)測(cè)用戶(hù)行為的能力,描述的是推薦視頻列表中正確視頻的條數(shù)與推薦列表?xiàng)l數(shù)的比值。召回率Recall描述的是推薦視頻列表中正確視頻的條數(shù)與測(cè)試集視頻列表?xiàng)l數(shù)的比值,衡量的是查全率。F1是Precision和Recall的加權(quán)調(diào)和平均,用于綜合反映整體指標(biāo)。
(2)實(shí)驗(yàn)結(jié)果分析
為了說(shuō)明本文推薦算法的性能特點(diǎn),實(shí)驗(yàn)中每次隨機(jī)選取10個(gè)用戶(hù)作為1組,共生成10個(gè)分組,然后分別使用本文的推薦方法(方法1)、基于item的協(xié)同過(guò)濾方法(方法2)、基于user的協(xié)同過(guò)濾方法(方法3),生成視頻推薦列表,然后分別對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行評(píng)估,以證明本文推薦算法的良好應(yīng)用效果。方法2和方法3都是以評(píng)分為數(shù)據(jù)基礎(chǔ),前者參照的是該用戶(hù)對(duì)與某視頻相似的多個(gè)視頻的已有評(píng)分值,后者參照的是與該用戶(hù)相似的多個(gè)用戶(hù)對(duì)某視頻的已有評(píng)分值。表1所示為3種推薦方法在10個(gè)用戶(hù)分組上的平均準(zhǔn)確率、召回率和F1值。
表1 3種推薦方法在10個(gè)用戶(hù)分組上的平均
圖5分別顯示了3種推薦方法在不同用戶(hù)分組上的準(zhǔn)確率和召回率分布情況,圖6顯示了3種推薦方法在不同用戶(hù)分組上的F1值分布情況。
圖5 不同推薦方法在用戶(hù)分組上的準(zhǔn)確率和召回率分布情況
圖6 不同推薦方法在用戶(hù)分組上的F1值分布情況
從評(píng)測(cè)結(jié)果中可以發(fā)現(xiàn),不管在準(zhǔn)確率還是召回率上,本文的推薦算法都要優(yōu)于基于user的協(xié)同過(guò)濾算法和基于item的協(xié)同過(guò)濾算法,其主要原因在于:(1)基于user的協(xié)同過(guò)濾方法考慮的是用戶(hù)間的相似度,但在實(shí)際的項(xiàng)目應(yīng)用過(guò)程中,用戶(hù)間的相似性會(huì)受到多種因素的影響,具有極大的不穩(wěn)定性和不可靠性;而基于item的協(xié)同過(guò)濾算法中視頻相似度的計(jì)算,僅僅依靠用戶(hù)對(duì)視頻的打分情況來(lái)判斷,并不能取得很好的效果,還可能導(dǎo)致推薦視頻并不是目標(biāo)用戶(hù)所感興趣的,反而降低用戶(hù)體驗(yàn)。(2)基于內(nèi)容的視頻推薦方法的實(shí)質(zhì)是計(jì)算兩個(gè)視頻之間內(nèi)容或主題上的相似度,為用戶(hù)推薦主題相關(guān)的視頻,這種方法具有穩(wěn)定性和確定性,極大地提高了推薦視頻的用戶(hù)觀看轉(zhuǎn)化率。但是,這種方法存在無(wú)法為用戶(hù)推薦從未涉及過(guò)的領(lǐng)域,即冷啟動(dòng)的缺點(diǎn),這也是本課題今后研究的重點(diǎn)。
本文應(yīng)用LDA語(yǔ)義分析過(guò)程,首先對(duì)視頻系統(tǒng)中每部電影的影評(píng)數(shù)據(jù)集進(jìn)行關(guān)鍵詞提取,然后基于用戶(hù)歷史行為,構(gòu)建偏好視頻的所有關(guān)鍵詞集合,最后利用杰卡德相似系數(shù),將影評(píng)主題相關(guān)的視頻推薦給目標(biāo)用戶(hù)。實(shí)驗(yàn)證明,本文的推薦方法是行之有效的,而且極大地提高了推薦精度。
在網(wǎng)絡(luò)視頻這個(gè)開(kāi)放性的平臺(tái),用戶(hù)歷史行為是推薦系統(tǒng)的重要依據(jù)之一,但是并非所有歷史記錄中的電影都是用戶(hù)喜歡的,還需要根據(jù)觀看時(shí)長(zhǎng)、評(píng)論文本情感傾向等多方面判斷用戶(hù)真正偏好的視頻。此外,用戶(hù)的興趣愛(ài)好具有階段性,不同的時(shí)間點(diǎn)可能偏向不同類(lèi)型的視頻;社會(huì)化網(wǎng)絡(luò)的發(fā)展,使得用戶(hù)的興趣愛(ài)好還可能會(huì)受到朋友圈的影響;用戶(hù)對(duì)于系統(tǒng)推薦的視頻,所表現(xiàn)出的在線(xiàn)反饋行為等,這些問(wèn)題都是本文下一步的研究重點(diǎn)。
[1] SKRISHNAPP, D K, ZINK M, Griwodz C. Cache-centric video recommendation: an approach to improve the efficiency of YouTube caches[C]. In Proceedings of the 4th ACM Multimedia Systems Conference, 2013: 261-270.
[2] McSHERRY F, MIRONOV I. Differentially private recommender systems: building privacy into the net[C].In Proceeding of the 15th ACM SIGKDD Dnternational Conference on Knowledge Discovery and Data Mining, 2009: 627-636.
[3] LEMIRE D, MACLACHLAN A. Slope one predictors for online rating-based collaborative filtering[C]. In SIAM Data Mining, 2005: 1-5.
[4] BELL R, KOREN Y, VOLINSKY C. Modeling relationships at multiple scales to improve accuracy of large recommender systems[C]. In Proceeding of the 13th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, 2007: 95-104.
[5] BELL R M, KOREN Y. Scalable collaborative filtering with jointly derived neighborhood interpolation weights[C]. In Proceedings of the 2007 Seventh IEEE International Conference on Data Mining, 2007: 43-52.
[7] LINDEN G,SMITH B,YORK J. Amazon.com recommendations: item-to-item collaborative filtering[J]. Internet Computing, IEEE, 2003, 7(1): 76-80.
[8] DAVIDSON J, LIEBALD B, LIU J, et al. The YouTube video recommendation system[C]. Proceedings of the Fourth ACM Conference on Recommender Systems, 2010: 293-296.
[9] SU C R, LI Y W, ZHANG R Z, et al. An adaptive video program recommender based on group user profiles[M]. Berlin, Heidelberg: Springer, 2013: 499-509.
[10] DIAS A S, WIVES L K. POI enhanced video recommender system using collaboration and social networks[C]. Proceedings of the 8th International Conference on Web Information Systems and Technologies, 2012: 717-722.
[11] 周文樂(lè),朱明,陳天昊. 一種基于網(wǎng)站聚合和語(yǔ)義知識(shí)的電影推薦方法[J]. 計(jì)算機(jī)工程,2014, 40(8):277-281.
[12] PAZZANI M J. A framework for collaborative, content-based and demographic filtering[J]. Artificial Intelligence Review, 1999, 13(5-6): 393-408.
[13] PARK J, LEE S J, LEE S J, et al. Online video recommendation through tag-cloud aggregation[J]. Multimedia IEEE, 2011, 18(1):78 - 87.
[14] YANG B, MEI T, HUA X S, et al. Online video recommendation based on multimodal fusion and relevance feedback[C]. Proceedings of the 6th ACM International Conference on Image and Video Retrieval, 2007: 73-80.
[15] BLEI D M, NG A Y, JORDAN M I. Latent dirichlet allocation[J]. Journal of Machine Learning Research, 2003,3(7): 993-1022.
[16] Wikipedia. Jaccard similarity[EB/OL].[2016-02-14].http://en.wikipedia.org/wiki/Jaccard_index.
[17] ICTCLAS2016. Natural language development platform [EB/OL].[2016-02-14].http://ictclas.nlpir.org/.
[18]HAN X, STIBOR T. Efficient collapsed gibbs sampling for latent dirichlet allocation[C]. ACML, 2010: 63-78.
[19] STEYVERS M, GRIFFITHS T. Probabilistic topic models[J]. Handbook of Latent Semantic Analysis, 2007, 427(7): 424-440.
[20] CAO J, XIA T, LI J, et al. A density-based method for adaptive LDA model selection[J]. Neuro Computing, 2009, 72(7): 1775-1781.
[21]ARORA R, RAVINDRAN B. Latent dirichlet allocation and singular value decomposition based multi-document summarization[C]. Proceedings of Eighth IEEE International Conference on Data Mining, 2008: 713-718.
[22] RESNICK P, VARIAN H R. Recommender systems[J]. Communications of the ACM, 1997, 40(3): 56-58.
The application of LDA in online video recommendation
Lu Shengqi1,2,3,Guan Lian4,Jin Min3,Han Jingti1,2
(1.School of Information Management and Engineering, Shanghai University of Finance and Economics, Shanghai 200433, China; 2.Shanghai Key Laboratory of Financial Information Technology, Shanghai University of Finance and Economics, Shanghai 200433, China; 3.Software School, Fudan University, Shanghai 200433, China; 4.International Business Machine China Co., Ltd., Beijing 100101, China)
Video recommendation system is used to develop user preferences based on their activity on the site, and generate personalized sets of videos to audiences. This paper presents an online movie recommendation method based on Latent Dirichlet Allocation Model, owing to excessive choices of users and lower conversion rates of videos. By simply merging video reviews, and formulating a review-topic-word Bayesian model, keywords of each video can be extracted. Then constructing user preferences from history behaviors, and predicting relevant sets of videos to targeted users by Jaccard Similarity, the personalized video recommendation of content-based is implemented finally. Experiments show that the proposed method can achieve higher accuracy and video conversion rate in personalized recommendation program, comparing with traditional collaborative filtering.
Latent Dirichlet Allocation; user preferences; video recommendation; e-recommendation; Bayes model
國(guó)家自然科學(xué)基金(71271126);教育部博士點(diǎn)專(zhuān)項(xiàng)科研基金(20120078110002)
TP311
A
10.19358/j.issn.1674- 7720.2016.11.023
2016-02-14)
盧盛祺(1978-),男,博士研究生,主要研究方向:數(shù)據(jù)挖掘、電子推薦。