朱曉松,郭景峰,李 爽,郝 童
1(燕山大學 信息科學與工程學院,河北 秦皇島 066004)2(河北省文化旅游大數據技術創新中心,河北 承德 067000)3(河北環境工程學院生態系,河北 秦皇島 066102)4(天津大學 建筑學院,天津 300000)5(秦皇島市城市景觀生態與規劃設計重點實驗室,河北 秦皇島 066102)
E-mail:xiaosongzhu@ysu.edu.cn
一直以來,直播電視是人們主要的收視形態之一.隨著直播頻道的不斷增加,節目越來越豐富,觀眾享受視聽盛宴的同時不得不花費額外的時間和精力思考“我該看哪個?”,這就是所謂的“信息過載”問題.經統計,傳統有線電視用戶瀏覽頻道的平均人機響應時間為3-5秒,Nogueira等研究表明用戶尋找一個合適的內容平均需要152秒[1],通過切換頻道尋找目標節目的方式耗時且令人厭煩.推薦系統成為直播電視有效的收視工具[2].推薦系統在VoD(Video on Demand)領域的工業應用廣泛,比如Netflix[3],Youtube[4].與VoD相比,直播電視有諸多特點,這給其推薦系統的實施帶來挑戰:
1)實時性.VoD為按需收視,它為用戶提供了選擇和檢索節目所需的時間和條件.而直播電視以廣播形式實時播出,視頻的推薦只能發生在候選節目正在播出時.提前推薦,則候選節目未播出.事后推薦,則候選節目已播放完畢.因此,直播電視的推薦時間窗口小,推薦系統需對用戶有快速的反饋.
2)多用戶.直播電視通常面對一群人,比如家庭成員,這些人共用一個賬戶,這給用戶的偏好提取增加了困難.
3)隱性反饋.直播電視通常以電視機和機頂盒為載體,用戶通過遙控器來選擇節目,人機交互效率低.因此,用戶留下的反饋類型單一,通常以隱性反饋(比如收視時長)代替顯性反饋(比如評分)來表達對節目的偏好.
4)冷啟動.直播電視每天更新大量節目,這些新節目沒有用戶的反饋,推薦系統缺乏推薦依據,節目冷啟動問題突出.
從推薦目標來看,直播電視推薦系統可劃分為推薦節目和推薦頻道兩類方法[5].推薦節目的方法與VoD領域的推薦策略相近,其中協同過濾被廣泛采用,然而協同過濾的主要缺點是無法應對冷啟動,并且實時性差.推薦頻道的方法關注用戶對頻道的偏好,往往利用時間信息區分用戶偏好,從而得到用戶在某個時段對頻道的偏好,它不需要關注頻道內容,因此能夠應對節目冷啟動問題.推薦頻道的方法可通過線下訓練模型,具有較好的實時性.然而,這類方法也存在不足,表現在3個方面:
1)大多方法利用收視時段區分多用戶偏好,然而時段劃分規則依賴經驗,不具通用性,可解釋性差;
2)在偏好估計時,現有模型很少考慮用戶偏好會隨時間的推移而發生變化.
3)已有的頻道推薦的模型往往不關注正在播出的節目,無法根據實時節目特征動態調整輸出結果.
為解決上述問題,本文僅以用戶收視記錄和電子節目指南(Electronic Program Guides,EPG)為原始數據,針對節目冷啟動下的直播電視推薦任務,提出了時間相關的推薦算法TTRec(見圖1).首先,采用聚類的方法按時段將每個物理頻道劃分為若干虛擬頻道,構建用戶-虛擬頻道偏好矩陣.其次,利用遺忘函數調整用戶隱性反饋的量化結果,將其作為偏好矩陣的填充值.然后,采用協同過濾算法對偏好矩陣中未知項進行預測.最后,以節目時間特征為屬性,通過計算正在播出的新節目與歷史節目的相似度來調整偏好矩陣中對應的數值,調整后的結果用于生成推薦列表.

圖1 所提算法Fig.1 Proposed algorithm
本文的主要貢獻包括:
·采用聚類的方法將每個物理頻道劃分為多個虛擬頻道來區分多用戶偏好,以用戶-虛擬頻道偏好矩陣代替傳統的用戶-項目矩陣來估計用戶偏好.
·利用遺忘函數調整用戶的隱性反饋的量化結果,從而優化偏好估計的效果.
·通過用戶-虛擬頻道偏好矩陣將直播電視冷啟動下的推薦轉換為協同過濾問題,采用協同過濾算法對矩陣中未知項進行預測,解決了節目冷啟動問題.
·通過節目相似度計算將正在播出的節目信息引入模型中,提升推薦結果.
隨著移動互聯網的發展及智能電視、智能機頂盒的普及,直播電視推薦系統的研究逐漸成為熱點.在直播電視用戶的收視行為中,收視時間是一項重要的信息,它反映了用戶的收視偏好,也間接體現了節目(頻道)的特征.因此,它在直播電視推薦任務中得到了研究者的關注.本文根據推薦推薦目標將直播電視推薦方法分為推薦節目的方法和推薦頻道的方法,并分別闡述兩類方法中的利用收視時間信息的研究成果.推薦節目的方法與VoD推薦任務的解決方案相近.在2015年,Ras等[5]做了一項關于電視推薦問題相關文獻的調查工作,尤其是推薦節目的方法.Bambini 等[6]提出了基于內容方法,他們通過計算節目媒體信息的相似度來解決直播電視節目冷啟動問題.基于內容的算法是各類推薦任務中解決冷啟動問題的通用方法,但推薦結果在新穎度和多樣性方面表現較差,推薦準確性依賴標簽的維度和質量.Hu等[7]將用戶對節目的偏好直接轉換為0或1,利用矩陣分解方法預測偏好.這種轉換丟失了大量原始信息.Jin等[8]構造了一種用戶收視時長和觀看時長占比的評分函數,利用Pearson相關系數計算用戶間相似度,通過基于用戶相似度的協同過濾算法(User-based CF,UCF)實現節目推薦.Wang等[9]構建了account-item-time張量,通過聚類張量分解后的時間子空間,來標識賬戶里面的用戶.Cho等[10]利用最小二乘法對user-item偏好矩陣進行偏好預測生成評分矩陣,利用收視概率模型對評分矩陣調節.RecTime[11]考慮了時間因素的兩個維度構建4-d張量,通過因式分解,系統自然地同時識別了推薦時間和推薦項.然而,這類基于協同過濾技術的方法面臨著矩陣(張量)稀疏和節目冷啟動的問題.其它一些方法,比如,Chang等[12]和Zhang等[13]從用戶收視歷史和社會網絡當中獲得用戶偏好.Kim等[14]利用媒體信息提出了一個知識擴展的方法應用到媒體推薦上,也可用于直播電視推薦.Hsu[15]在假定獲得用戶眾多屬性的情況下進行推薦任務研究,包括興趣,情感,經歷,人口信息等,利用ANN實現節目推薦.Song等[16]利用基于貝葉斯概率模型的數據挖掘方法來分析節目大量的本文信息提取用戶偏好,向個體或者群體用戶提供推薦.Young等[17]引入了OTT數據,并將其與IPTV數據混合使用,利用顯性的混合策略提升推薦準確率.Gon?alves等[18]提出了一個L2R的方法利用上下文信息和隱性反饋來幫助運營商提升推薦效果.可見,這些方法都依靠了不同類型的額外數據來解決冷啟動問題.
電視節目以頻道為載體,因此推薦頻道的方法是直播電視推薦任務特有的方法,相比推薦節目的方法,其相關研究工作較少.推薦頻道的方法通常借助時間因素將用戶對節目的偏好轉換為對頻道的偏好,并以頻道為媒介把歷史節目和新節目關聯起來,從而解決節目冷啟動問題.比如,Cremonesi等[19]將一天分成8個時段并為每個用戶構建time-channel評分矩陣,利用每個收視時段的累積收視時長作為用戶在該時段的收視偏好,通過張量分解預測偏好.Turrin等[20]和Wu等[21]分別將一周等分成24×7和48×7個時段,結合節目分類信息捕捉用戶偏好.上述方法所采用的偏好估計模型(比如user-channel)的規模遠小于user-item矩陣,因而緩解了數據稀疏性問題.Yu等[22]融合多種推薦頻道的策略,把推薦任務看作二分類問題,該方法即考慮用戶對頻道的偏好又兼顧了當前正在播出的節目,采用24均分的時段劃分策略.Zui等[23]將用戶在頻道上的累計觀看時長作為頻道偏好,通過計算頻道間的相似度完成推薦.Bahn和Baek[24]分析用戶的歷史收視行為從時間局部性和流行相關性提取用戶收視特征.綜上,推薦頻道的方法不必關注新節目播放時用戶的反饋和正在播出的節目信息,因而可通過線下實現模型的全部計算,使得算法具有較好實時性.然而,上述方法的時段劃分策略依賴經驗,可解釋性差,忽視了對正在播出的節目特征的提取,也未考慮用戶的偏好會隨時間的推移而變化的特點.
假定:已知用戶集U、頻道集合C、歷史節目集合Rhis,在t時刻,正在播出的節目集合為Rnow,節目冷啟動問題表示為Rhis∩Rnow=?,有|Rnow|=|C|,且對于任意歷史節目ph∈Rhis,有argChannel(ph)∈C,同理,任意正在播出的節目pn∈Rnow,有argChannel(pn)∈C.那么推薦任務是:在t時刻,為用戶u的產生TOP-N推薦列表ranku(C,N)(推薦頻道)或者ranku(Rnow,N)(推薦節目).選擇用戶切換頻道的時刻作為換臺時刻,換臺操作表明當前用戶正在尋找喜愛的內容,此時的推薦正好滿足其需求,而這一時刻就是用戶收視記錄的開始時間.對于直播電視而言,常見的數據集包含收視記錄和EPG(見表1和表2),這些數據為最為基礎,本文以此開展工作,所提方法包括偏好估計、偏好預測、推薦3個過程(見圖1).

表1 收視記錄Table 1 Viewing record
1)偏好估計.通過收視時段劃分的方式將每個頻道劃分成ts個收視時段,每個時段被稱為一個虛擬頻道.因此,m個用戶的所有收視行為均可映射到n個虛擬頻道上,通過構建用戶-虛擬頻道評分矩陣E=(eu,v)m×n來描述用戶偏好.具體的,將每個收視行為量化,并經遺忘函數調整后累加到E中,E中的未填充項保留為空.

表2 EPGTable 2 EPG


下文將詳細描述上述過程.
偏好估計包含量化隱性反饋、生成虛擬頻道、構建用戶-虛擬頻道評分矩陣3個步驟.
首先,量化隱性反饋.用戶的隱性反饋如表1所示.已有的量化方法包括收視時長累計法[25],“0-1”法[26],收視時長占比法[10].注意到,收視時長累計法只考慮了用戶的收視時長,但未考慮節目自身的長度.假設用戶u從節目的播放時刻(bs_time)分別收看了阿甘正傳(節目時長為142分鐘)和紙牌屋(節目時長為45分鐘)各40分鐘,收視時長累計法認為兩次收視行為等價,但很顯然用戶u對紙牌屋的偏好要高于阿甘正傳.“0-1”法只反映了用戶是否收看了目標節目,對原始信息的利用明顯不足.因此,本文選擇收視占比法,即:
(1)
其中,vd=end_time-start_time,rt=be_time-start_time.
其次,電視頻道通常在不同的時段播放不同類型的節目,尤其是綜合類型的頻道.比如,CCTV-1在早晨播放早間新聞,在下午放學后播放動畫片,在晚上播放電視劇和晚間新聞等,每個時段播放的內容面向不同的收視群體,電視節目的播出呈現周期性.因此,將頻道c的一個播出周期(比如一天)劃分成若干子時段,每個子時段稱為一個虛擬頻道.與現有基于經驗的時段劃分策略不同,考慮到每個頻道的節目風格及播出計劃存在差異,本文將與頻道c相關的所有用戶的收視記錄的開始時間(start_time)作為輸入,利用Kmeans++(歐式距離)將頻道c的一個播出周期(比如一天)聚類為ts個子時段,每個子時段對應頻道c的一個虛擬頻道.即:
(2)
式(2)表明,頻道c的時段劃分集合Dc由連續的收視子時段dcs組成,各子時段沒有交集.其中,dcs是頻道c的第s個收視時段,也即頻道c的第s個虛擬頻道.對于任意頻道q,若c≠q,則Dc≠Dq.虛擬頻道集合為V={vcs|c∈C,s∈[1,2,…,min(ts,Lc)]},Lc表示為所有用戶關于頻道c的收視記錄集合,C為物理頻道的集合.聚類結果反映了該頻道周期性的播出特征.類似的,陶永才等[27]針對用戶閱讀過的新聞聚類,為用戶劃分閱讀時段.注意到,盡管虛擬頻道數量多于物理頻道,但任意時刻正在播出節目的虛擬頻道的數量與物理頻道數量相等.
虛擬頻道本質上是通過引入時間因素將物理頻道劃分為若干子“頻道”,由于電視節目的播出呈現明顯的周期性,因此,這種基于時段的劃分方式能夠有效地反映每個頻道的播出特征.此外,直播電視觀眾分為若干收視群體,比如老年人,兒童,成年人等,不同的收視人群在收視時段的選擇和頻道的選擇方面存在差異,而基于收視行為的虛擬頻道劃分恰能區分不同的收視人群.相比基于經驗的時段劃分方式,本文方法反映了頻道間的差異、可解釋性強.
最后,構建用戶-虛擬頻道評分矩陣E=(eu,v)m×n,用戶u對虛擬頻道v的評分為:
(3)

F(ru,i,hi)=ru,i×e(-l×hi)
(4)
其中,l表示為冷卻系數,e為數學常數.
F(ru,i,hi)=ru,i×(1-0.56×hi0.06)
(5)
觀眾的收視行為呈周期性,主要體現在收視時段上,而不是在頻道或是節目的選擇上.比如,“追劇”是一種常見的收視行為,某觀眾在每晚20:05收看北京衛視的《大宅門》,此后又在每晚19:35 “追”浙江衛視的《亮劍》,兩次“追劇”發生在同一個收視時段s.在兩次追劇評分相等的情況下,若整部《亮劍》還未結束,該觀眾仍有繼續“追”《亮劍》可能,此時通過遺忘函數使得該用戶在s時段對浙江衛視的偏好高于對北京衛視的偏好.

1)SVD是著名的矩陣分解算法,它將Xp×q分解成3個不同的矩陣Lp×y,My×y,Ry×q,表示為:
X=LMRT
(6)
其中,Lp×y和Ry×q分別為正交矩陣.My×y為奇異矩陣,其對角線數字為非負實數.如從高到低保留g個對角線數字,其余對角線數字用0代替,那么通過式(7),得到與原始矩陣X接近的低秩矩陣X(g),從而對原始矩陣中的未知項進行預測.
(7)
2)張量分解包括CP分解和Tucker分解.其中,Tucker分解將張量分解為核心張量在每個模型上與矩陣的乘積.因此,三維張量XI×J×K可以表示為:
(8)
其中,A∈RI×P,B∈RJ×Q和C∈RK×R為因子矩陣,通常是正交的.G∈RP×Q×R為核心張量.P、Q和R為A、B和C的成分數(例如列相量的數目),P≤I,Q≤J,R≤K.對于X中未知元素xijk,采用式(9)進行預測:
(9)
這里令K=R=1,采用式(9)預測二維張量user-virtualchannel的空置項.
經過偏好預測,在推薦時刻t,用戶u的任意候選節目均能唯一對應一個虛擬頻道并在偏好預測矩陣E′中對應一個預測評分,此時E′已經能夠應對節目冷啟動.為進一步優化推薦模型,本文引入候選節目信息.通常,各頻道在每天的同一時段播放的節目類型相似.因此,通過計算同一虛擬頻道中候選節目與歷史節目的相似度,結合用戶對歷史節目的評分來預測用戶對候選節目的評分.節目間相似度的計算通常采用基于媒體信息(比如節目分類)的方法,本文提出利用時間信息計算節目相似度的方法.假設同一虛擬頻道播出的不同節目i′和i,若二者時間信息{bs_time,be_time,be_time-bs_time}相近,則兩個節目相似,利用歐式距離來計算兩節目的相似度sim(i′,i).推薦過程包括3個步驟:
首先,利用節目相似度預測用戶u對節目i′的評分su,i′,如式(10)所示:
(10)


(11)
最后,通過式(12)得到用戶u在時間t對節目i′的偏好:
(12)
數據源來于生產系統,從2017年5月17日-2017年6月20日包括包含35143個機頂盒的收視記錄和EPG.為方便實驗,本文隨機選擇500個賬號,每個賬號至少200條收視記錄,生成用作實驗的數據集.將每個賬號的收視記錄按照發生時間先后排序,以80∶20的比例分成訓練集和測試集,過濾掉測試集中收視時長少于300秒的收視行為.數據集中各節目id均不相同,相關算法在完全節目冷啟動條件下實施,即Rhis∩Rnow=?.采用Precision、Recall、nDCG和MRR作為評價標準.
為展示所提算法的性能,本文從偏好估計及偏好預測的角度選擇對比算法,并增加Pop方法以反映直播電視業務的收視特點,這些方法均能應對冷啟動問題:
Pop:在推薦時刻t,統計每個頻道的在線收看人次,按照從多到少排列.
UCT[29]:基于時段劃分的推薦模型.首先,將每天分成8個收視時段,構建user-time-channel評分展張量;其次,將每個收視時段的累積收視時長作為用戶在該時段的收視偏好;最后,通過Tucker分解實現結果預測.
MFHM[8]:基于用戶相似度的協同過濾模型.通過引入權重系數,融合用戶的收視時長和觀看時長占比,構建用戶收視評分函數.利用Pearson相關系數計算用戶間相似度,通過基于user-based的協同過濾算法實現推薦,在推薦時刻利用鄰居對當前節目已播放部分pf的評分來代替未播放部分pl的評分.
ST[30]:基于圖的推薦方法.本文采用基于{用戶,項目,標簽}3部圖的方法ST[30]來捕捉用戶-頻道-時段特征.1)將所有節目的播出開始時間聚類,產生P=24個時段標簽集Hs;2)將所有節目的播出結束時間聚類,產生P=24個時段標簽集He;3)頻道名稱標簽集Tc.全部標簽集為T={Hs,He,Tc},標簽總數為|T|=24+24+n.
WIM[10]:當前最新的直播電視推薦算法,它從偏好估計、評分預測、推薦3個環節提升算法性能.首先,將用戶的收視行為提取為收視評分以及評分權重;其次,采用加權的最小二乘法預測未評分項;最后,利用收視概率模型對評分矩陣調節,將調節結果按照降序后產生推薦列表.本文采用加權的最小二乘法的隱特征空間維度為60,迭代次數300.本文對WIM進行了調整以使其能應對節目冷啟動,調整方法在對比實驗中說明.
4.3.1 數據的利用
偏好估計是本文模型的基礎,本文利用偏好估計來選擇最佳的原始數據.直播電視用戶通過反饋收視時長來表達對目標節目的偏好.極短的一個收視時長很可能意味著用戶剛剛了解的節目內容(比如,節目名稱及節目類型)便表達了一種負面情緒,這類行為在收視行為中比重較大,比如,30秒以內的收視時長,占收視行為的比例為60.58%,這類表達負面情緒的收視行為被稱為負反饋,其余行為則被稱為正反饋.區分正負反饋的目的在于有效的利用數據,提高偏好估計的效果.對于不同的模型,正負反饋的區分標準也不相同,比如,WIM采用收視時長占比[10],Wang等[9]采用設定收視時長閾值(300秒).本文設定收視時長閾值α來過濾數據,探討如何給本文模型提供最佳輸入.分別將α∈{0,60,120,180,240,300,360}作為門限過濾掉“短暫”的收視行為.從表3看到,當α=0時,本文模型獲得最好結果.當α=240,本文模型獲

表3 α對偏好估計的影響(ts=8)Table 3 Impaction of α on preference estimate(ts=8)
得最好的Top-1,但推薦列表質量下降.這是由于隨著數據量的減少,偏好估計矩陣變得稀疏,同時非熱點偏好的估計可能變得不準確,影響了冷門偏好的推薦效果.然而,因熱門偏好的樣本豐富,數據的減少對熱門偏好估計的影響較小.相反,數據質量的提升使得其偏好估計更加準確,從而提升了模型對熱點內容的推薦精度.
4.3.2 偏好估計效果
固定α=0,調整虛擬節目劃分的聚類數.如表4所示,盡管在ts=12處和ts=1處,部分指標表現突出.但在ts=4處,nDCG@5和MRR明顯優于其它.由于好的候選項列表對后續的偏好預測和推薦有利.因此,選擇在α=0,ts=4的條件下,比較遺忘函數的效果.為便于呈現,將User-virtual channel偏好提取策略表示為E1,Newton′s law of cooling(冷卻系數l=0.03)表示為E2,Hermann Ebbinghaus遺忘曲線表示為E3.如表5所示,相比E1,組合(E1+E2)和組合(E1+E3)各方面的評價結果都有不同程度的提升.在采用E1的條件下,牛頓冷卻定律的效果優于艾賓浩斯遺忘曲線.從表6中,本文獲得了牛頓冷卻定律的最佳冷卻系數(l=0.03).
4.3.3 偏好估計效果
如表7所示,P1表示SVD,P2表示Tucker分解.通過策略組合來評價每個策略的作用.組合(E1+E2+P1)和組合(E1+E2+P2)的效果均比組合(E1+E2)(表5)的效果好,同樣,組合(E1+E3+P1)和組合(E1+E3+P2)的效果均比組合(E1+E3)(表5)的效果好,這說明SVD和張量分解均發揮了作用.組合(E1+E2+P1)的效果優于組合(E1+E2+P2)并且組合(E1+E3+P1)的效果優于組合(E1+E3+P2),這說明SVD的預測效果好于Tucker分解.最終,組合(E1+E2+P1)的效果最好.為避免策略疊加帶來負面影響,本文補充了實驗,從表7中看到,組合(E1+E2+P1)和組合(E1+E3+P1)的效果均優于組合(E1+P1)的效果,同樣,組合(E1+E2+P2)和組合(E1+E3+P2)的效果均優于比組合(E1+P2)的效果,這說明偏好預測策略(P1和P2)并沒有影響到遺忘函數的效果.

表4 ts對偏好估計的影響(α=0)Table 4 Impaction of ts on preference estimate(α=0)

表5 遺忘函數的效果(Newton′s law of cooling VS Hermann Ebbinghaus)Table 5 Effect of memory function(Newton′s law of cooling VS Hermann Ebbinghaus)

表6 Newton′s law of cooling的冷卻系數l對結果的影響Table 6 Impaction of Newton′s law of cooling
4.3.4 推 薦
如圖2所示,在組合(E1+E2+P1)上增加推薦策略R1后,模型效果在各方面的表現均有所提升.整體來看,每種策略對提升推薦效果均發揮了作用.從圖2看到,組合(E1+E2+P1)與組合(E1+E2)幾乎重疊.這是因為相比傳統用戶-節目評分矩陣的高稀疏性,用戶-虛擬頻道矩陣稀疏性并不明顯,所以P1(SVD)預測填空的項目不多.通過表7中組合(E1+E2+P2)、組合(E1+E3+P2)分別與表5中組合(E1+E2)、組合(E1+E3)的比較,本文得到P2(Tucker分解)也是同樣的效果.

表7 策略融合效果對比Table 7 Effect comparison of combined strategies

圖2 策略融合對比Fig.2 Comparison of strategies fusion
4.3.5 結果對比
本節將所提算法與已有算法進行對比.如圖3所示,本文所提方法的表現明顯優于對比算法.在對比算法中,WIM和ST表現突出,各項評價標準得分相近.WIM無法應對節目冷啟動問題,因此在偏好估計時,本文采用用戶-虛擬頻道偏好矩陣(ts=1為最佳參數)代替原算法中的用戶-節目偏好矩陣.隨著推薦列表長度的增加,除Pop外,各算法的推薦效果均得到明顯提升,其中MFHM推薦效果提升最快.具體的,WIM在N∈[1,7]處優于ST,但隨著推薦列表長度的增加,ST提升較快反超WIM.從nDCG來看,WIM一直領先ST,并在MRR指標中高于ST,成為對比算法中的最佳算法.盡管MFHM的推薦準確率隨著推薦列表的增加而明顯提升,但其在各N值處的表現明顯弱于其它對比算法,在Recall@1處的表現僅僅稍好于Pop.Pop的推薦能力在推薦列表N∈[1,5]處有較明顯提升,在Recall@5處達到19.32%,之后提升趨緩慢.這表明,少數熱播節目吸引了一定人群,但個性化收視需求明顯,電視節目收視呈現長尾效應.

圖3 方法對比Fig.3 Comparison of different algorithms
4.3.6 數據稀疏性的影響
按比例(80%、60%、40%、20%)從訓練集(Pop為測試集)中為每一個用戶隨機選擇數據(不放回采樣),生成稀疏訓練集,測試各算法在數據稀疏情況下的表現.如圖4所示,隨著數據的逐漸減少,各算法各項指標均逐漸下降,降幅差異明顯.總體來看,本文的方法表現仍然為最好,在不同的數據集條件下均領先各對比算法.

圖4 不同稀疏數據集下各算法對比(MRR)Fig.4 Comparison of different algorithms in different sparse data(MRR)
針對現有推薦算法在應對直播電視節目冷啟動時存在的不足,本文在沒有引入額外信息的情況下,提出了一個時間相關的直播電視推薦算法,它包含偏好估計、偏好預測、推薦3個部分.首先,采用用戶-虛擬頻道偏好矩陣代替傳統的用戶-節目偏好矩陣,緩解了數據稀疏帶來的負面影響,引入遺忘函數改善了偏好估計的準確性,然后,通過基于協同過濾的偏好預測完善了偏好矩陣,從而應對節目冷啟動問題,最后,通過計算節目相似度進一步提升推薦效果.在真實的數據集中的對比實驗表明:在Recall@1和Recall@5,本文所提方法相比最新方法WIM分別提升25.91%、6.86%,相比ST分別提升了32.97%和9.58%,相比UCT分別提升43.94%,23.24%,相比MFHM分別提升198.51%,83.09%,相比Pop分別提升249.68%和267.03%.