首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

三位大神的Deep Learning综述&arXiv上的一篇音乐推荐算法文章

Tips:论文下载在文章末尾有提示

Paper Sharing:【墙裂推荐】

Yann LeCun, Yoshua Bengio, Geoffrey Hinton, Deep Learning, Nature, 2015

深度学习领域的三位大神Yann LeCun, Yoshua Bengio, Geoffrey Hinton,在Nature上的一篇深度学习的综述。

这篇文献,几个月前读过,当时在学习CS231n的课程,这是课程推荐的课后阅读资料。这两天看论文,看到了Yoshua Bengio的文章,然后突然对他们的经历和故事很感兴趣,有空了解一下大神们的故事,然后分享给大家。当然有时间精力会好好读读他们的文章。

大牛写的文章真的很好懂(然后我只是懂了一点点而已),而且很全面,就跟听好老师讲课一样,受益匪浅。读了好文章之后的状态就是,想更深入的了解更多,学得更好~

此篇文献的主要内容:

(1)监督学习,supervised learning,即传统的Machine Learning,主要提到了linear classifier;

(2)Backpropagation,反向传播算法,是Geoffrey Hinton在30年前提出来的;

(3)CNN & Deep NN in Image & Speech

(4)RNN in NLP(这部分不太了解,后续要狠补)

Paper Reading:

Neural Network Based Next-Song Recommendation @ arXiv

[ 这篇文章有几处明显的拼写错误,代码也没有真的放在GitHub,应该说是arXiv风格的 ]

题目 基于神经网络的歌曲推荐算法

关键词:音乐推荐 神经网络 词嵌入

具体问题 音乐推荐(next-song recommendation)

与商品推荐(next-basket recommendation)类似,体验就是淘宝购物过程中的商品推荐。根据搜索内容、已买商品或购物车中的商品,推荐下一个购买的商品。

音乐推荐就是根据用户偏好以及短期内已经听过的一首或多首歌曲,来推荐下一首歌曲。

当前的算法有哪些

matrix/tensor factorization

Markov Chain(MC)

Markov Embedding

conventional content-based (CB) recommendation system

collaborative filtering (CF) recommendation system

利用的信息:sequential pattern general preference of the user

暂时不了解这些算法是什么。

本文思路:neural network (NN) based next-song recommender

(1)Ref [9],灵感:NLP中的概率模型,通过之前的词序列,来预测下一个词,word music。(NN-rec was inspired by natural language processing (NLP) techniques [9]. The authors of NN-rec modified the neural probabilistic language model, which is used to predict the next word given all the previous words, to build the next-basket recommender by replacing the local context of a sentence with baskets of items and the user identity)

(2)Ref [10],基于神经网络(NN)和卷积神经网络(CNN)的推荐算法,basket music。其中CNN中卷积层的作用是考量已播放音乐的位置关系对推荐算法的影响。(a convolutional layer to see whether the local relation between sequential songs can further improve the performance of the recommender)

(3)Ref [15],在NN中常用的词嵌入方法(Word embedding method)

一句话总结:基于NLP中的概率模型,用NN/CNN + Word embedding,来实现音乐推荐。

算法细节

(1)过去时刻的音乐,用one-hot representation来表示,NLP领域常用的方法,这种表示方式是高维稀疏向量,此处为1*N向量;

(2)word embedding,可减少数据稀疏,可参看Ref [9];

(3)将过去时刻的索引特征(index feature)堆成矩阵,用作后续卷积层的输入;

(4)卷积层(后续没有池化层);

(5)将卷积层的输出串联成一个高维的向量;

(6)hidden layer(?)

(7)softmax激活函数,得到每一首歌曲成为下一首播放的概率。

结果与分析

比较了NN-based(NN-rec/CNN-rec/Word2Vec,这三种方法)和non-NN based(WMF/FPMC,这两种方法)两类方法的性能。

如图所示:

(1)NN-based的结果整体优于non-NN based;

(2)NN-based中,NN-rec > CNN-rec > Word2Vec;

(3)CNN-rec相比NN-rec,没有体现出优势,可以进一步研究。

----------------------------------------

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180108G0XR4O00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券