infoQ推薦演算法綜述筆記

2021-07-14 09:20:34 字數 1496 閱讀 6980

推薦系統演算法通常是某類推薦模型的實現,它負責獲取資料,例如使用者的喜好和可推薦項的描述,以及**給定的使用者組會對哪些選項感興趣。

cf的方法大體可分為兩類:分別為鄰域和基於模型的方法。鄰域方法(即基於記憶體的cf)是使用使用者對已有項的評分直接**該使用者對新項的評分。與之相反,基於模型的方法是使用歷史評分資料,基於學習出的**模型,**對新項的評分。通常的方式是使用機器學習演算法,找出使用者與項的相互作用模型,從而找出資料中的特定模式。

基於鄰域的cf方法意在找出項與項之間的聯絡(基於項的cf),或者使用者與使用者之間的聯絡(基於使用者的cf)。

1.基於使用者的cf通過找出對項的偏好與你相似的使用者從而基於他們對於新項的喜好來為你進行推薦。

2.基於項的cf會向使用者推薦與使用者喜歡的項相似的項,這種相似是基於項的共同出現機率(例如使用者買了x,通時也買了y)。

基於模型的方法會在使用評分去學習**模型的基礎上,去**新項。一般的想法是使用機器學習演算法建立使用者和項的相互作用模型,從而找出資料中的模式。在一般情況下,基於模型的cf被認為是建立cf推薦系統的更先進的演算法。有許多不同的演算法可用於構建模型並基於這些模型進行**,例如,貝葉斯網路、聚類、分類、回歸、矩陣分解、受限玻爾茲曼機等等。

cf方法的乙個更重要的限制是我們所稱的「冷啟動問題」,系統是不能夠給沒有(或非常少)慣用活動的使用者進行推薦,又名曰新使用者問題,或推薦新項問題。新使用者的「冷啟動問題」可以通過流行性和混合方法進行解決,而新項問題可以通過使用基於內容的過濾或multi-armed bandits(即探索利用)進行解決。

基於內容的推薦演算法總是為使用者推薦那些與使用者過去喜歡的item類似的item。它不同於協同過濾,它是基於item的內容(例如標題、年份、描述)比較item之間的相似度。並沒有考慮使用者過去如何使用item的情況。

基於內容的方法克服了協同過濾方法的很多不足。具體來說,基於內容的推薦演算法可以克服流行度偏離和新item的冷啟動問題,這些問題在第二部分介紹協同過濾的時候已經討論過。然而,值得注意的是,純粹基於內容的推薦演算法的效能通常不如協同過濾演算法。基於內容的推薦演算法通常還存在過度專業化(over-specialisation)的問題,即使用者可能會得到過多相同型別的item(如推薦所有的「指環王」系列電影),而不會推薦其他不同的、但使用者可能感興趣的item。最後是,基於內容的推薦演算法中,僅僅使用了包含在item元資料中的詞彙(如標題、描述年份),這限制了推薦演算法的實用性,不能幫助使用者探索和發現詞彙之外的內容。

混合推薦:

幾種推薦方式混合的方式:

例如利用weighted方式來混合推薦方法,那麼我們可以給出不同推薦方式所對應的權重。手動給出權重需要大量工作。一種改進是利用整合學習:

它需要學習乙個函式(即整合器)來確定不同推薦演算法組合的權重。值得注意的是,通常整合方法不僅僅結合了不同的演算法,同時也組合了基於相同演算法的不同變種(模型)。例如,在贏得netflix競賽的解決方案中,研究者使用了來自於超過10種不同演算法(流行度、領域方法、矩陣因子分解、受限玻爾茲曼機、回歸等)的100多種模型,並通過使用梯度boosted決策樹將它們組合到乙個整合器中。

原文章入口:

推薦演算法綜述(二)

協同過濾 cf 推薦演算法通過在使用者活動中尋找特定模式來為使用者產生有效推薦。它依賴於系統中使用者的慣用資料,例如通過使用者對其閱讀過書籍的評價可以推斷出使用者的閱讀偏好。這種演算法的核心思想就是 如果兩個使用者對於一些項的評分相似程度較高,那麼乙個使用者對於乙個新項的評分很有可能類似於另乙個使用...

推薦系統綜述

uir rui 是使用者u對物品i的實際評分,而r u i hat r ui 是推薦系統給出的 評分,則rmse定義為 mae定義為 topn推薦 此方法一般不考慮評分,而是為使用者提供乙個個性化推薦列表,通過 使用者對物品的興趣度對列表進行排序,選取其中前n個物品推薦給使用者,通常用於電子商務 社...

目標檢測演算法綜述筆記

主要參考兩篇綜述 object detection in 20 years a survey recent advances in deep learning for object detection csdn上有翻譯版,對照這翻譯版,能夠更快的理解,注意如果是菜鳥,最好review三遍,三遍是我從...