主流推薦演算法
主流推薦演算法大致可分為:
基於使用者(User)/物品(Item)相似度的協同過濾
熱點新聞推薦(你看到的那些頭條新聞)
基於模型的推薦(通過輸入一些使用者特徵進入模型,產生推薦結果)
混合推薦(以上十八般兵器一起耍!)
資訊源:使用者畫像、物品畫像、群體資料、知識模型。
融合四種資訊源的混合推薦方法可以彌補各自演算法的缺陷。
問題1、基於內容的推薦演算法和基於專案相似度的協調過濾之區別
基於內容的推薦演算法
對於個性化閱讀來說,一個item就是一篇文章。根據上面的第一步,我們首先要從文章內容中抽取出代表它們的屬性。常用的方法就是利用出現在一篇文章中詞來代表這篇文章,而每個詞對應的權重往往使用資訊檢索中的tf-idf來計算。比如對於本文來說,詞“CB”、“推薦”和“喜好”的權重會比較大,而“烤肉”這個詞的權重會比較低。利用這種方法,一篇抽象的文章就可以使用具體的一個向量來表示了。第二步就是根據使用者過去喜歡什麼文章來產生刻畫此使用者喜好的 profile了,最簡單的方法可以把使用者所有喜歡的文章對應的向量的平均值作為此使用者的profile。比如某個使用者經常關注與推薦系統有關的文章,那麼他的profile中“CB”、“CF”和“推薦”對應的權重值就會較高。在獲得了一個使用者的profile後,CB就可以利用所有item與此使用者profile的相關度對他進行推薦文章了。一個常用的相關度計算方法是cosine。最終把候選item裡與此使用者最相關(cosine值最大)的N個item作為推薦返回給此使用者。
基於專案的協同過濾推薦
基於專案的協同過濾推薦的基本原理也是類似的,只是說它使用所有使用者對物品或者資訊的偏好,發現物品和物品之間的相似度,然後根據使用者的歷史偏好資訊,將類似的物品推薦給使用者,圖 5 很好的詮釋了它的基本原理。
假設使用者 A 喜歡物品 A 和物品 C,使用者 B 喜歡物品 A,物品 B 和物品 C,使用者 C 喜歡物品 A,從這些使用者的歷史喜好可以分析出物品 A 和物品 C 時比較類似的,喜歡物品 A 的人都喜歡物品 C,基於這個資料可以推斷使用者 C 很有可能也喜歡物品 C,所以系統會將物品 C 推薦給使用者 C。
與上面講的類似,基於專案的協同過濾推薦和基於內容的推薦其實都是基於物品相似度預測推薦,只是相似度計算的方法不一樣,前者是從使用者歷史的偏好推斷,而後者是基於物品本身的屬性特徵資訊。