前言
“Personalized Top-N Sequential Recommendation via Convolutional Sequence Embedding”是2018年发表在WSDM的会议论文,文章主要提出了一个Caser模型,通过卷积神经网络(CNN)对短期序列的信息进行提取。作者认为相对于用户的通用偏好(general preference),最近的行为模式显得更为重要,这与STAMP模型,注重短期记忆的想法是相似的。不过本文最有趣的地方不是模型的构建,而是在引言部分构建的很多模式、规则。
概要
Caser依旧是一个序列推荐模型,与STAMP、AttRec一样,其实都是结合了用户的长期偏好以及短期兴趣。「Caser强调的是短期信息的影响。」 在引言部分,对我来说有启发性的有两个点。
1、序列模式的定义
文章针对FPMC等基于马尔可夫链的序列推荐方法的限制性,总结出三种序列模式,如下图:

point-level
:基于马尔可夫链的模型便是这种序列模式,蓝色的序列行为都只是单独的影响下一个行为;union-level,no skip
:(b)中就是一种联合的序列模式,同时考虑三个蓝色行为对下一个行为的影响;union-level,skip once
:作者还考虑了一种跳跃的行为。❝
For example, a tourist has check-ins sequentially at airport, hotel, restaurant, bar, and attraction. While the check-ins at the airport and hotel do not immediately precede the check-in of the attraction, they are strongly associated with the latter. On the other hand, the check-in at the restaurant or bar has little influence on the check-in of the attraction (because they do not necessarily occur).
❞【注】这部分是作者对真实世界中特定场景的一种考虑,值得借鉴。
2、数据集的序列强度
为了验证union-level
的影响以及skip behaviors
,作者通过一种关联规则衡量序列强度,并在两个数据集上进行了检验:
即 的规则形式,文章还提到两个定义:
:support count,即X后跟随Y的数量;
:置信度(confidence),即X后跟随Y(特定的某个Y)所占的比例;
举个例子,对于某个序列 ,后面伴随的行为一共出现了4次:
;
那么,对于置信度 则为50%,其余两种都是25%。
文章在Movielens和Gowalla上进行了实验,选择最小置信度为50%,统计大于等于50%的有效数量。并在skip one
和skip two
也进行了实验,如下所示:

这个结果,说明了union-level
和skip behaviors
的存在。
模型结构
Caser模型包含三个部分:
Embedding层对用户、物品序列进行密集型表示,用户的表示可以理解为用户的
general preference
;卷积层(CNN)学习用户短期( 时间内)的序列特征;
全连接层将拼接的序列特征与用户偏好映射到用户在当前时间与每个物品交互的可能性;
模型结构如下所示:

Embedding层
在物品池中,定义用户历史行为中有前 个物品,