自学推荐系统两年多了,也阅读了一些相关的书籍和论文,但毕竟还没有实际的在公司做过推荐相关项目,所以说跟大佬们相比,还是有很多差距的。不过,在入门推荐的道路上,有一些经验和资料还是可以分享给你的,希望本文能够对你有所帮助。(一定要看到最后哦,三重福利送给你)
学习推荐系统,还是要掌握一定的机器学习知识的,从特征获取、特征处理、特征选择,到基本的机器学习模型如逻辑回归、GBDT等等,都需要你熟练掌握。
其中比较重要的就是特征这块,因为推荐系统中会面临大量的离散特征,对离散特征的处理方式需要有一定的了解。
这里还是推荐李航博士的《统计学习方法第二版》。
然后就是神经网络,推荐系统中神经网络运用非常多,神经网络中基础的如循环神经网络、卷积神经网络,以及一些模型结构的搭建、训练的技巧如Dropout、BN等等也需要有所理解。
这个推荐吴恩达的深度学习课程以及李宏毅老师的深度学习课程。
推荐系统市面上的书不是很多,而且写得往往不够深入,仅能够起到一定的入门作用,毕竟推荐在各个公司还是比较核心的内容,是比较受到保护的。但经典的书籍还是有的,入门的话推荐两本。
一是大家所熟知的《推荐系统实践》,这本的话对于大家了解推荐系统中最基本的算法如协同过滤、推荐系统中常用的评价指标、使用上下文和社交网络进行推荐、如何解决冷启动问题都有一定的帮助。
二是最近市面上新出现的《推荐系统开发实战》一书,虽然这本书我还没有看过,但不少的群友反映这本书对于入门推荐系统来说十分友好。理论和实战相结合,是挺不错的一本“小白实操书”。(小编自费送书一本,参与规则见文末)
然后还有的一些书籍如《推荐系统与深度学习》和《推荐系统-技术、评估及高效算法》,大家感兴趣的话也可以进行阅读。
在理解基本的推荐知识之后,你大概会了解到推荐具体是做什么的,那么其问题又可以分成几个方面。如召回、CTR预估、Learning to Rank等等。这个时候我建议的话就是开始阅读经典论文了。下面整理一些我看过的比较经典的论文吧,可能有遗漏,也欢迎大家补充。
FM:《Factorization Machines》FFM:《Field-aware Factorization Machines for CTR Prediction》DeepFM:《DeepFM: A Factorization-Machine based Neural Network for CTR Prediction》Wide & Deep:《Wide & Deep Learning for Recommender Systems》DCN:《Deep & Cross Network for Ad Click Predictions》NFM:《Neural Factorization Machines for Sparse Predictive Analytics》AFM:《Attentional Factorization Machines:GBDT + LR:《Practical Lessons from Predicting Clicks on Ads at Facebook》MLR:《Learning Piece-wise Linear ModelsDIN:《Deep Interest Network for Click-Through Rate Prediction》DIEN:《Deep Interest Evolution Network for Click-Through Rate Prediction》BPR:《BPR: Bayesian Personalized Ranking from Implicit Feedback》Youtube:《Deep Neural Networks for YouTube Recommendations》
当然有些其他的论文也十分经典,咱们放在后面继续讲。
读论文也是需要一定的技巧,不同的人可能关注的点不一样,所以导致阅读重心不一样。对于我来说,我比较关注的点是这个论文要解决什么样的问题,是如何解决的,以及作者从哪几方面出发,使用什么评价指标来评判模型的好坏。至于效果,论文嘛,可信可不信,看看就好了。
读论文中你也许会有很多疑惑,如DeepFM这个Embedding如何共享的?DIN里面的Attention如何实现?解决这些疑惑的最好办法我认为不是读论文、百度别人写的博客,最好的方法就是去找开源的代码,试着复现也好,比着代码自己实现一遍也好,对你加深认识都有很大的帮助!
有一些开源的代码我已经帮大家整理的差不多了,在下面的github中(以后不要再问我数据或者地址的问题了,数据都在github的readme中):https://github.com/princewen/tensorflow_practice
不管对一篇论文你看懂了还是没看懂也好,都去尝试复现一遍吧,真的很有帮助。
在不断跟进推荐系统论文的过程中,你会发现推荐系统会借鉴各个领域的方法, 持续跟进最近推荐论文,对我们学习其他领域如NLP、图像领域、强化学习等等都会有所帮助。接下来列举一些借鉴其他领域方法的一些文章吧,也算是对第三部分的一个补充。
强化学习
多任务学习
GAN
知识图谱
《DKN: Deep Knowledge-Aware Network for News Recommendation》
Transformer
RNN & GNN
Embedding技巧
最后说说本文的福利吧:
1、论文打包下载
上述介绍的论文,小编已经帮你全部打包整理好了:
公众号后台回复“推荐论文”获取下载地址吧。
2、推荐系统原创合集
小编整理了一下公众号发布的推荐系统系列原创合集,一次性整理给你:
推荐系统遇上深度学习(一)--FM模型理论和实践
推荐系统遇上深度学习(二)--FFM模型理论和实践
推荐系统遇上深度学习(三)--DeepFM模型理论和实践
推荐系统遇上深度学习(四)--多值离散特征的embedding解决方案
推荐系统遇上深度学习(五)--Deep&Cross Network模型理论和实践
推荐系统遇上深度学习(六)--PNN模型理论和实践
推荐系统遇上深度学习(七)--NFM模型理论和实践
推荐系统遇上深度学习(八)--AFM模型理论和实践
推荐系统遇上深度学习(九)--评价指标AUC原理及实践
推荐系统遇上深度学习(十)--GBDT+LR融合方案实战
推荐系统遇上深度学习(十一)--神经协同过滤NCF原理及实战
推荐系统遇上深度学习(十二)--推荐系统中的EE问题及基本Bandit算法
推荐系统遇上深度学习(十三)--linUCB方法浅析及实现
推荐系统遇上深度学习(十四)--强化学习与推荐系统的强强联合!
推荐系统遇上深度学习(十五)--强化学习在京东推荐中的探索
推荐系统遇上深度学习(十六)--详解推荐系统中的常用评测指标
推荐系统遇上深度学习(十七)--探秘阿里之MLR算法浅析及实现
推荐系统遇上深度学习(十八)--探秘阿里之深度兴趣网络(DIN)浅析及实现
推荐系统遇上深度学习(十九)--探秘阿里之完整空间多任务模型ESSM
推荐系统遇上深度学习(二十)--贝叶斯个性化排序(BPR)算法原理及实战
推荐系统遇上深度学习(二十一)--阶段性回顾
推荐系统遇上深度学习(二十二)--DeepFM升级版XDeepFM模型强势来袭!
推荐系统遇上深度学习(二十三)--大一统信息检索模型IRGAN在推荐领域的应用
推荐系统遇上深度学习(二十四)--深度兴趣进化网络DIEN原理及实战!
推荐系统遇上深度学习(二十五)--当知识图谱遇上个性化推荐
推荐系统遇上深度学习(二十六)--知识图谱与推荐系统结合之DKN模型原理及实现
推荐系统遇上深度学习(二十七)--知识图谱与推荐系统结合之RippleNet模型原理及实现
推荐系统遇上深度学习(二十八)--知识图谱与推荐系统结合之MKR模型原理及实现
推荐系统遇上深度学习(二十九)--协同记忆网络理论及实践
推荐系统遇上深度学习(三十)--深度矩阵分解模型理论及实践
推荐系统遇上深度学习(三十一)--使用自注意力机制进行物品推荐
推荐系统遇上深度学习(三十二)--《推荐系统实践》思维导图
推荐系统遇上深度学习(三十三)--Neural Attentive Item Similarity Model
推荐系统遇上深度学习(三十四)--YouTube深度学习推荐系统
推荐系统遇上深度学习(三十五)--强化学习在京东推荐中的探索(二)
推荐系统遇上深度学习(三十六)-Learn and Transferr IDs Repre in E-commerce
推荐系统遇上深度学习(三十七)--基于多任务学习的可解释性推荐系统
推荐系统遇上深度学习(三十八)--CFGAN:一种基于GAN的协同过滤推荐框架
推荐系统遇上深度学习(三十九)-推荐系统中召回策略演进!
推荐系统遇上深度学习(四十)-使用RNN做基于会话的推荐
推荐系统遇上深度学习(四十一)-使用RNN做基于会话推荐的一些小trick
推荐系统遇上深度学习(四十二)-使用图神经网络做基于会话的推荐
推荐系统遇上深度学习(四十三)-考虑用户微观行为的电商推荐
推荐系统遇上深度学习(四十四)-Airbnb实时搜索排序中的Embedding技巧
推荐系统遇上深度学习(四十五)-探秘阿里之深度会话兴趣网络DSIN
推荐系统遇上深度学习(四十六)-阿里电商推荐中亿级商品的embedding策略
推荐系统遇上深度学习(四十七)-TEM:基于树模型构建可解释性推荐系统
推荐系统遇上深度学习(四十八)-BST:将Transformer用于淘宝电商推荐
推荐系统遇上深度学习(四十九)-九篇阿里推荐相关论文汇总!
推荐系统遇上深度学习(五十)-使用强化学习优化用户的长期体验
RS Meet DL(51)-谈谈推荐系统中的冷启动
RS Meet DL(52)-基于注意力机制的用户行为建模框架ATRank
RS Meet DL(53)-DUPN:通过多任务学习用户的通用表示
RS Meet DL(54)-使用GAN搭建强化学习仿真环境
RS Meet DL(55)-[阿里]考虑时空域影响的点击率预估模型DSTN
RS Meet DL(56)-[阿里]融合表示学习的点击率预估模型DeepMCP
RS Meet DL(57)-[阿里]如何精确推荐一屏物品?
RS Meet DL(58)-基于“翻译”的序列推荐方法
RS Meet DL(59)-FM家族的新朋友FAT-DeepFFM
RS Meet DL(60)-FM家族的新朋友之TransFM
RS Meet DL(六十一)-[阿里]使用Bert来进行序列推荐
3、评论送书
今天小编继续自费送《推荐系统开发实战》一本。
参与方式:下方留言写下你对推荐系统的认识、想法以及接下来想要了解的东西。留言点赞前十名将拉群,通过抢红包的方式决定最后的幸运者。