论文笔记:session-based recommendations with recurrent neural networks

来源:互联网 发布:mysql全套视频百度云 编辑:程序博客网 时间:2024/05/22 15:23

在介绍这篇论文主要内容之前,先简单介绍下论文中会用到的几个概念。这些概念对于理解这篇论文有一定帮助。

循环神经网络

循环神经网络跟其他网络相比最明显的特点就是RNN具有记忆功能。从网络结构上看,循环神经网络会记忆之前的信息,并利用之前的信息影响后面结点的输出。具体来说,就是通过门(gate)的结构让信息有选择性地影响循环神经网络中每个时刻的状态。这里我们重点说一下门。门(有开关,阀门等)顾名思义,在这里门就是用来控制信息的流动量。举个生动的例子,就像下图中我们可以吧信息想象成水流,而gate就是控制多少水可以流过。在循环神经网络中,用sigmoid函数来拟合门的作用。
gate
gate

GRU

GRU只用了两个gates,将LSTM中的输入门和遗忘门合并成了更新门。并且并不把线性自更新建立在额外的memory cell上,而是直接线性累积建立在隐藏状态上,并靠gates来调控。
GRU

Learning to rank

从研究方法来说,可以将机器学习排序(learning to rank)分为3种:单文档法(pointwise)、文档对法(pairwise)和文档列表法(listwise)。pointwise和pairwise把排序问题转换成回归、分类或有序分类问题。listwise把query下整个搜索结果作为一个训练的实例。
单文档方法(pointwise)处理的对象是单独一篇文章,主要做法是将文章转换成特征向量(如查询与文档的cosine相似度,查询词的proximity值及页面的pagerank值)。在训练数据中,已知这篇文章的特征向量以及与查询词的相关性(相关/不相关,二分类),这样就可以通过机器学习的方法来拟合这个分类函数。训练好之后,对一个新的查询与文章,首先可以获得该文章的特征向量,然后就可以利用这个分裂函数来判断这篇文章与查询之间的相关性。
文档对方法(pairwise)侧重判断文档顺序关系是否合理。也就是判断任意两个文档组成的文档对是否满足顺序关系。如果对于一个查询相应的文档对(doc1,doc2),如果满足这种顺序关系,那么搜索结果中doc1应该排在doc2之前。


论文提出的背景

在现实生活中,像一个小型卖衣服的网站,他们通常要面对的是基于用户会话的数据(session-based data).由于缺少user-item的评分矩阵,像矩阵分解这类方法便不适用。尽管可以根据商品之间的相似度进行推荐,但本文提出了一种更为有效的基于会话的循环神经网络的方法。

======== 占坑中 ============

参考链接:
循环神经网络——实现
LSTM与GRU结构
机器学习排序之Learning to Rank简单介绍
Deep Learning 论文解读——Session-based Recommendations with Recurrent Neural Networks
ICLR 2016 阅读笔记
SESSION-BASED RECOMMENDATIONS WITH RECURRENT NEURAL NETWORKS
BPR:Bayesian Personalized Ranking from Implicit Feedback
BPR[Bayesian Personalized Ranking] 算法详解及应用实践
Improved Recurrent Neural Networks for Session-based Recommendations DLRS 阅读笔记

阅读全文
2 0
原创粉丝点击