以下内容纯属个人见解,欢迎大家交流。
发布于2019 KSEM(ccf-c类会议)
1.motivation
1.1问题
(1) 评论在推荐系统中被广泛使用,以处理评分矩阵的稀疏性问题;
(2) 有意义的单词和评论较少,仅从评论中学习用户和条目的表示将是一个挑战;
(3) 除了评论之外,用户还撰写了丰富的现成的摘要以及评论,但是现有的推荐方法忽略了这些有用的信息;
(4) 评论的摘要是用较短的句子描述评论,可以看作是评论的高级抽象。
1.2解决办法
(1) 设计了一个摘要感知的评论编码器,以从原始单词中学习评论的表示方式;另一个摘要感知用户/项目编码器,以从评论中学习用户或项目的表示方式;
(2) 我们提出了一个层次化的注意力模型,其摘要表示作为单词和评论级别下的注意力向量,分别为用户/项目选择重要的单词和评论。
2.相关介绍
(1) 推荐系统的目标是根据评分矩阵和用户以前的行为(例如对用户编写的项目的评论或摘要),预测用户是否喜欢该项目。
(2) 基于矩阵分解(MF)的协作过滤(CF)技术已成为推荐系统中最常用的方法,但是受数据稀疏性的影响;
(3) 为缓解此问题,许多推荐系统结合文字信息(例如,电子商务平台中的评论)与评级一起使用,以共同模拟用户和商品,因为文字包含丰富的信息来模拟用户的偏好和商品特征;
(4) 尽管推荐系统中基于文本的模型得到了显着改进,但是现有作品仅使用评论来学习用户或项目的表示,而这些用户或项目可能会遭受无用的单词或评论的困扰。
3.模型介绍
3.1 Summary Encoder
我们将通过摘要编码器学习有关用户对项目的摘要的语义特征表示形式,并且这些表示形式将被视为以下注意模块词嵌入中使用的评论的高级信息。给定第m个摘要,它可以表示为具有s个单词的序列,记为,利用词嵌入模型,将映射到更低维到空间。
在嵌入层之后,我们利用卷积神经网络(CNN)从名为Summary-CNN的摘要中提取特征表示。 Summary-CNN由K个不同的卷积滤波器组成,表示为,每个滤波器都是参数矩阵,通过在每个窗口上应用卷积运算符来产生特征词向量S的集合。第j个滤波器的卷积结果计算如下:
其中∗是卷积运算,是偏差,ReLU是非线性激活函数。 然后,我们可以获得由K个滤波器产生的特征。 由第j个滤波器在嵌入文本上方的滑动窗口t上生成的cj的维数为。 考虑到摘要通常很短,我们仅使用max-pooling来获得第j个滤波器的输出,该滤波器的定义为:
然后,最终输出是所有K个滤波器的输出的级联,表示为:
因此,我们获得了摘要的特征向量,这可以帮助我们模型侧重于更重要的评论和有用的评论词。
3.2 Summary-Aware Review Encoder
我们还采用了上面介绍的卷积运算来获得评论中每个单词的语义特征,并表示为,其中是第i个词的语义特征。 卷积运算后的评论中的单词,T是评论序列的长度。 代替摘要编码器中的最大合并,我们建议使用摘要感知的注意力模型,因为评论始终包含有关用户偏好和项目功能的大量信息,并且最大合并操作会丢失太多信息。
我们获得评论中所有单词的表示形式,如上所述,并非评论中的所有单词都同样重要。 因此,在摘要的指导下,我们引入了摘要意识的注意,以注意那些信息量更大的单词,这是该评论的一个高级抽象。
评论文本中第i个单词的注意力权重定义如下:
其中⊙是内部乘积运算,是评论文本中的第i个词表示形式。 请注意,我们在摘要表示Os上采用多感知器层(MLP)作为注意力查询向量。
由于我们已经在上面的第m条评论文本中获得了所有单词的权重。 然后,我们利用加权求和来获得第m个审阅文本的表示形式:
3.3 Summary-Aware User/Item Encoder
由于我们获得了用户的所有评论的表示形式(即)和用户的所有摘要的表示形式(即Os = {O_{s1},O_{s2},···,O_{sN}}) ,我们将根据他们的评论和摘要来学习用户或项目的表示形式。 由于用户的不同评论对用户而言具有不同的重要性,因此我们建议对摘要级别的摘要意识,以在摘要的指导下计算评论的信息性。 我们的方法中每次评论的信息量通过以下方式计算:
其中和为参数,和为偏差,我们在摘要表示中使用另一个MLP作为表示为的注意力向量。 请注意,全部来自摘要表示形式的和可以分别视为单词和复审级别的两个摘要感知指标。
最后,我们通过softmax函数对所有评论的信息性分数进行归一化,以获取每个评论的权重,因此我们可以获得第m条评论的贡献,从而对用户偏好进行建模:
由于我们已经获得了用户对以上各项的所有评论权重。 然后,我们利用加权求和运算获得每个评论上用户u的摘要感知特征表示:
同样,我们可以获得项i的特征表示。
3.4 Rating Prediction
在本节中,我们利用LFM来计算用户对项目评分的评分。 首先,我们将LFM模型中的用户偏好和项目特征扩展为两个组成部分,然后引入神经形式LFM来预测收视率。 我们介绍了用户ID嵌入和项目ID嵌入,以了解用户和项目的潜在因素,例如用户偏好和项目质量。 通过引入从评论中学到的潜在表示,用户u和项i之间的交互被建模为:
其中是用户偏好,是项目特征,⊙表示矢量的元素乘积。评分由下式计算:
其中表示LFM模型的参数,表示用户偏差,表示项目偏差,μ表示全局偏差。 LFM建立了用户和项目的潜在功能,可以进一步捕获用户和项目的潜在属性。
由于任务是一个回归问题,因此我们利用平方损失函数来训练我们的模型:
4 实验结果对比
其中,评价指标为RMSE根均方误差Root Mean Square Error