盧盛祺1,2,3,管連4,金敏3,韓景倜1,2
?。?.上海財(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)化率得到較好的提升。
關(guān)鍵詞:LDA模型;用戶(hù)偏好;視頻推薦;電子推薦;貝葉斯模型
0引言
隨著互聯(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年間,更多的推薦算法[36]被提出,并取得令人矚目的研究成果。從視頻推薦的研究技術(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等人提出線性組合描述視頻相關(guān)性的方法[14]。
人工標(biāo)注電影標(biāo)簽耗時(shí)又耗力,在實(shí)際應(yīng)用中無(wú)法大規(guī)模應(yīng)用;基于關(guān)鍵詞的視頻特征描述是可行的方法,最常用的關(guān)鍵詞提取方法是TFIDF,該方法是一種基于詞頻的統(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)的反饋行為等,其推薦引擎的離線部分,用于計(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基于LDA模型的網(wǎng)絡(luò)視頻推薦
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所示。
其中,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ì)算公式如下:
其中,zi表示第i個(gè)單詞對(duì)應(yīng)的主題變量;┐i表示不包括其中的第i項(xiàng);n(t)k表示主題k中出現(xiàn)詞項(xiàng)t的次數(shù);βt是詞項(xiàng)t的Dirichlet先驗(yàn);n(k)m表示評(píng)論文本m出現(xiàn)主題k的次數(shù);αk是主題k的Dirichlet先驗(yàn)。
在視頻推薦系統(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ì)算公式如下:
上式中,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的似然值為:
其中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ì)算公式為:
其中,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ì)算公式為:
其中,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)表示:
(3)計(jì)算這兩部視頻的類(lèi)型之間的相似度,假設(shè)這兩部視頻的類(lèi)型集合分別為A和B,同樣利用 Jaccard Similarity方法計(jì)算類(lèi)型相似度,記作Jt(A, B)。為影評(píng)相似度Jr和類(lèi)型相似度Jt分配權(quán)衡因子p(0<p<1),綜合衡量計(jì)算這兩部視頻之間的相似度,記作J:
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ù)偏好視頻列表為空。
視頻列表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ù);否則,添加下一部匹配的視頻,即:
其中,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實(shí)驗(yàn)設(shè)計(jì)與結(jié)果評(píng)測(cè)
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)鍵詞的提?。⑹褂肑accard Similarity方法推導(dǎo)用戶(hù)可能感興趣的視頻集合;40%的視頻作為測(cè)試集,用于評(píng)估和檢測(cè)本文提出的推薦系統(tǒng)的性能。圖3顯示的是訓(xùn)練集中部分用戶(hù)的歷史行為數(shù)據(jù)。
實(shí)驗(yàn)數(shù)據(jù)準(zhǔn)備好后,按照本文介紹的視頻推薦方法分別對(duì)這500個(gè)用戶(hù)的訓(xùn)練集中用戶(hù)偏好視頻的影評(píng)數(shù)據(jù)集合進(jìn)行分析處理,生成個(gè)性化視頻推薦列表。步驟如下:
?。?)提取訓(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)。
(2)隨機(jī)抽取50個(gè)視頻及其對(duì)應(yīng)的影評(píng)內(nèi)容,分別對(duì)每個(gè)影評(píng)數(shù)據(jù)集設(shè)置不同的主題數(shù)目K,令β=0.01,α=50/K,利用開(kāi)源的GibbsLDA++建模工具,對(duì)影評(píng)數(shù)據(jù)集應(yīng)用LDA語(yǔ)義分析過(guò)程,并結(jié)合困惑度計(jì)算公式(2)和(3)訓(xùn)練出每個(gè)數(shù)據(jù)集的最佳主題數(shù)目K,然后取這50個(gè)視頻的最佳主題的均值K^,作為本次實(shí)驗(yàn)樣本集的LDA建模主題數(shù)目。
(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)鍵詞集合。
?。?)對(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)衡效果最好)。
?。?)根據(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è)本文推薦算法的性能。
?。?)準(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)。
?。?)實(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)分值。
圖5分別顯示了3種推薦方法在不同用戶(hù)分組上的準(zhǔn)確率和召回率分布情況,圖6顯示了3種推薦方法在不同用戶(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)。
3結(jié)束語(yǔ)
本文應(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)出的在線反饋行為等,這些問(wèn)題都是本文下一步的研究重點(diǎn)。
參考文獻(xiàn)
?。?] SKRISHNAPP, D K, ZINK M, Griwodz C. Cachecentric video recommendation: an approach to improve the efficiency of YouTube caches[C]. In Proceedings of the 4th ACM Multimedia Systems Conference, 2013: 261270.
?。?] 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: 627636.
[3] LEMIRE D, MACLACHLAN A. Slope one predictors for online ratingbased collaborative filtering[C]. In SIAM Data Mining, 2005: 15.
?。?] 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: 95104.