Deep Learning 可以用来做推荐系统吗？
毋庸质疑，推荐系统将成为 Deep Learning 最重要的应用领域之一。 也许是最早的，算是与 Deep Learning 沾点儿边的推荐算法，是在 Netflix Prize 竞赛后半程异军突起的 Restricted Boltzmann Machine 算法。当时以 SVD++ 为核心的模型几乎已经陷入了僵局，大家基本进入到了比拼trick与融合模型数量的体力活阶段了。RBM 的出现推动整个竞赛上了一个新台阶，相关的论文「Restricted Boltzmann Machines for Collaborative Filtering」在此[1]。但 RBM 本身大家并不认为和 Deep Learning 有太大关系，因为它太“浅”了，官方论文里面最后也提到了 RBM 一个重要的扩展方向就是「Learning Deep Generative Models」。Netflix 在2014年发表了一篇结合使用 GPU 和 AWS 搞分布式神经网络的博客「Distributed Neural Networks with GPUs in the AWS Cloud」[2]，昭告了一下除 Google 之外他们在 deep learning 领域也不容小觑，然而并没有透露太多的应用细节。再多说几句 Netflix Prize，有关 Netflix Prize 对 Netflix Recommendation 带来的改变，可以看看 Netflix 自己的官方博客[3][4]，这几乎也可以看做是推荐系统领域最佳的入门资料。关于 RBM，对工业界同学们更具参考价值的是 Edwin Chen 的这篇「Introduction to Restricted Boltzmann Machines」[5]，更浅显易懂，还有开源代码实现。然后就是最近，有人号称使用 deep learning 取得了比 Netflix Prize 大奖方案更好的结果[6]。 其他一些值得看看的内容： 音乐是 deep learning 适合发挥优势的领域之一，与 Spotify 相关的 deep learning 应用有两篇报导，一篇是「Recommending music on Spotify with deep learning」[7] 很详尽，另外一篇是把 deep learning 与经典的 collaboritive filtering 结合的尝试，「Recurrent Neural Networks for Collaborative Filtering」[8]。 Google 也发表了一篇音乐相关的 deep learning 论文，「Temporal Pooling and Multiscale Learning for Automatic Annotation and Ranking of Music Audio」[9]。 Netflix 的一位算法研究员作为作者之一的「Session-based Recommendations with Recurrent Neural Networks」[10]。 基于 deeplearning4j 的一个推荐引擎「The WellDressed Recommendation Engine」[11]，据说，使用了这个玩意儿的电商网站把 ad coverage 提升了200%。 微软同学在 WWW2015 上的一篇文章，「A Multi-View Deep Learning Approach for Cross Domain User Modeling in Recommendation Systems」[12]，讲在新闻和应用推荐领域使用 deep learning 的一些心得。 最后重磅推荐，Netflix 前推荐引擎总监 Xavier Amatriain 在 KDD2014 上的压轴分享，「The Recommender Problem Revisited」[13]，得认真啃一啃。 今年的 RecSys 会议，将会第一次专门针对 Deep Learning 与 Recommender Systems 设立一个专门的 workshop，将于今年9月15日在 Boston 举办，[14]这里是一些方向性的题目，有启发。 另外，就是 Amazon 刚刚宣布开源了 DSSTNE -- Deep Scalable Sparse Tensor Network Engine，DSSTNE 是 Amazon 用来开发深度学习模型的一套框架，Amazon 最新的推荐引擎就在使用 DSSTNE。我在知乎专栏里发表了一篇相关介绍「关于Amazon开源的深度学习框架DSSTNE，看这一篇就够了！ - ResysChina - 知乎专栏」 参考资料： [1] http://www.cs.utoronto.ca/~hinton/absps/netflixICML.pdf [2] http://techblog.netflix.com/2014/02/distributed-neural-networks-with-gpus.html [3] http://techblog.netflix.com/2012/04/netflix-recommendations-beyond-5-stars.html [4] http://techblog.netflix.com/2012/06/netflix-recommendations-beyond-5-stars.html [5] Introduction to Restricted Boltzmann Machines [6] Deep learning solution for netflix prize [7] Recommending music on Spotify with deep learning [8] http://erikbern.com/wordpress.php?p=589 [9] http://ismir2011.ismir.net/papers/PS6-13.pdf [10] http://arxiv.org/abs/1511.06939 [11] The WellDressed Recommendation Engine [12] http://msr-waypoint.com/pubs/238334/frp1159-songA.pdf [13] http://www.kdd.org/kdd2014/tutorials/KDD - The Recommender Problem Revisited.pdf [14] Call for papers 也欢迎来「我的值乎」提问