|期刊分享|機器學習|推薦系統挑戰綜述
編者推薦序:本文簡述了常見的推薦演算法,引出了推薦系統面臨的四個挑戰,即稀疏問題、冷啟動問題、可擴展性和過度專業化問題。本文僅是蜻蜓點水,一概而過。相比本文,作者更推薦閱讀中信出版社的《Spark機器學習》第4章。
推薦指數 ☆☆☆
一、引言
推薦系統是向用戶推薦其可能感興趣的事物的智能系統。一些實際應用的推薦系統有亞馬遜的圖書推薦系統、Movielens的電影推薦系統、VERSIFI的新聞推薦系統等。推薦系統可分為基於用戶的和基於物品的兩類。
基於用戶的推薦系統包括:用戶集C、待推薦的物品集S和描述物品對用戶是否有用的效用函數(utility function)U。S和C可能很大,從成百上千到上百萬量級。對用戶集C中的每個用戶c,我們想在物品集S中選擇效用函數值最大的物品s。在推薦系統中,物品的效用一般用評分(rating)表徵,一般分值在限定範圍內,如1到5分。用戶集可用等用戶ID、年齡、性別、職業等用戶屬性描述,物品集同樣可用物品ID及其它屬性描述。一般C×S數據集上的打分並不完備,僅有少量的分值可用。推薦系統的主要目的是預測分值空缺處的打分並據此提供合適的推薦(The main aim of a recommender system is to predict ratings of the non-rated user/item combination and thus providing appropriate recommendations)。推薦系統或者將分值最高的物品推薦給用戶,或者將得分最高的前N個推薦給用戶。推薦系統如下圖所示。
二、演算法
推薦系統常用的演算法根據分數估計手段可分為協同過濾、基於內容推薦技術和結合前兩者的組合技術。
2.1 協同過濾
協同過濾(Collaborative filtering,CF)系統挖掘用戶打分的相似性,並根據別的用戶的選擇將某個物品推薦給某個用戶。傳統的協同過濾推薦演算法根據用戶已有的物品打分預測未知物品的打分。CF演算法如下圖所示
CF演算法將整個用戶-物品空間表示為打分矩陣R,每個元素代表某個用戶對某個物品的打分,分值在一定範圍內(如1到5),0代表該用戶對該物品還沒有打分。為了預測未知的分值,CF計算物體的和用戶的相似度,找出與某個用戶最相似的K個用戶,找出與某個物品最相似的K個物品。利用這些相似性進行分值預測與推薦。
2.2 基於內容的推薦
基於內容的推薦系統根據物體描述和用戶興趣畫像進行推薦,這在網頁推薦中較常見,如電視節目和新聞評論等。所有的基於內容的推薦系統具有很少的共同點,例如用描述物體的方法、用戶畫像和計算最合適的推薦物品的方法。
基於內容的推薦系統包括待推薦物品及物品畫像(Item Profile)的巨大的資料庫,系統根據用戶行為或反饋建立用戶畫像,根據用戶畫像推薦合適的物品。此外,還可根據物品和用戶的特性進行更好的個性化推薦。物品畫像包括物體一些重要特徵,如電影可通過名稱、語言、國家、演員等描述,特徵的值可以是邏輯值或有界的離散值。
2.3 組合技術
組合推薦系統是將多種技術組合進行推薦。一些學者將協同過濾(CF)和基於內容(CB)的推薦技術進行組合以揚長避短。可能的組合方式有:組合CF和CB的預測;將CB的一些特性引入CF;將CF一些特性引入CB;建立包含CF和CB的更一般的統一模型。
三、推薦系統面臨的挑戰
推薦系統面臨的主要挑戰主要有:稀疏問題(Sparsity Problem)、冷啟動問題(Cold Start problem)、可擴展性(Scalability)和過度專業化問題(Over Specialization Problem)。
稀疏問題是推薦系統面臨的主要挑戰,數據稀疏性對推薦效果有很大影響與像MovieLens類似的數據系統以用戶-物品打分形式存儲,當物品或用戶數增大時,維數和稀疏性也會增大。由於協同過濾依賴於評分矩陣,所以受此影響很大。
冷啟動問題是指當一個新用戶或新物品加入系統時,三類冷啟動問題分別為:新用戶問題、新物品問題和新系統問題,由於缺少信息或評分所以推薦很困難。此時,協同過濾不能進行有用的推薦,但基於內容的方法在新物品加入時可以推薦,因為基於內容的方法不依賴與以前的評級信息。
可擴展性是指以優雅的方式處理不斷增長的信息的能力。互聯網數據爆炸對推薦系統提出了很大挑戰。協同過濾演算法隨用戶和物品的增長計算量呈指數增長,代價昂貴且有時導致錯誤結果。
過度專業化是指用戶只能獲得其用戶畫像中已知的或已定義的物品的推薦,阻礙了用戶發現新物品或其他選擇。然而,推薦多樣性是一切推薦系統想要的特徵。過度專業化問題可利用遺傳演算法緩解。
英文題目:A Survey of Recommendation System: Research Challenges
原文連接:http://ijettjournal.org/volume-4/issue-5/IJETT-V4I5P132.pdf
互動:深度學慣用於推薦系統會有什麼問題?請留言探討。
死磕自律,遇見更好的自己;認知升級,助你長出強兩翼!
關注該知乎專欄,一起創造奇蹟。
推薦閱讀:
※用Mxnet實現矩陣分解
※當機器學習性能不是很好時,你會如何優化?
※少數人的智慧
※[論文學習]Deep Learning Based Recommendation: A Survey
※關於評分預測和TopN推薦的討論?