Advertisement

Collaborative Memory Network for Recommendation Systems解读

阅读量:

Collaborative Memory Network for Recommendation Systems解读

本文为对该论文的简单解读和记录,方便理解

摘要

本文提出了一种协同记忆网络(CMN)深层结构:该结构整合了潜在因素模型的全局架构与邻域导向的局部架构,并通过非线性方法实现了统一构建。基于Memory Networks的成功应用背景,在此基础之上我们将记忆组件与神经注意力机制相结合形成了邻域组件,在这一模块中用户与物品间的关联寻址机制巧妙地将复杂的用户-物品关联与神经注意力机制相结合以实现编码学习。最终输出模块结合了存有用户-物品记忆信息的邻域信息来生成排序评分值。通过集成多个这样的记忆模块构建了一个多层次架构从而能够捕捉更为复杂的用户-物品互动关系。

介绍

在面临着信息爆炸的时代挑战时, 推荐系统扮演着至关重要的角色

协同过滤推荐系统的分类主要包括三类:基于内存或邻域的算法、隐式因子分解算法以及融合方法

基于邻域的方法也被称为推荐系统中的协作过滤技术的一种形式。这种技术主要包括两种主要类型:一种是基于物品(Item-based)的协作过滤方法;另一种则是基于用户的协作过滤方法。无论是哪一种类型都需要先计算出用户之间的相似度或物品之间的相似度;然后根据这些预先计算好的相似度值来进行推荐。(但这种方法的一个缺点是没有考虑全局性的信息)
潜在因子模型是最常使用的一种推荐算法类型;它主要是通过矩阵分解的方式来进行数据建模的。具体来说就是将用户与物品之间的关系表示为一个n \times m大小的评分矩阵;由于这个评分矩阵通常是稀疏的数据结构;因此可以通过将其分解为n \times k的一个用户特征矩阵与k \times m的一个物品特征矩阵两者的乘积。(这种方法的优势在于能够有效捕捉到局部性的关联性)
混合型模型则通过融合这两种基本方法的特点来进一步提升推荐系统的性能;例如Factorization Machine(FM)以及SVD++等方法

协同记忆网络(CMN)

1

通过基于用户与项目内存间的关联建立元素级积机制后,随后通过采用U(其中U∈Rd×d)完成线性投影任务。

User Embedding

对于推测用户u对物品i的评分情况。我们将获得历史上所有与物品i具有隐式反馈的用户的邻居集合N(i)。本文将引入联合寻址方案(the associative addressing scheme)作为衡量相似度的方法:

2

第一项衡量潜在客户与有过评分/反馈的同一批次用户的相似性程度;第二项反映客户v接受推荐给客户u的商品i的程度。

Neighborhood Attention

本文在CMN框架中整合了注意力机制,并为不同邻居赋予了不同的权重。在论文中对注意力的量化采用了softmax公式来进行实现。

在这里插入图片描述

随后利用注意力机制结合用户的external memory(外部记忆),基于以下公式构建了一个综合的vector以表征用户u邻接体对其推荐对象i偏好的特性:

在这里插入图片描述

C矩阵作为user的一个嵌入矩阵,在系统中被配置为记忆模块的作用。
其物理意义体现在用户u在物品i上与其他具有行为交互的用户间的相似度加权后的其他用户的特征表示中。
具体而言,Oui是由d维向量Cv各分量按一定权重相加而成的一维向量。

Output Module

根据用户的偏好数据及其相关特征信息, 通过构建基于协同过滤的方法, 可以得到一个用于预测用户的个性化推荐模型

在这里插入图片描述

激活函数采用ReLU(Rectified Linear Unit),该方法通过矩阵U对user向量与item向量的点积结果进行线性变换;这种设计体现了矩阵分解的核心理念,并捕捉到了全局信息的整体特征;同时关注到了局部相关用户的独特属性,则进一步通过矩阵W将嵌入空间转换至潜在特征域中。论文采用了图a所示框图的形式对整个流程进行了系统化展示

在这里插入图片描述

图a中仅展示包含单个内存层的CMN框架。

Multiple Hops

在这里插入图片描述

图b所示的是一个多层结构框架,在其基础上不断叠加了图a左侧虚线框内的元素。该系统具备回顾分析已有相似用户并据此推算出更精准邻居的能力。在每一跳层数中将当前层数输出作为下一跳层输入的基础,在每一跳层数中将当前层数输出作为下一跳层输入的基础,在每一跳层数中将当前层数输出作为下一跳层输入的基础,在每一跳层数中将当前层数输出作为下一跳层输入的基础,
每一个Hop层如公式5所示:

在这里插入图片描述
在这里插入图片描述

z0ui= mu+ ei.

Parameter Estimation

损失函数

利用贝叶斯个性化排序(BPR)优化准则损失函数:训练时每次给定一个正样本并计算其评分值;同时给定一个负样本并计算其评分值。

在这里插入图片描述

σ(x) = 1/(1 + exp(−x

时间复杂度
在这里插入图片描述

实验

数据集

在这里插入图片描述

Epinions: 在线用户的product feedback dataset, 作者通过判断用户是否对某个商品进行了评价来确定 rating, 如果是的话, rating 设定为 1, 否则设为 0.
citeulike-a: 学术 papers 的存储与分享 dataset, 如果是相关的内容, 则给该 entry 标记 rating 1, 否则不标记.
Pinterest: 用户的Pinterest images dataset, 作者通过将那些被用户存储或固定在其 panel 上的图片标记 rating 1 来构建该 dataset.

对于每个用户,在其历史交互记录中随机选取一个项目的案例,并将这100个未曾接触过且不相关的项目作为测试样本加入测试集。其余这些正面案例则成为训练数据

评估方法

采用留一出法来进行实验评估,并选用Hit Ratio (HR) 和 Normalized Discounted Cumulative Gain (NDCG) 作为模型性能的评价指标。研究者认为,在当前的研究背景下,该方法能有效地反映模型的表现特征。具体而言,Hit Ratio (HR) 主要用于判断正样本是否能够出现在结果列表的前N位之中;而 Normalized Discounted Cumulative Gain (NDCG) 则会衡量结果列表中各项目的整体位置,并会对排在末尾位置上的项目产生惩罚效果。

实验对比

对比分析七个具有代表性的基准模型(包括基于邻域的方法、传统的潜在因素模型、混合型策略以及深度学习相关的方法)

在这里插入图片描述

Table2汇总了基于Epinions、citeulike-a以及Pinterest这三个数据集上的CMN结果,并分别设置了三层结构及截止点设为5与10的HR与NDCG基准。

hop数和embedding size对CMN模型的影响

在这里插入图片描述

从图a可以看出总体趋势。随着嵌入维度大小逐渐提升,在不包括单层的情况下会稳步提升。对于hop=1的情况而言,在嵌入维度大小达到40时达到了峰值性能。由于在该情况下出现了过拟合现象而导致性能下降。这表明单一层次可能限制了模型的表现力。当嵌入维度大小设定在20时,在多层结构上的优势变得微乎其微。然而随着嵌入维度大小的进一步增加,在多层结构上的优势变得更加明显。

在这里插入图片描述

图B展示了 embedding 大小为20时单层的最佳效果;随后随着模型容量的增长而退化;与图A结论有一定相似之处。在三层结构中,在 embedding 大小设为40的情况下;因神经网络具有非凸特性;可能因为发现了较差的局部极小点而导致性能表现异常降低;在HR和NDCG指标上;两层与四层的表现几乎相同;两者之间最多相差0.3%

在这里插入图片描述

图C展示了随着嵌入尺寸逐步增强所带来的系统性能显著提升的现象;然而单一层次的表现却存在明显的局限性,在处理复杂的用户交互建模方面表现不足。与以往研究相比,在单一层次模型中并未观察到系统性能会随着嵌入尺寸的增长而下降的趋势;这种现象可能源于较大规模的数据集能够提供一种潜在的形式化正则化机制从而有效防止过拟合问题的发生。经过实验对比发现无论是两层、三层还是四层的设计方案他们都展现出了相似的整体性能水平但较之而言具有更高的计算资源需求

在这里插入图片描述

为了系统地考察注意力机制与非线性特性对CMN模型的影响,在论文中设置了如Table3所示的实验方案。通过对实验数据进行深入分析可知,在CMN模型中将注意力机制与非线性变换相结合能够显著提升其性能。

负采样对结果的影响

在这里插入图片描述

图a展示了CMN在Epinions数据集上的效果。具体而言,在负样本数量从2至10的变化范围内观察到了显著的表现差异。研究发现,在单步阶段中存在一定的波动性特征;然而当负样本的数量达到5至10个时这种现象趋于平缓甚至消失。对于图b所示的citeulike-a数据集而言 在单步层次上的平均性能明显低于使用两步或三层架构的情况;而在Pinterest数据集中 单一层次的结果显示出随着负样本数量的增加而逐渐提升的趋势 经过对citeulike-a和Pinterest两个基准数据库的深入分析 我们发现采用多步骤架构能够显著提高对不同规模负样本群体的适应能力 并且这种改进的效果更为稳定 可靠性更高 从而整体上超越了单一层次架构的表现

实验结论

  • 当单个hop中的嵌入维度长度为20时达到最佳效果;而多个hop阶段的嵌入维度长度随增大会带来性能提升(这一规律在不同数据集上并不完全一致)。经过实验验证,在所测试的三个基准数据集中,默认设置 hop 数值为 2 可获得最佳的整体性能表现;而相较于两个 hop 的情况,在多 hop 情景下并无显著优势。
  • 相较于非线性的激活函数而言,线性激活函数表现出较低的性能水平;但注意力机制通过引入自适应计算图谱显著提升了模型的表现质量。
  • 不同数据集下负采样的比例设置存在显著差异;其中一部分数据显示随着负采样比例增加其分类精度呈现上升趋势(这一发现需结合具体指标进一步分析)。此外,在本研究中发现当 hop 数值固定为 2 时 对超参数的变化不再敏感。

本文主要贡献

本研究开发了一种名为协作记忆网络(CMN)的新架构,在隐式协作过滤问题中展现出显著效果。该网络通过增强外部记忆系统与神经注意机制来提升性能;其中包含两个关键模块:一是关联寻址方案用于识别相似用户间的最近邻模型;二是自适应非线性加权的学习机制用于定义用户邻域关系;最后通过非线性相互作用输出模块生成推荐值。
该模型揭示了其与传统协同过滤方法之间的深层关联。
通过系统性评估实验数据集中的多维度验证框架表明,在多个基准模型上均取得了超越现有方法的表现。
研究结果表明:注意力权重的定量可视化分析能够深入洞察各组件的工作原理及其相互作用关系。

全部评论 (0)

还没有任何评论哟~