任品
摘 要: 基于用戶偏好的電視節(jié)目個性化推薦是一種內容的推薦算法。其中用戶偏好的不確定性和描述上的模糊性是用戶模型建立的難點。在此首先通過對樣本用戶過往觀看記錄數(shù)據(jù)進行分析,發(fā)現(xiàn)用戶偏好存在一定的時不變性。把偏好在一定時間內不發(fā)生變化的用戶稱作置信用戶,在這個基礎上,建立基于節(jié)目特征向量空間的用戶偏好模型,并提出基于用戶偏好度模型的推薦算法。該算法通過用戶觀看視頻的歷史記錄得到用戶的偏好模型,并基于該偏好模型向用戶推薦節(jié)目。仿真實驗證明了算法的收斂性和有效性。
關鍵詞: 置信用戶; 電視推薦系統(tǒng); 節(jié)目特征向量空間; 用戶偏好
中圖分類號: TN911?34 文獻標識碼: A 文章編號: 1004?373X(2014)16?0030?04
TV recommender system based on confidence user preference model
REN Pin1,2
(1. Department of Electronic Engineering, Tsinghua University, Beijing 100035, China;
2. Shenzhen Key Lab of Information Science and Technology, Tsinghua University, Shenzhen 518507, Chian)
Abstract: TV program personalized recommendation according to user preferences is an effective program recommending algorithm based on contents, in which the difficulties are uncertainty and fuzziness of user preference modeling. In this paper, the watching records of users are analyzed and the time?invariance of user preference is found out. The users, whose preferences for watching TV programs are invariable in a certain time, are called confidence ones in this paper. On these bases, a user preference model based on program feature vector space was established, and a TV recommending algorithm based on user preference model was proposed. The users′ preference is got by their history watching records and the program is recommended based on it. The result of simulation validated the efficiency and convergence of the algorithm.
Keyword: confidence user; TV recommender system; program feature vector space; user preference
0 引 言
當今,電視用戶正面臨著從海量電視節(jié)目中尋找自己喜歡的節(jié)目這一難題,而電視推薦系統(tǒng)正是為了解決這一難題應運而生。本文研究了用戶對于食品的興趣喜好從而建立用戶偏好模型,并給出了推薦系統(tǒng)解決方案。本文中認為用戶存在短時間內不會出現(xiàn)較大波動的偏好,并將這樣的用戶稱作置信用戶。在本文中討論的用戶模型都是置信用戶模型。在文獻[1]中,作者提出了“情感計算”的概念用以支持這個觀點,但沒有給出相關的分析和證明。在文獻[2]中,除了用戶偏好,用戶的行為模式也被認為是對視頻點播行為的重要影響因素,將其歸結為“用戶觀看環(huán)境”。在此暫時不討論其他對用戶實際點播行為影響因素,僅討論用戶偏好。
推薦算法主要有兩大類型:基于內容的推薦和協(xié)同濾波推薦[3]。前者依據(jù)用戶過往觀看記錄進行推薦,而后者依據(jù)與目標用戶具有類似喜好的用戶的觀看記錄進行推薦?;旌贤扑]算法將兩者結合,結合了二者的優(yōu)缺點。本文基于用戶偏好的推薦方式屬于基于內容的推薦。
1 用戶偏好模型
向量空間模型和實體模型是建立用戶偏好的兩種主要模型。 向量模型用向量空間表征各種節(jié)目的特征,并用向量的各個坐標表征節(jié)目在各方面的特征和用戶在個方面的偏好程度[4]。實體模型則是利用擁有多級多分支的復雜拓撲結構存儲每一個觀看記錄的全部信息,需要較大的存儲空間[5]。本文采用的向量模型中,一個電視節(jié)目被表征為一個n維的特征向量p=(p1, p2,…,pn),向量的每個坐標pi描述節(jié)目在某個節(jié)目分類上的特征。為了方便計算,文中的所有特征向量都被歸一化為單位向量。所有節(jié)目特征向量的集合構成了特征向量空間Ω。用戶同樣被表征為一個n維向量α= (α1,α2,…,αn), 向量的每個坐標αi表用戶對于某一個類型的視頻的偏好。由于用戶偏好可能存在的模糊性和不確定性,向量的每個坐標αi可能并非常數(shù),而是關于時間的函數(shù)。但對于某一個時刻,用戶偏好向量α可以看作節(jié)目特征向量空間Ω里的一個特征向量。
本文中認為部分用戶存在固定的偏好。他們對于某一個種類的視頻的喜好程度不隨時間變化,并且以一個固定的概率點播這個類型的節(jié)目。針對這種用戶,這樣的點播行為模式往往可以持續(xù)幾個月到半年時間不發(fā)生大的改變。在此將這樣的用戶稱作置信用戶。由于缺乏可靠的大尺度電視點播數(shù)據(jù),從優(yōu)酷網(wǎng)站上召集了75位志愿者作為研究樣本。這些志愿者在過去半年里一共產生了24 015條視頻點播記錄。在優(yōu)酷視頻網(wǎng)站上,視頻一共分為20個類別:電影、電視劇、綜藝、動畫、魚類、體育、新聞、紀錄片、教育、汽車、游戲、原創(chuàng)、生活服務、時尚、旅游、搞笑、廣告和母嬰。
定義一個用戶對某一個分類視頻的點播頻率為該分類的點播次數(shù)與總點播次數(shù)的比值:
[fi=cij=1mcj] (1)
式中:fi為第i個分類視頻的點播頻率;ci第i個分類視頻的點播次數(shù)。對于每個用戶,將他的全部點播記錄按照時間順序排列,并均等分割為兩份,分別計算前半部分的點播次數(shù)頻率,后半部分的點播次數(shù)頻率和總的點播次數(shù)和頻率。表1為其中一個用戶的數(shù)據(jù)。
表1 某個用戶的觀看次數(shù)和觀看頻率
該用戶過去半年內均有點播記錄,第1列為前3個月的數(shù)據(jù),第2列為后3個月的數(shù)據(jù),第3列為整個半年的數(shù)據(jù)。每一列都可以看作一個用戶的點播頻率向量。從表1中不難看出,擁有最高點播頻率的分類電視劇和動畫,其三個點播頻率相互近似。從而可以做出假設,用戶點播頻率向量的主成分不隨時間變化,且不同時間段產生的頻率向量之間存在很大的相關性??梢杂嬎阆蛄恐g的余弦相似性來得出它們的相關性。兩個n維向量α=(α1,α2,…,αn)和β=(β1,β2,…,βn)的余弦相似性由式(2)給出:
[σ(α,β)=α?β|α||β|=i=1nαiβii=1nα2ii=1nβ2i] (2)
當β=α時,式(2)有最大值,表示兩個向量具有最大的相關性。據(jù)此,計算了所有用戶前三個月向量與總體向量的余弦相關性以及后三個月與總體的余弦相關性,并取平均值。這個平均值的分布如圖1所示。從圖中可以發(fā)現(xiàn)一半以上的用戶相似度都分布在0.8以上。
圖1 觀看頻率向量的平均余弦相度分布
圖1中的分布印證了前面敘述的假設,即用戶的偏好在一段較長時間內不隨時間劇烈變化,并且這樣的用戶大量存在,將其稱之為置信用戶?;谇拔奶岢龅南蛄靠臻g模型,認為置信用戶的偏好向量具有這樣的性質,即對于α=(α1,α2,…,αn),任意αi均為常數(shù)。
2 推薦系統(tǒng)
這里將給出推薦系統(tǒng)方案,該方案基于上文提出的置信用戶模型和文獻[6]中提到的算法。 如圖2所示,我們保存用戶的歷史觀看記錄,記錄用戶在過去看過的視頻的特征向量。向量P1,…,Pm為n維節(jié)目特征向量,代表用戶過去m次的點播記錄。變量m稱為歷史窗口,是一個可調節(jié)的量。當用戶點播并觀看一個新節(jié)目的時候,這個節(jié)目的特征向量將被記錄下來,最早的一條觀看記錄將被刪除。這些數(shù)據(jù)用于估計用戶的偏好向量α,作為數(shù)據(jù)挖掘算法的訓練序列。在獲得用戶偏好向量后,從待推薦的視頻中選擇與用戶具有最大余弦相似度的視頻作為最終的推薦視頻。
基于置信用戶的模型中,用戶過往的觀看記錄構成了以用戶偏好為重心的簇團。用戶偏好向量作為簇團的重心,可以看作是簇團中各個元素的某種均值。當用戶偏好向量與簇團中所有節(jié)目特征向量的余弦相關度的均值取最大值時,可以獲得這個最佳的重心均值,即目標用戶偏好向量為:
[αest=argmaxi=1mwiσ(αest,Pi)] (3)
式中:αest是算法對于用戶偏好向量的估計值;Pi是第i個節(jié)目的特征向量;wi每個節(jié)目的權值。顯然,αest是等式右側方程的最優(yōu)解。通過拉格朗日乘數(shù)法可以獲得這個最優(yōu)解:
[αi=Vik=1nV2k] (4)
式中:
[Vi=j=1mwipji] (5)
式中:pji是歷史窗中存儲的第j個節(jié)目Pj的第i個坐標;wi 是節(jié)目Pj的權重;m是歷史窗的長度。式(4)、式(5)就是式(3)的最優(yōu)解。在本文的方案中,對每個節(jié)目設置為等權重 (wi=1) 。
圖2 節(jié)目推薦基本方案
3 仿真結果
由于建立了的n維用戶向量模型具有常數(shù)坐標,因而歷史窗m值越大, 獲得的用戶喜好節(jié)目樣本越多,所得到的用戶偏好向量估計值就可能越大。然而機頂盒的存儲和推薦模塊的計算能力都是有限的,因而需要找到最佳的歷史窗口長度。
在實驗1中,首先將用戶觀看頻率向量進行處理,僅保留其主成分,再歸一化作為仿真實驗的虛擬用戶對象。基本的向量維度為20,然后將30和50的維度作為對照組,發(fā)現(xiàn)維度數(shù)對于算法的影響。每次推薦發(fā)生時,系統(tǒng)會產生1個虛擬的節(jié)目特征向量,然后計算用戶偏好向量與節(jié)目特征向量的余弦值與用戶自身的觀看門限進行比較,大于門限值則用戶收看,并在推薦模塊中留下該節(jié)目的記錄。觀看門限由實際用戶數(shù)據(jù)中,每次收看的節(jié)目向量與處理后的用戶觀看頻率向量余弦相似度的平均值,因而每個用戶的門限均不相同。每產生一次推薦,計算一次用戶偏好的估計值與實際用戶偏好的余弦相似度并進行記錄,相似度越高說明估計的越準確。圖3展示了估計值與實際值相似度和歷史窗長度的關系曲線,該曲線為各個用戶1 000次實驗后的均值結果。
圖3 余弦相似度?歷史窗曲線
從圖中不難發(fā)現(xiàn),由于該算法需要訓練序列,因而在歷史窗很小的時候算法效果很差。這一問題被稱作推薦算法的冷啟動問題[1]。在點播觀看次數(shù)達到100左右時,弧線的坡度開始大幅度減緩直至變成水平線。這意味著當歷史窗大于100的時候算法開始收斂,因而100可能是一個適合的歷史窗大小。對比圖中的三條曲線,盡管對應的用戶和節(jié)目維度數(shù)量不同,但三者都從近似的歷史窗長度開始收斂(m=100),因而m=100的歷史窗長度可能是對任何一種分類方式都是一個合適的歷史窗長度參考值。這意味著維度數(shù)對收斂速度并沒有影響,但對最終收斂值存在影響。20維度下的曲線收斂值逼近1,30維度的收斂值在0.9左右,而50維度的收斂值在0.8左右。因而維度數(shù)越大,系統(tǒng)對于視頻的分類越復雜,用戶偏好的估計精度就越低。然而,從圖中可以看出,盡管降低了估計精度,但對于50維度的情況下,其收斂值仍然接近0.85,滿足實際的推薦需求。
圖4 收斂值?維度數(shù)曲線
在圖4中,專門研究了最終收斂值和維度數(shù)量的關系。如圖5所示,最終收斂值隨著維度上升而下降,說明了隨著維度數(shù)的上升算法的估計精度將下降。 然而即使維度數(shù)達到了60,收斂值仍然大于0.8,這個值大于所有樣本用戶的平均門限值,因而處于可接受的誤差范圍內。而對于大于60的分類數(shù)量對于普通的數(shù)字電視系統(tǒng)來說已經過大了。
4 結 論
在本文中建立了基于向量空間的數(shù)字電視用戶模型,重點研究了用戶偏好并提出了置信用戶的概念。然后根據(jù)從優(yōu)酷視頻網(wǎng)中采集的信息分析得出了置信用戶大量存在的結論。
在這個基礎上提出了推薦系統(tǒng)方案,利用基于內容的推薦方案,采用了取節(jié)目特征向量簇團重心的算法來估計用戶的偏好向量,并根據(jù)偏好向量進行節(jié)目推薦。仿真結果說明了算法的準確性和收斂性。根據(jù)仿真結果,歷史窗尺寸m=100是一個適合的算法參考值。本文中的模型和方案對于電視推薦系統(tǒng)的發(fā)展和應用是有益的。
參考文獻
[1] MUKHERJEE D, BANERJEE S, BHATTACHARYA S, et al. A Context?aware recommendation system considering both user preferences and learned behavior [C]// International Conference on IT in Asia. Kuching, Sarawak: IEEE, 2011: 1?7.
[2] GAO Qi, XIN Le. Products recommend algorithm based on customer preference model and affective computing [C]// Proceedings of the 29th Chinese Control Conference. Beijing: IEEE, 2010: 2981?2986.
[3] ADOMAVICIUS G, TUZHILIN A. Toward the next generation of recommender systems: a survey of the state?of?the?art and possible extensions [J]. IEEE Transactions on Knowledge and Data Eng, 2005, 17(6): 734?749.
[4] FERNANDEZ Y B, ARIAS J J P, NORES M L, et al. AVATAR: an improved solution for personalized TV based on semantic inference [J]. IEEE Transactions on Consumer Electron., 2006, 52(1): 223?231.
[5] ISOBE T, FUJIWARA M, KANETA H, et al. Development of a TV reception system personalized with viewing habits [J]. IEEE Transactions on Consumer Electron, 2005, 51(2): 665?674.
[6] BJELICA Milan. Towards TV recommender system: experiments with user modeling [J]. IEEE Transactions on Consumer Electronics, 2010, 56(3): 1763?1769.
[7] 白妙青.云計算技術在廣播電視網(wǎng)中的應用[J].現(xiàn)代電子技術,2013,36(11):188?191.
圖4 收斂值?維度數(shù)曲線
在圖4中,專門研究了最終收斂值和維度數(shù)量的關系。如圖5所示,最終收斂值隨著維度上升而下降,說明了隨著維度數(shù)的上升算法的估計精度將下降。 然而即使維度數(shù)達到了60,收斂值仍然大于0.8,這個值大于所有樣本用戶的平均門限值,因而處于可接受的誤差范圍內。而對于大于60的分類數(shù)量對于普通的數(shù)字電視系統(tǒng)來說已經過大了。
4 結 論
在本文中建立了基于向量空間的數(shù)字電視用戶模型,重點研究了用戶偏好并提出了置信用戶的概念。然后根據(jù)從優(yōu)酷視頻網(wǎng)中采集的信息分析得出了置信用戶大量存在的結論。
在這個基礎上提出了推薦系統(tǒng)方案,利用基于內容的推薦方案,采用了取節(jié)目特征向量簇團重心的算法來估計用戶的偏好向量,并根據(jù)偏好向量進行節(jié)目推薦。仿真結果說明了算法的準確性和收斂性。根據(jù)仿真結果,歷史窗尺寸m=100是一個適合的算法參考值。本文中的模型和方案對于電視推薦系統(tǒng)的發(fā)展和應用是有益的。
參考文獻
[1] MUKHERJEE D, BANERJEE S, BHATTACHARYA S, et al. A Context?aware recommendation system considering both user preferences and learned behavior [C]// International Conference on IT in Asia. Kuching, Sarawak: IEEE, 2011: 1?7.
[2] GAO Qi, XIN Le. Products recommend algorithm based on customer preference model and affective computing [C]// Proceedings of the 29th Chinese Control Conference. Beijing: IEEE, 2010: 2981?2986.
[3] ADOMAVICIUS G, TUZHILIN A. Toward the next generation of recommender systems: a survey of the state?of?the?art and possible extensions [J]. IEEE Transactions on Knowledge and Data Eng, 2005, 17(6): 734?749.
[4] FERNANDEZ Y B, ARIAS J J P, NORES M L, et al. AVATAR: an improved solution for personalized TV based on semantic inference [J]. IEEE Transactions on Consumer Electron., 2006, 52(1): 223?231.
[5] ISOBE T, FUJIWARA M, KANETA H, et al. Development of a TV reception system personalized with viewing habits [J]. IEEE Transactions on Consumer Electron, 2005, 51(2): 665?674.
[6] BJELICA Milan. Towards TV recommender system: experiments with user modeling [J]. IEEE Transactions on Consumer Electronics, 2010, 56(3): 1763?1769.
[7] 白妙青.云計算技術在廣播電視網(wǎng)中的應用[J].現(xiàn)代電子技術,2013,36(11):188?191.
圖4 收斂值?維度數(shù)曲線
在圖4中,專門研究了最終收斂值和維度數(shù)量的關系。如圖5所示,最終收斂值隨著維度上升而下降,說明了隨著維度數(shù)的上升算法的估計精度將下降。 然而即使維度數(shù)達到了60,收斂值仍然大于0.8,這個值大于所有樣本用戶的平均門限值,因而處于可接受的誤差范圍內。而對于大于60的分類數(shù)量對于普通的數(shù)字電視系統(tǒng)來說已經過大了。
4 結 論
在本文中建立了基于向量空間的數(shù)字電視用戶模型,重點研究了用戶偏好并提出了置信用戶的概念。然后根據(jù)從優(yōu)酷視頻網(wǎng)中采集的信息分析得出了置信用戶大量存在的結論。
在這個基礎上提出了推薦系統(tǒng)方案,利用基于內容的推薦方案,采用了取節(jié)目特征向量簇團重心的算法來估計用戶的偏好向量,并根據(jù)偏好向量進行節(jié)目推薦。仿真結果說明了算法的準確性和收斂性。根據(jù)仿真結果,歷史窗尺寸m=100是一個適合的算法參考值。本文中的模型和方案對于電視推薦系統(tǒng)的發(fā)展和應用是有益的。
參考文獻
[1] MUKHERJEE D, BANERJEE S, BHATTACHARYA S, et al. A Context?aware recommendation system considering both user preferences and learned behavior [C]// International Conference on IT in Asia. Kuching, Sarawak: IEEE, 2011: 1?7.
[2] GAO Qi, XIN Le. Products recommend algorithm based on customer preference model and affective computing [C]// Proceedings of the 29th Chinese Control Conference. Beijing: IEEE, 2010: 2981?2986.
[3] ADOMAVICIUS G, TUZHILIN A. Toward the next generation of recommender systems: a survey of the state?of?the?art and possible extensions [J]. IEEE Transactions on Knowledge and Data Eng, 2005, 17(6): 734?749.
[4] FERNANDEZ Y B, ARIAS J J P, NORES M L, et al. AVATAR: an improved solution for personalized TV based on semantic inference [J]. IEEE Transactions on Consumer Electron., 2006, 52(1): 223?231.
[5] ISOBE T, FUJIWARA M, KANETA H, et al. Development of a TV reception system personalized with viewing habits [J]. IEEE Transactions on Consumer Electron, 2005, 51(2): 665?674.
[6] BJELICA Milan. Towards TV recommender system: experiments with user modeling [J]. IEEE Transactions on Consumer Electronics, 2010, 56(3): 1763?1769.
[7] 白妙青.云計算技術在廣播電視網(wǎng)中的應用[J].現(xiàn)代電子技術,2013,36(11):188?191.