張嘉凱 楊成 劉里



摘? 要: 觀賞電影是一項普及的娛樂活動,很多人會選擇在電影世界中度過閑暇時光。但是,面對網絡上的海量電影資源,人們往往把預定觀看電影的時間浪費在選擇電影上。如何在電影庫中快速、準確地找到中意的電影成了一個急需解決的問題。我們需要一個智能系統,能根據用戶的喜好推薦合適的電影,節省選擇電影的時間。本文研究電影推薦算法,嘗試將文本卷積神經網絡技術融入到電影推薦系統中。實現推薦模型,包含對電影數據集的預處理、對用戶信息(包含用戶性別、年齡、職業等)以及對電影的預估評分。使用Movielens數據集進行電影推薦訓練與測試。實驗結果表明,本文建立的電影推薦模型能夠取得令人滿意的效果。
關鍵詞: 電影推薦系統;文本卷積神經網絡;電影評分;協同過濾
【Abstract】: Watching movies is popular, and many people like to spend their leisure time in the movie world. However, facing to the massive movie resources on the internet, people often waste time on choosing movies. It is an urgent problem how to find movie quickly and accurately in the movie library. We need an intelligent system that can recommend suitable movie according to users preferences, so that it can save our time in selecting movies. This paper researches the movie recommendation algorithm and tries to integrate the Text CNN technology into the movie recommendation system. We Implement a recommendation model, which includes the pre-proposing of the movie data set, the users information (the users gender, age, occupation, etc.) and the users estimated rating of the movie. We use Movielens data set for training and testing. Experimental results demonstrate that the recommendation model can achieve satisfactory results.
【Key words】: Movie recommendation system; Convolutional neural network for Text; Movie rating; Collaborative filtering
0? 引言
互聯網的迅速發展使信息量以指數級別迅速增長。如何幫助用戶在海量的信息數據中快速并且高效地找到對用戶有價值的內容亟待解決。在電影領域,解決電影信息超載問題的一個有效的途徑就是電影推薦系統[1]。電影推薦系統能夠根據注冊用戶的個人信息、觀影信息、瀏覽信息以及評分歷史等信息給用戶推薦感興趣的電影,還能夠從用戶的注冊信息和觀影的行為出發,找到用戶的隱性興趣愛好并將之推薦給用戶。相對于電影搜索引擎來說,電影推薦系統更智能化。一個優秀的電影推薦系統,不僅能為在線用戶提供更多的電影推薦服務,還可以提高用戶對電影平臺的認可度和使用體驗。
1? 研究背景與意義
如今的推薦系統已經在各個領域大放異彩,如電商領域[2]、社交網絡領域[3]、圖書推送領域[4]以及電影視頻推薦領域[5]等。最早的視頻推薦根據網站熱門視頻以及用戶的瀏覽數據排行給用戶提供推薦服務,這樣的服務可以加深用戶對該平臺的粘度并且有利于提高網站流量[6]。對于在線電影供應商,在線影片的推薦質量會直接影響公司的經濟效益,因此各大視頻電影網站都非常重視推薦算法的質量及效率。在二十一世紀初,Netflix的視頻領域推薦大賽[7]為參賽者提供了豐富的獎金,鼓勵參賽者能夠提高相關推薦算法的準確度。這種比賽將關聯規則、奇異值分解(SVD)、協同過濾(Collaborative Filtering)[8]等眾多推薦方法應用于電影推薦領域,并獲得了非常好的推薦效果。
在電影推薦系統中,推薦模型的好壞直接影響了推薦系統的質量,所以現有的電影推薦系統仍避免不了一些問題,如數據稀疏[9]問題和推薦精確度問題。數據稀疏問題的表現之一就是冷啟動問題,對于新上映的電影未得到用戶的任何評價或者評分,導致模型無法推薦和推薦精度過低的問題。因此,在保證推薦精確度的條件下降低數據稀疏所造成的影響成為目前主要的研究方向。
2? 相關概念及算法
本文使用TensorFlow作為深度學習工具來實現推薦算法。TensorFlow是谷歌于2015年開源的計算框架[10],該計算框架可以很好地支持深度學習的各種算法,相比于其他工具,TensorFlow實用性更強,計算效率和系統穩定性更高,支持的平臺更多,支持的深度學習算法更廣。
通過使用TensorFlow提供的封裝算法進行開發、研究,文本卷積神經網絡(Convolutional Neural Network for Text,簡稱Text CNN)算法的實現將更簡單,即可專注于神經網絡的搭建,在算法的代碼實現節省時間。以下為卷積神經網絡中涉及到的一些基本概念: