目录
一、摘要
主要是对RNN的一个改进,针对RNN在用到推荐系统时,会面临会话时间短的问题,而不是长期会话,导致精度不准,为了解决这个问题,
作者通过对整个会话进行建模。
二、引言
第一段:主要讨论了在机器学习和推荐领域忽视的问题(会话推荐),提出现有会话的缺点如cookie和游览器指纹,这些技术是不可靠的,电商部署的多为简单的方法,不使用用户资料,通过物品与物品的相似性、共现关系或转换概率,但是
它们通常只考虑了最后一次的点击或选择,而忽略了过去点击的信息。
在推荐系统或信息检索领域,"
共现关系"指的是
两个或多个物品(或项目)在用户行为中
同时出现的频率或概率。如果用户在一次行为中选择了物品A,而在另一次行为中选择了物品B,那么我们就说物品A和物品B在用户行为中有共现关系。这种关系可以用于
推断物品之间的相似性或关联性。
在推荐系统或信息检索领域,
"转换概率"(切换选择下一个物品的概率)通常指的是用户在一个时间点选择某个物品后,在下一个时间点选择另一个物品的概率。这个概率反映了用户在
不同物品之间切换的趋势或倾向。
第二段:主要介绍了两种方法,
因子模型(Factor Models)和
邻域方法(Neighborhood Methods),前者通过将稀疏矩阵分解再重建,由于在会话推荐缺少个人信息,
较难应用,后者通过计算物品或用户间的相似性,这种在会话推荐得到了
广泛应用。
第三段:说了近些年深度神经网络在图像和语音识别方面的成功,各种各样的RNN成为顺序建模的首选,序列模型包括了文本翻译、对话建模和图像描述等。也就是
RNN在其它方面应用的成功
第四段:讨论在推荐系统应用RNN的问题和方法,作者提出了会话推荐(session-based recommendation)说明了
处理稀疏序列的问题,以及
引入排名损失函数来调整RNN模型, RNN的初始输入为用户第一次点击第一个物品,每个连续的点击都会依赖之前所有点击输出,另外点击序列的
数据非常庞大,对于培训时间和可伸缩性非常重要。
三、推荐的RNN/GRU
RNN:ht 是在时间步 的隐藏状态,g是光滑有界的激活函数(sigmoid),W为隐藏层的权重矩阵,xt是时间t时单位的输入, U是上一个时间步到当前时间步的权重。
更新门
重置门
候选隐藏层
隐藏层
输出
四、自定义GRU模型
模型的输入是当前会话的状态,输出是会话中下一个事件的物品,为了稳定性对输入向量进行了归一化,在输入和第一层GRU之间新增嵌入层,在最后一层和输出之间新增前馈层(Feedforward layers 也称全连接层或密集层)。因为
推荐系统不是递归神经网络的主要应用领域,因此修改了基本网络,为了更好的适应任务。
1-of-N coding 就是 one-hot编码
五、本文亮点
1、session-parallel mini-batch
会话并行在mini-batch中,处理长度的
两种策略 (1)按照长度排序,这样padding(填充)会相对较少(2)对长的进行截断或者剪裁,显然
两种策略都不合适,因为在推荐系统中,长的和短的序列差异极大,因此作者提出session并行概念,如图,分成3个并行,当一个序列并行结束后,将新的序列补进来,甚至不需要padding。
2、negative samping
作者先说了为什么要进行负采样,首先因为推荐系统的
数据量太大,中等规模的网店,物品数量就能在数万的范围,而更大的,甚至在数十万甚至上百万,因此要对输出进行采样,仅计算一小部分。
作者将
受流行的物品,想必用户大概率是知道的,
但是用户并没有选择,
说明用户不喜欢它的概率占比会比较大,
进而作为负采样,也是一种快速负采样的方法,基于pop的采样,可解释性也更强,计算也会更快。
3、ranking loss
作者简单说了排名loss的3种方式:pointwise、pairwise和listwise,并分析优缺点:
pointwise是独立估计(直观),但使得相关物品排名低,不稳定。
pairwise是比较正负样本得分,要求正的低于负的排名,在实验中表现较好。
listwise是使用在所有物品,但是计算代价太高,因此不常用。
BPR损失
TOP1损失
作者设计的,相比bpr 在loss 后面
加了一项负样本正则项,希望负样本评分越小越好。
六、实验
1、数据集
RecSys Challenge 2015(RSC15) 包含
电子商务网站的点击流数据,这些点击流以购买事件结束。
VIDEO:来自类似 YouTube 的OTT
视频服务平台,收集观看视频达到一定时间的事件。
OTT 是 "Over-The-Top" 的缩写,指的是通过互联网传输音频、视频和其他媒体内容,而无需通过传统的有线或卫星电视运营商进行分发的服务。
2、评估指标
Recall@20和MRR@20
Mean Reciprocal Rank :MRR 的值范围在
0 到 1 之间,越接近 1 表示系统的性能越好,MRR 关注的是
第一个正确结果的位置,
而不考虑后续的排名。
计算公式:
3、对比基线
POP:
POP 策略不考虑用户的个性化兴趣,而是根据整个训练集中物品的
全局流行度,始终推荐那些被大多数用户选择的物品。在一定程度上,可以解决新用户冷启动的问题。
S-POP:
是一种基于会话的POP,它能够
捕捉到当前会话中正在流行的物品,更好地满足用户的短期兴趣。
Item-KNN
BPR-MF
4、参数与结构优化
进行调参,优化器作者使用rmsprop和adagrad两种优化算法,发现
adagrad算法表现更好,也使用了LSTM、RNN都没GRU的效果好,证明理论损失函数TOP1的效果最好,使用one-hot编码更好,使用单层GRU单元效果最好,提高GRU的宽度有好处。
5、结果
交叉熵损失在VIDEO1000是不稳定的,因此作者未给出结果,在增加单元,会发现
交叉熵的损失的在下降,然而
成对的在提升
。
六、总结
作者将GRU应用到新的领域:推荐系统,并且对基础GRU进行了一定的改进,
会话并行的小批量、基于小批量的输出采样和排名损失函数
,并且效果优于常用的基线。