黃耀 董安明



為滿足用戶影視個性化點播需求,本文提出一種基于深度學習和協同濾波相融合的影視節目推薦算法,通過構建多層感知網絡實現用戶偏好特征和節目特征的提取,進而利用所得到的特征信息通過協同過濾分別給出用戶所喜歡的同類型節目以及偏好節目的推薦。實驗表明本算法所推薦的影視節目能夠充分迎合用戶的個性化需求。
隨著移動互聯網的發展,移動視頻在人們日常娛樂生活中越來越普及。與此同時,影視文化產業的快速發展,影視劇數目和類型的不斷推陳出新,加劇了信息過載問題,導致人們難以從海量資源中找到符合自己口味和興趣的影視劇。個性化推薦通過大數據分析,挖掘用戶的個性化影視劇觀看需求,可將有價值的信息主動推薦給潛在用戶,為解決此類問題提供了一種有效途徑。
影視劇推薦系統近幾年引起學術界的極大關注。有研究提出了一種基于情境感知的個性化影視推薦算法,通過融入情境要素對用戶評分的影響,使得預測評分更加精準。還有研究把用戶相似度和用戶權重的思想融入經典推薦算法中,使得推薦結果更符合用戶的審美口味。也有研究在電影推薦中考慮在線評論中的情感因素,提出了基于協同過濾算法的影視營銷推薦算法,通過神經網絡并結合擴散算法構建了用戶生成推薦列表。
本文以中國網絡電視臺(CNTV)移動用戶真實觀影大數據為基礎,構建了一種基于協同過濾與深度學習相結合的影視劇推薦算法。所提算法利用深度學習技術得到了用戶特征矩陣和節目特征矩陣,進而使用協同過濾的方法進行推薦。實驗表明此方法所推薦的影視劇能夠更好地迎合用戶需求。
系統模型
數據集及需求
本文使用的數據集來自于 CNTV 手機電視在 2019 年 10 月份產生的約 4 900 萬條數據。其涵蓋的信息如圖 1 所示,包括用戶 ID、操作系統、所連接的網絡、移動運營商信息、所在地區、觀看時間、節目類別、節目名稱以及觀看行為記錄(如播放、拖動、停止等)等。本文的目標是根據該數據集為用戶推薦感興趣的節目,以提升收視率。
系統架構
本文將協同過濾與深度學習技術相結合,來構建影視節目推薦系統,為目標用戶推薦感興趣的節目,如圖 2 所示。
協同過濾算法又稱社會過濾,被廣泛應用于推薦系統設計,其背后的原理是已有事物偏好相似的用戶對新事物的偏好也基本一致,從而可根據其他用戶的偏好向目標用戶推薦。協同過濾方法需要首先找出一組與目標用戶偏好一致的鄰居用戶,然后通過分析該鄰居用戶的喜好,將其推薦給目標用戶。
基于協同過濾的思想,根據數據集中所挖掘出的用戶特征和節目特征相似度的對比,實現 2 個功能:
①為指定用戶推薦符合其偏好的節目。主要思路是通過計算該用戶的特征向量與某影視劇特征向量之間的相似度,從而推薦相似度高的節目。
②為指定用戶推薦其喜歡的同類型節目。其基本思路是計算不同節目特征向量之間的相似度,并找出相似度較高的影視劇。
深度學習特征提取
為了獲取上述用戶和節目特征向量,本文采用了深度學習技術,通過構建深度神經網絡,從所給定的數據集上自動學習并抽取特征向量。所提出的基于深度學習的特征提取模型如圖 3 所示。將用戶 ID、用戶省份、節目 ID 和節目名稱等信息,通過嵌入層和文本卷積神經網絡(CNN)編碼后,送入對應的多層全連接神經網絡構成的多層感知器(MLP),分別輸出用戶特征向量和節目特征向量。這 2 個特征再送入乘法層,最終輸出預測的播放次數。以該預測播放次數作為用戶偏好程度的評分。
在訓練階段,通過將輸出預測播放次數與數據集中實際的播放次數進行對比,得到預測均方誤差(MSE),從而構成深度網絡的損失函數,用于實現神經網絡參數的優化調整。
該模型在接收輸入數據時使用了嵌入層,將非數值數據轉換成數值數據,保證神經網絡可以處理。對節目名,使用文本卷積神經網絡將文本處理為特征數據,即首先將一句話分割成單詞,再通過嵌入層產生單詞向量編碼,然后由 CNN 產生電影名的特征向量。
實驗及分析
數據預處理
圖 3 所示的嵌入層將原始的非數值文本數據轉化為數值數據只提取需要的數據列。經過數值化處理后的數據,如圖 4所示。
深度學習訓練收斂曲線
利用數據集中隨機選擇的 100 萬條數據對圖 3 所示的深度學習特征提取模塊進行訓練,其損失函數首先曲線如圖 5所示。可見算法經過數輪迭代即可收斂。
協同過濾推薦結果
在訓練結束后,應用圖 3 所示的深度學習網絡得到輸入數據的用戶特征值矩陣和節目特征值矩陣。在此基礎上,利用余弦相似度計算圖 1 所示所示的相似度,并最終得到協同過濾的 2 種類型節目推薦結果。
其中,圖 6 給出了對 ID 為 24 的用戶所實現的關于體育節目的同類型節目推薦結果。可以看到,對該用戶主要推薦了體育節目,以及與體育精神特征有關的影視劇(《決勝》)。圖 7 顯示了對該用戶所推薦的有可能喜歡的影視節目。可見,此算法不僅僅推薦體育界面,還推薦了熱播劇。
本文提出了一種基于協同濾波和深度學習相結合的節目推薦算法。利用深度學習技術,對央視移動視頻統計數據進行挖掘,產生用戶偏好特征和節目相似特征,進而利用協同過濾實現對特定用戶的專屬節目推薦。實驗結果表明,該方法能夠為用戶提供同類型節目推薦以及偏好節目推薦。