一種基于時序數(shù)據(jù)挖掘的視頻推薦方法
【技術領域】
[0001] 本發(fā)明屬于視頻技術、視頻推薦技術領域,具體涉及一種基于時序數(shù)據(jù)挖掘的視 頻推薦方法。
【背景技術】
[0002] 隨著通信技術的發(fā)展,網(wǎng)絡可用帶寬迅速增加,觀看視頻對于PC用戶甚至移動終 端用戶都已經(jīng)是一件稀松平常的事,這也帶來互聯(lián)網(wǎng)視頻行業(yè)如火如荼的發(fā)展,而視頻推 薦系統(tǒng)是互聯(lián)網(wǎng)視頻服務中的重要組成部分。最初的視頻推薦系統(tǒng)根據(jù)影片之間的相似性 進行推薦,對于觀看同一部影片的兩個用戶會給出相同的推薦結果。然而近年來隨著個性 化推薦方法在搜索引擎和購物網(wǎng)站上的成功應用,視頻推薦領域也越來越重視針對用戶特 征的個性化視頻推薦。個性化視頻推薦綜合考慮用戶的觀影歷史、社交關系及當前播放影 片等信息,推薦該用戶可能感興趣的影片。可以預見,個性化推薦方法在視頻領域也將擁有 廣闊的應用前景和可觀的盈利預期。
[0003] 個性化視頻推薦方法大致分為內(nèi)容過濾方法(Content-basedRecommendation) 和協(xié)同過濾方法(CollaborativeFilteringRecommendation)兩類。內(nèi)容過濾方法根據(jù) 用戶喜歡的影片信息,給用戶推薦在內(nèi)容上相似的其他視頻,比如A用戶喜歡《讓子彈飛》, 那么內(nèi)容過濾系統(tǒng)會推薦姜文作為導演的其他作品如《一步之遙》。由此可見內(nèi)容過濾方 法的實質(zhì)是計算影片的相似度,一般情況下,內(nèi)容過濾方法先定義一系列標簽用于表征一 個視頻特征和用戶喜好,從而將視頻相似度問題轉化為向量距離計算問題。協(xié)同過濾方法 利用用戶對項目的歷史評分數(shù)據(jù)計算用戶相似性或者項目相似性,進而根據(jù)相似性進行推 薦。協(xié)同過濾方法記錄所有用戶對所有項目的評分,形成一個M*N維的用戶-項目評分矩 陣,其中M是用戶數(shù),N是項目數(shù),矩陣中的一個單元Rm,n表示用戶m對項目n的評分,矩陣 中每一行代表一個用戶向量,通過相似度計算方法可以得到用戶向量間的相似度,也即用 戶間的相似度;矩陣中的每一列代表一個項目,同樣的可以用相似度計算方法得到項目間 的相似度。根據(jù)用戶間的相似度,可以給一個用戶推薦與他有相似興趣的用戶所喜歡的項 目,這種推薦叫做基于用戶的協(xié)同過濾(UserCF);根據(jù)項目間的相似度,可以給一個用戶 推薦與他喜歡的項目相似的項目,這種推薦叫做基于項目的協(xié)同過濾(ItemCF)。
[0004] 無論內(nèi)容過濾算法還是協(xié)同過濾算法,都是從用戶興趣的角度出發(fā),為用戶推薦 其可能喜歡的影片,然而現(xiàn)實生活中,用戶的興趣往往是隨著時間逐漸變化著的,這種現(xiàn)象 叫做興趣迀移。如果在給用戶進行個性化視頻推薦時沒有考慮到用戶的興趣迀移,就意味 著系統(tǒng)可能只給用戶推薦了他之前喜歡的影片,但與其最近的興趣不符,這就降低了推薦 的準確性。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明針對個性化視頻推薦系統(tǒng)中的用戶興趣迀移問題,提供一種基于時序數(shù)據(jù) 挖掘的視頻推薦方法,能夠提高視頻推薦的準確性和效率。
[0006] 本發(fā)明采用的技術方案如下:
[0007] -種基于時序數(shù)據(jù)挖掘的視頻推薦方法,其步驟包括:
[0008] 1)通過第三方數(shù)據(jù)分析用戶對視頻的興趣梯度變化,并得到用戶興趣梯度曲線, 將用戶興趣梯度曲線的奇異點作為用戶興趣迀移的時間點;
[0009] 2)確定用戶最近的興趣迀移時間點,對用戶最近的興趣迀移時間點以后的用 戶-項目評分進行采集,從而建立選定時間窗口內(nèi)的符合用戶當前興趣的用戶-項目評分 矩陣;
[0010] 3)基于所述用戶-項目評分矩陣,通過使用隨機游走模型進行用戶的個性化視頻 推薦。
[0011] 進一步地,步驟1)所述第三方數(shù)據(jù)優(yōu)選為豆瓣評分,通過分析用戶的豆瓣評分歷 史繪制用戶興趣梯度曲線。
[0012] 進一步地,步驟1)得到所述用戶興趣梯度曲線的方法是:將視頻的各個屬性組成 一個屬性向量;在每個時間點,將視頻的各個屬性按照當前時間以及之前時間的用戶評分 記錄進行加權,得到一個用戶興趣向量;根據(jù)用戶在時間軸上多個時間點的一系列用戶興 趣向量,分析得到隨時間變化的用戶興趣梯度曲線。所述視頻的各個屬性包括:名稱、演員、 導演、年代、簡介等。
[0013] 進一步地,步驟2)所述用戶-項目評分包括顯式評分和隱式評分;所述顯式評分 是在用戶觀看視頻時,用戶對當前正在觀看的視頻進行的評分;所述隱式評分是記錄用戶 的觀看、跳轉、收藏、分享動作,根據(jù)用戶的不同動作預測用戶對視頻的喜好程度。
[0014] 進一步地,步驟2)通過對用戶-項目評分進行量化及歸一化過程,得到興趣迀移 時間以后的用戶-項目評分矩陣,矩陣中的每一行代表一個用戶特征,每一列代表一個項 目特征。
[0015] 進一步地,步驟3)首先根據(jù)用戶-項目評分矩陣計算出用戶u在第k步處于項目 j的轉移概率,然后計算用戶u對項目j的全局概率,然后計算所有用戶對所有項目的全局 概率,從而得到用戶-項目排序矩陣i,根據(jù)該矩陣進行個性化視頻推薦。
[0016] 本發(fā)明的關鍵點是:通過第三方數(shù)據(jù)給用戶建模,發(fā)現(xiàn)用戶興趣迀移;通過確定 用戶最近的興趣迀移時間點,建立用戶-項目評分矩陣;通過使用隨機游走模型代替協(xié)同 過濾方法進行個性化視頻推薦。
[0017] 本發(fā)明針對個性化視頻推薦系統(tǒng)中的用戶興趣迀移問題,使用第三方數(shù)據(jù)分析用 戶興趣梯度變化,發(fā)現(xiàn)用戶興趣迀移時間,從而確定合適的訓練時間窗口大??;在時間窗 口內(nèi),基于RandomWalker隨機算法創(chuàng)建信任度模型,從而實現(xiàn)針對某個用戶的個性化視 頻推薦。該方法考慮了個性化視頻推薦中的興趣迀移問題,并融合了時間窗口方法和基于 RandomWalker的信任度模型進行個性化視頻推薦,提高了視頻推薦的準確性和效率。
【附圖說明】
[0018] 圖1是基于時序數(shù)據(jù)挖掘的視頻推薦方法總體流程圖。
[0019] 圖2是基于興趣梯度分析的用戶興趣迀移檢測曲線。
【具體實施方式】
[0020] 為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面通過具體實施例和 附圖,對本發(fā)明做進一步說明。
[0021] 本發(fā)明利用第三方數(shù)據(jù)(比如利用豆瓣評分)發(fā)現(xiàn)用戶興趣迀移,確定訓練數(shù)據(jù) 時間窗口大小,從而屏蔽用戶興趣迀移的影響,進而利用基于RandomWalker的信任度模型 進行個性化視頻推薦。圖1是本發(fā)明方法的總體流程圖。
[0022] 1.基于第三方數(shù)據(jù)的用戶興趣迀移發(fā)現(xiàn)
[0023] 如前所述,本發(fā)明使用時間窗口方法克服用戶興趣迀移對推薦結果造成的影響。 固定大小的時間窗口不能準確反應用戶的興趣迀移,因此,為了得到合適的時間窗口大小, 本發(fā)明使用第三方數(shù)據(jù)分析用戶興趣梯度變化,估測用戶興趣迀移時間,從而確定時間窗 口的大小。
[0024] 由于本發(fā)明針對視頻資源進行推薦,而當前中國的網(wǎng)絡環(huán)境中,豆瓣評分無疑是 最適合客觀評估用戶視頻興趣的第三方網(wǎng)站。因此,本發(fā)明分析用戶的豆瓣評分歷史,繪制 用戶興趣梯度曲線,并將其中最近的奇異點作為用戶最近一次興趣迀移起始的標志,以此 來確定視頻推薦模型中時間窗口的大小。
[0025] 1)豆瓣用戶數(shù)據(jù)建模
[0026] 豆瓣是國內(nèi)最大的影片分享及評論平臺,超過千萬用戶的注冊量使得豆瓣評分在 視頻服務業(yè)界享有很大的影響力。豆瓣網(wǎng)站上的用戶評分采用十分滿分制,因此省去了數(shù) 據(jù)歸一化過程,可以直接把用戶在豆瓣上的歷史評分記錄拿來作為訓練數(shù)據(jù)。
[0027] 2)用戶興趣建模
[0028] 為了對影片進行描述,本發(fā)明將影片的名稱、演員、導演、年代、簡介等作為一個 向量,用該屬性向量表示一個影片。比如表1中影片a就可以用[Namea,ActoraActor b,Directora, 2014,KeywordaKeywordd]這樣的屬性向量來表不。
[0029] 根據(jù)某個用戶對其觀看影片的評分記錄,可以將各個影片的屬性按評分進行加 權,從而得到該用戶的喜好特征向量。比如某用戶A共觀看過4部影片,分別為影片a、影片 b、影片c、影片d,而A對四個影片的評分記錄如表1所示。
[0030] 表1用戶觀影歷史及評分記錄表
[0031]
[0032] 那么,該用戶的興趣向量就可以表示為I(t) =[namea*9+nameb*5+name 0^9+name d氺9, actor a氺24+actor b氺9+actor c氺14+actor d氺18, director a氺18+director b*9+director c*9,2014*27+2010*5, keyword a*18+keyword b*9+keyword c*9+keyword e*9+keyword f^9+keyword g*5+keyword h*5] = [name a,actor a,director a, 2014, keyword a](假定興趣向量中每一項只按權重排序取一個值,權值相同的隨機取一 個值)。
[0033] 隨著時間的推移,用戶的評分記錄會越來越多,因此在每個時間點,我們都可以根 據(jù)當前時間以及之前時間的歷史評分記錄,得到一個用戶興趣向量,據(jù)此,我們可以得到該 用戶在時間軸上多個時間點的興趣向量,每個興趣向量都代表了用戶在對應時間點觀看視 頻的偏好。
[0034] 3)用戶興趣迀移發(fā)現(xiàn)
[0035] 依據(jù)上述的一系列用戶興趣向量,可以分析得到隨時間變化的用戶興趣梯度,找 到梯度曲線的奇異點作為興趣迀移的時間點。該點即為用戶興趣迀移的標志,從而為后續(xù) 的協(xié)同過濾視頻推薦算法提供時間窗口大小的依據(jù)。
[0036] 某個時間點t的興趣梯度計算公式為:
[0037] D(t) =1 (t)-I(t~l)
[0038] 其中,D(t)為t時刻的用戶興趣梯度;I(t)為t時刻的用戶興趣向量;I(t_l)為 t時刻前一時刻的用