張博 李昂松 尹琛 湖北大學
隨著網絡的發展及移動端的普及,越來越多的人們接觸到了網絡,截至2018 年6 月,我國網民人數已破8 億。用戶在海量的數據中想要查找到所需信息越來越難,推薦系統應運而生。它通過分析用戶的歷史行為, 向用戶推薦能夠滿足他們興趣和需求的信息, 建立平臺與用戶之間的密切關系, 提高用戶的滿意度。
本文現根據600 個用戶對9000 部電影的10000 項評價,包括電影信息、用戶對電影的評分等數據,建立數學模型解決以下問題:
(1)建立數學模型,實現電影推薦系統,以便對用戶進行電影推薦。
(2)建立合理的指標體系評價你所建立的推薦系統。
在求解前,為了合理簡化模型,現做出假設:
(1)每個用戶的評分可以反映電影的優劣程度,保證用戶評分的合理性;
(2)用戶的喜好在一定時間范圍內是不變的,此假設保證模型的可信性;
2.1.1 簡單數據分析
已有數據中包含評分電影年份和評分提交時間等信息,本文從評分的出現頻數、電影發行情況與時間的關系以及評論時間的關系入手進行簡單分析.
(1)電影數量與時間的關系
利用EXCEL 統計出自1902 年開始到2018 年每一年的電影數量,并對統計結果做透視分析。結果表明,全球電影數量自1973 年(65部)開始增速加快,數量增長趨勢成指數型,到2002 年時達到最大值,為324 部,此后增速放緩且每年電影數量整體上有下降的態勢但仍舊能夠保持每年160 部及以上的電影數量。
(2)電影評價與年份的關系
利用EXCEL 軟件,統計出自1970 年開始到2018 年每一年的評價數量,并對統計結果做透視分析。結果表明,全球用戶對電影的評論數量由1980 年(879 條)開始出現顯著增加,每年評論數量呈現指數式增長,這與上世紀八十年代開始互聯網的普及與個人電腦PC 進入尋常百姓家中有很大的關系;評論數量在1995 年達到最大值(6012條),此后開始急劇跌落。結合兩次分析的結果可以發現,1994 年至2015 年間電影數量相差不會很大。但在這21 年中,1994 年到2004年間的電影評論數遠高于其他年份,說明在這20 年間人們對電影的關注度非常高,且1994~1995 年可以視為電影的鼎盛時期,這與電影的“黃金年代”的時間大致符合。

圖 年份-電影數量統計直方圖
2.1.2 構建基于協同過濾的電影推薦系統
2.1.2.1 建立基于物品的協同過濾算法
(1)協同過濾算法
協同過濾算法分為基于用戶的協同過濾算法和基于物品的協同過濾算法。
基于用戶的協同過濾算法(簡稱UserCF),通過不同用戶對同一物品的評分來體現用戶之間的相似性。該算法適用于用戶較少的情況,其特征在于推薦的時那些和目標用戶有共同興趣的其他用戶喜歡的物品,適合時效性強、社會化、用戶個性化興趣不太明顯的領域,如新聞推薦、微博話題等。
基于物品的協同過濾算法(簡稱ItemCF),它通過同一用戶對不同物品的評分來反映物品之間的相似性。該算法適用于物品數明顯小于用戶數的場合,其特征在于推薦那些和目標用戶之前喜歡的物品類似的其他物品,適合個性化需求強烈的領域,如電子商務、電影等
(2)模型的設計
本文決定選用基于物品的協同過濾算法(ItemCF)來構建電影推薦模型。該算法主要包括兩步:
a.計算物品之間的相似度。本文選用相似度算法的皮爾森系數計算物品之間的相似度,皮爾森相似度計算公式如下所示。

式中,U 表示用戶所有對i 和j 共同評估評級的用戶組成的組合;表示對i 和j 共同評估評級的用戶,他們對i 的評級的平均值。
b.計算推薦評分。根據物品的相似度矩陣和用戶的歷史行為信息,求解推薦評分,然后根據推薦評分給用戶生成推薦列表。推薦評分公式如下圖所示。

根據各電影平均分和評分人數情況,得到最高平均分電影,選該電影為例來運行ItemCF 算法模型,得出推薦的另外5 部電影。
(3) 模型的求解
依據上述流程,得到電影Forrest Gump(1994)為典例電影,而后對該電影與其他電影間進行皮爾森關聯度計算,并對其進行奇異值分解,最后計算結果進行降序排列。推薦電影分別為:Shawshank Redemption, The(1994)、Schindler's List(1993)、Silence of the Lambs, The(1991)、Apollo 13(1995)、Braveheart(1995)。
2.2.1 評價指標的選擇與體系建立
本文選用精確率,召回率,覆蓋率和新穎度作為測評指標。精確率描述最終的推薦列表中有多少比例是發生過的用戶;召回率描述有多少比例的用戶;覆蓋率反映了推薦算法發掘長尾的能力;新穎度反映了推薦列表中物品的平均流行度。
2.2.2 評價推薦模型
對用戶 推薦N 個物品,記為R(u),令用戶u 在測試集中喜歡的物品集為T(u),那么各指標公式如下,

上述三式為問題二評價推薦模型。評估模型的方式是對每個用戶進行推薦,最后使用評估指標進行評測。經過測評計算,精確率0.3767,召回率0.0759,覆蓋率0.3175,總體來看該模型效果良好。