1. 程式人生 > >讀書筆記《推薦系統實戰》| 推薦系統冷啟動問題

讀書筆記《推薦系統實戰》| 推薦系統冷啟動問題

本人將《推薦系統實戰》放在了資源裡,如有需要請前往下載。

3.1 冷啟動問題簡介

冷啟動問題的解決方案: 提供非個性化的推薦。為新註冊使用者推薦熱門的商品,等使用者資料蒐集到一定程度後,切換到個性化推薦; 利用使用者註冊時提供的年齡性別等資料做粗粒度的個性化; 要求使用者在登入時對一些商品進行反饋,然後給使用者推薦那些與反饋結果好的商品相似的商品; 利用使用者的社交網路登入,匯入使用者在社交網路的好友資訊,為使用者推薦其好友喜歡的商品; 對於新加入的商品,可以利用商品內容資訊,將其推薦給 喜歡過與它們內容類似的商品 的使用者; 對於系統冷啟動問題,可以引入專家的資訊,通過一定的高效方式迅速建立起商品的相關度表;

3.2 利用使用者註冊資訊

使用者的註冊資訊主要包括:人口統計學資訊。包括使用者的年齡、性別、職業、民族、學歷和居住地;使用者興趣的自我描述;從其他網站匯入的使用者站外行為資料; 基於註冊資訊的個性化推薦流程: 獲取使用者的註冊資訊; 利用使用者的註冊資訊對使用者進行分類(一個使用者根據不同特徵會分到不同的類); 給使用者推薦他所屬的所有分類中使用者最喜歡的商品。 組合特徵:可以將多個特徵組合起來作為一個特徵。比如男性程式設計師,就是將性別和職業組合起來,作為一個新的特徵。但是要注意不是所有的使用者都同時具有兩個特徵,比如可能某個使用者在註冊時沒寫職業。 組合特徵 如何用特徵進行推薦

核心問題時計算每種特徵的使用者喜歡的商品,也就是計算具有特徵f的使用者,對某個商品的i的喜愛程度p(f,i)。具體的計算公式 p(f,i)=( N(i)^U(f) ) / (N(i) + alpha )分子表示具有特徵f,並且喜歡物品i的使用者的數量。分子表示喜歡物品i的使用者數量+一個約束值。該收斂值的意義:加入一個商品i只被買過一次,而該使用者u剛好具有特徵f,就會導致p(f,i)=1。意思是,所有具有該特徵的使用者,都喜歡改商品,這明顯不合理。

3.3 選取合適的物品啟動使用者的興趣

能夠用來啟動使用者興趣的商品一般具有的特徵:首先比較熱門。使用者看到一個商品,發現根本不瞭解,就無法做出精確地反饋;其次必須具有代表性和區分性。如果選擇的商品,大家都喜歡或者都不喜歡,那麼反饋結果沒有太大意義;最後要求啟動物品集合需要多樣性。如果給使用者反饋的物品都是一個型別下的,那麼我們無法知道使用者對其他分類的商品的喜好程度。 如何自動挑選啟動物品:首先從所有使用者中找到區分度最高的商品i,根據商品i將所有使用者分成三部分(喜歡i的使用者,不喜歡i的使用者,沒有對i評分的使用者)。然後在三部分使用者中,分別找到這三類使用者中區分度最高的商品,重複上述操作。遇到冷啟動使用者時,從根節點開始詢問使用者對該節點商品的看法,然後根據使用者的選擇將使用者放到不同的分支,直到進入最後的葉子節點。 如何找到區分度最高的商品

:一個商品的區分度D(i)由 三部分使用者分別對除i之外的所有商品的評分的 方差累加得到。如果這3類使用者集合內的使用者對其他的物品興趣很不一樣,說明商品i具有較高的區分度。

3.4 利用商品的內容資訊

常見的商品的內容資訊: 圖書: 標題、作者、出版社、出版年代、叢書名、目錄、正文 論文: 標題、作者、作者單位、關鍵詞、分類、摘要、正文 電影: 標題、導演、演員、編劇、類別、劇情簡介、髮型公司 新聞: 標題、正文、來源、作者 微博: 作者、內容、評論 如何表示商品的內容: 空間向量模型。對於物品d,它的內容表示成一個關鍵詞向量 D={ (e1,w1),(e2,w2),… } 。其中e表示關鍵詞,w表示該關鍵詞的權重。對於關鍵詞的獲取:如果是演員演員等實體,可以直接將他們作為實體。但是如果是文字,比如論文的內容,需要先進行分詞,檢測出實體;對於權重的確定:如果是演員,可以根據演員在劇中的重要程度進行賦值。如果是文字分詞得到的關鍵詞,可以根據資訊檢索領域著名的TF-IDF公式計算。W=TF(e) /log(DF(e))。 如何計算商品間的相似度:商品的相似度可以根據向量之間的餘弦相似度計算. Wij=(DiDj) / ( ||Di|| * ||Dj|| 開方)。 時間複雜度的改進:倒排表。如果有N個商品,平均每個商品有m個實體組成,那麼計算商品兩兩之間的相似度的時間複雜度為 O(NN*m)。利用前面章節提到的倒排表來進行加速。 實體相似但是不相同:關鍵詞“動態”和“基於時間”雖然不一樣,但是卻意思相同。如果用之前的方法計算,發現結果也是這兩個詞是完全不同的詞。可以利用話題模型解決該問題。首先獲得關鍵詞的話題分佈,然後計算關鍵詞之間的相似度。代表性的話題模型時LDA。書中簡單介紹了LDA模型的計算過程。

3.5 發揮專家的作用解決系統冷啟動問題

書中介紹了專家對商品的屬性進行標註,生成VSM,但是沒介紹怎麼對使用者進行推薦?