資料分成這麼幾個類型:
- 論文:以論文形式發表的,期刊數據庫中可以下載到。
- 網絡文章:就是在網上自由流傳的內容或者博客,為了方便閱讀,我將它們保存為 PDF 格式。
- 演示文稿:就是作者曾公開演講過的內容,相對來說不是那麼嚴謹,但是更容易理解。
- 書:推薦系統相關的書較少,我在專欄中參考過的書只有一本(附件中不提供書的電子文檔)。
以上的參考文獻我按照章節順序列在了下面,我還在後面附上一個推薦書單。你可以點擊查看。
原理篇
1. 內容推薦
- 題目:Bag of Tricks for Efficient Text Classification
- 類型:論文
- 作者:Facebook
- 說明:
Facebook 開源的文本處理工具 fastText 背後原理。可以訓練詞嵌入向量,文本多分類,效率和線性模型一樣,效果和深度學習一樣,值得擁有。
- 題目:The Learning Behind Gmail Priority Inbox
- 類型:論文
- 作者:Google
- 說明:
介紹了一種基於文本和行為給用戶建模的思路,是信息流推薦的早期探索,Gmail 智能郵箱背後的原理。
- 題目:Recommender Systems Handbook(第三章,第九章)
- 類型:書
- 作者:Francesco Ricci 等
- 說明:
這本書收錄了推薦系統很多經典論文,話題涵蓋非常廣,第三章專門講內容推薦的基本原理,第九章是一個具體的基於內容推薦系統的案例。
- 題目:文本上的算法
- 類型:網絡文章 (網絡免費版,已有成書《文本上的算法: 深入淺出自然語言處理》,內容更豐富)
- 作者:路彥雄
- 說明:
介紹了文本挖掘中常用的算法,及基礎概念。內容涉及概率論,信息論,文本分類,聚類,深度學習,推薦系統等。
- 題目:LDA 數學八卦
- 類型:網絡文章
- 作者:Rickjin(@靳志輝)
- 說明:
由淺入深地講解 LDA 原理,對於實際 LDA 工具的使用有非常大的幫助。
2. 近鄰推薦
- 題目:Amazon.com recommendations: item-to-item collaborative filtering
- 類型:論文
- 作者:Amazon
- 說明:
介紹 Amazon 的推薦系統原理,主要是介紹 Item-Based 協同過濾算法。
- 題目:Slope One Predictors for Online Rating-Based Collaborative Filtering
- 類型:論文
- 作者:Daniel Lemire 等
- 說明:
Slope One 算法。
- 題目:Item-Based Collaborative Filtering Recommendation Algorithms
- 類型:論文
- 作者:Badrul Sarwar 等
- 說明:
GroupLens 的研究團隊對比了不同的 Item-to-Item 的推薦算法。
- 題目:Collaborative Recommendations Using Item-to-Item Similarity Mappings
- 類型:專利
- 作者:Amazon
- 說明:
是的,Amazon 申請了 Item-Based 算法的專利,所以如果在美上市企業,小心用這個算法。
- 題目:Recommender Systems Handbook(第 4 章)
- 類型:書
- 作者:Francesco Ricci 等
- 說明:
第四章綜述性地講了近鄰推薦,也就是基礎協同過濾算法。
3. 矩陣分解
- 題目:Matrix Factorization and Collaborative Filtering
- 類型:演示文稿
- 作者:Daryl Lim
- 說明:
從 PCA 這種傳統的數據降維方法講起,綜述了矩陣分解和協同過濾算法。矩陣分解也是一種降維方法。
- 題目:Factorization Meets the Neighborhood: a Multifaceted Collaborative Filtering Model
- 類型:論文
- 作者:Yehuda Koren
- 說明:
把矩陣分解和近鄰模型融合在一起。
- 題目:BPR- Bayesian Personalized Ranking from Implicit Feedback
- 類型:論文
- 作者:Steffen Rendle 等
- 說明:
更關注推薦結果的排序好壞,而不是評分預測精度,那麼 BPR 模型可能是首選,本篇是出處。
- 題目:Collaborative Filtering for Implicit Feedback Datasets
- 類型:論文
- 作者:Yifan Hu 等
- 說明:
不同於通常矩陣分解處理的都是評分數據這樣的顯式反饋,本文介紹一種處理點擊等隱式反饋數據的矩陣分解模型。
- 題目:Matrix Factorization Techniques For Recommender Systems
- 類型:論文
- 作者:Yehuda Koren 等
- 說明:
本文是大神 Yehuda Koren 對矩陣分解在推薦系統中的應用做的一個普及性介紹,值得一讀。
- 題目:The BellKor Solution to the Netflix Grand Prize
- 類型:論文
- 作者:Yehuda Koren
- 說明:
也是一篇綜述,或者說教程,針對 Netflix Prize 的。
4. 模型融合
- 題目:Adaptive Bound Optimization for Online Convex Optimization
- 類型:論文
- 作者:Google
- 說明:
FTRL 是 CTR 預估常用的優化算法,本文介紹 FTRL 算法原理。
- 題目:在線最優化求解
- 類型:網絡文章
- 作者:馮揚
- 說明:
是對 FTRL 的通俗版解說。
- 題目:Ad Click Prediction: a View from the Trenches
- 類型:論文
- 作者:Google
- 說明:
FTRL 工程實現解讀。
- 題目:Factorization Machines
- 類型:論文
- 作者:Steffen Rendle
- 說明:
提出 FM 模型的論文,FM 用於 CTR 預估。
- 題目:Field-aware Factorization Machines for CTR Prediction
- 類型:論文
- 作者:Yuchin Juan
- 說明:
FFM 模型,用於 CTR 預估。
- 題目:Practical Lessons from Predicting Clicks on Ads at Facebook
- 類型:論文
- 說明:
- 提出了 LR + GBDT 的 CTR 預估模型。
- 題目:Wide & Deep Learning for Recommender Systems
- 類型:論文
- 作者:Google
- 說明:
提出融合深度和寬度模型的Wide&Deep 模型,用於 CTR 預估。
5.Bandit 算法
- 題目:Introduction to Bandits- Algorithms and Theory Part 1- Bandits with small sets of actions
- 類型:演示文稿
- 作者:Jean-Yves Audibert 等
- 說明:
介紹 bandit 算法概念,理論和算法,這部分主要針對小的選項候選集。
- 題目:Introduction to Bandits- Algorithms and Theory Part 2- Bandits with large sets of actions
- 類型:演示文稿
- 作者:Jean-Yves Audibert 等
- 說明:
介紹 Bandit 算法概念,理論和算法,這部分主要針對較大的選項候選集。
- 題目:A Contextual-Bandit Approach to Personalized News Article Recommendation
- 類型:論文
- 作者:Yahoo
- 說明:
Linucb 的原始論文,考慮上下文的 Bandit 算法。
- 題目:Collaborative Filtering Bandits
- 類型:論文
- 作者:Shuai Li 等
- 說明:
Bandit 算法與協同過濾結合,提出 COFIBA 算法。
6. 深度學習
- 題目:Deep Neural Networks for YouTube Recommendations
- 類型:論文
- 作者:Google
- 說明:
介紹 YouTube 視頻推薦系統在深度神經網絡上的嘗試。能從中看到 wide&deep 模型的影子。
- 題目:Efficient Estimation of Word Representations in Vector Space
- 類型:論文
- 作者:Google
- 說明:
Word2Vec 的作者在這篇文章中提出了一種詞嵌入向量學習方法,也就是把開源工具包 Word2Vec 背後的模型詳細介紹了一次。理論上很簡單,更多是一些工程技巧的分享。Word2Vec 給推薦系統帶來了一種新的隱因子向量學習方法,深陷評分預測泥潭的矩陣分解被開拓了思路。
- 題目:Item2Vec: Neural Item Embedding for Collaborative Filtering
- 類型:論文
- 作者:Microsoft
- 說明:
這篇就是借鑑了 word2vec 在語言建模中的思路,為推薦系統的行為建模,從中為物品學習嵌入向量。
- 題目:Learning Representations of Text using Neural Networks
- 類型:演示文稿
- 作者:Google
- 說明:
理解為 word2vec 作者寫一個教程。
- 題目:Long Short-Term Memory
- 類型:論文
- 作者:Sepp Hochreiter 等
- 說明:
可以用來為序列建模的 LSTM,實際上在 1997 年就發表論文了,只是在十幾年後才大火。
- 題目:An Empirical Exploration of Recurrent Network Architectures
- 類型:論文
- 作者:Google
- 說明:
- Google 在 RNN 模型使用上的經驗分享。
- 題目:Recurrent Neural Networks for Collaborative Filtering
- 類型:網絡文章
- 作者:Erik Bernhardsson
- 說明:
這是 Erik Bernhardsson 在 Spotify 期間所做的嘗試,用 RNN 自動構建音樂播單。Erik Bernhardsson 還有一項開源項目 Annoy,用於稠密向量的近鄰搜索,在推薦系統中也用得較多。
7. 其他實用算法
- 題目:Detecting Near-Duplicates for Web Crawling
- 類型:論文
- 作者:Google
- 說明:
- 在這篇論文中提出了 simhash 算法,用於大規模網頁去重。
- 題目:Weighted Random Sampling over Data Streams
- 類型:論文
- 作者:Pavlos S. Efraimidis
- 說明:
對流式數據的加權採樣。
- 題目:Weighted Sampling Without Replacement from Data Streams
- 類型:論文:
- 作者:Vladimir Braverman 等
- 說明:
介紹了兩種對流式數據的加權採樣。
工程篇
1. 常見架構
- 題目:Activity Feeds Architecture
- 類型:演示文稿
- 作者:Etsy
- 說明:
本文非常詳細地介紹了社交動態信息流的架構設計細節。
- 題目:Atom Activity Streams 1.0
- 類型:規範文檔
- 作者:Activity Streams Working Group
- 說明:
這是一份動態信息流數據模型的協議規範文檔,由 Activity Streams Working Group 共同發出,這個組織包含 Google 和 Microsoft。
- 題目:Beyond the 5 stars(Netflix Recommendations)
- 類型:網絡文章
- 作者:Netflix
- 說明:
Netflix 詳細宏觀上介紹了自家推薦系統的產品形態,不只是比賽中的評分預測那麼簡單的。
- 題目:System Architectures for Personalization and Recommendation
- 類型:網絡文章
- 作者:Netflix
- 說明:
Netflix 推薦系統的架構介紹。
- 題目:Information Seeking-Convergence of Search, Recommendations and Advertising
- 類型:論文
- 作者:H Garcia-Molina 等
- 說明:
探討搜索、推薦、廣告三者架構統一。
2. 關鍵模塊
- 題目:Overlapping Experiment Infrastructure- More, Better, Faster Experimentation
- 類型:論文
- 作者:Google
- 說明:
ABTest 實驗平臺的扛鼎之作,Google 出品,值得擁有。
- 題目:TencentRec:Real-time Stream Recommendation in Practice
- 類型:論文
- 作者:騰訊
- 說明:
介紹了騰訊內部的實時推薦系統架構。
- 題目:Personalization at Spotify using Cassandra
- 類型:網絡文章
- 作者:Spotify
- 說明:
介紹了 Spotify 在推薦系統所用到的數據存儲中間件。
3. 效果保證
- 題目:Tutorial on Robustness of Recommender Systems
- 類型:演示文稿
- 作者:Neil Hurley
- 說明:
本文非常詳細討論了對推薦系統的攻擊和防護,並有實驗模擬。
- 題目:Recommender Systems Handbook(第八章)
- 類型:書
- 作者:Francesco Ricci 等
- 說明:
該書第八章介紹了能見到的幾乎所有推薦系統評價指標,只是實際上用不到這麼多指標。
其他書目
- Pattern Recognization and Machine Learning(機器學習基礎,有此一本足夠了)。
- 推薦系統實踐(國內唯一一本非翻譯的推薦系統書籍,入門必選)。
- 信號與噪聲(介紹貝葉斯統計的一本科普書)。
- 複雜(推薦系統面對的是複雜網絡,瞭解複雜系統和複雜網絡的特點,有助於開腦洞)。
- 信息簡史(既然是信息經濟,當然要讀一本關於信息的歷史)。
知道你們不會讀的,所以就不推薦太多了。但願我這個激將法有助於你學習進步。
打包資料下載地址:
- https://pan.baidu.com/s/1pbjQ94QBcRerv6ZW3-sopg
密碼關注後私信,專欄內容非常棒,推薦給大家。
閱讀更多 進擊吧程序猿 的文章