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,没有体现出优势,可以进一步研究。
----------------------------------------
领取专属 10元无门槛券
私享最新 技术干货