英语原文共 8 页,剩余内容已隐藏,支付完成后下载完整资料
用于下一物品推荐的基于注意力的事务上下文嵌入层
王守进,胡亮,曹龙兵,黄小水,连德福,刘伟
GBDTC,FELT,悉尼科技大学
悉尼科技大学高等分析学院
中国电子科技大学大数据研究中心
摘要
在应用中,比如市场营销中,根据事务上下文为用户推荐下一个物品是很实用但具有挑战性的。事务上下文就是在事务中可见的物品。大多数现有的基于事务的推荐系统(TBRSs)主要考虑最近出现的物品而不是当前上下文中所有的物品来进行推荐。另外,他们总是设想一个事务的物品之间具有硬性的顺序排列,这并不实际。更为重要的是,一个较长的事务中经常包含了很多和用户的下一个选择无关的物品,它们对下一个选择的影响甚至会覆盖一些真正有关的物品的影响。因此,我们设想一个好的TBRS不应该只关注当前事务中的所有物品,而应该根据它们不同的相关性给它们赋予权重,以此构建具有注意力的上下文,并以更高的几率输出正确的下一个物品。为此,我们设计了一个有效的基于注意力的事务嵌入式模型(ATEM)用于嵌入上下文并为事务中的每个物品设置权重而不设想它们具有顺序。在实际事务数据集上的研究表明ATEM在准确度和新颖性方面显著优于目前最先进的算法。
引言
现在,推荐系统在实际商业中,特别是在电子商务领域发挥着重要的作用。然而,大多数现有的推荐系统都面临一些问题,例如总可能重复推荐和用户已经选择的物品类似的物品。事实上,用户可能会跟喜欢新颖的,和已有物品不同的产品。为了解决这方面的问题,新的推荐范例需要根据事务上下文进行构造,换句话说,根据在事务中已经选择的物品进行构造。一方面,基于事务的RSs(TBRSs)包含了先前的事务(或者说是事物间)来产生更多新的灵活可靠的事务性推荐,例如通过分析事务间耦合关系产生的下一栏推荐和下一物品推荐。这些方法和那些基于用户偏好和用户属性的典型推荐算法是大不相同的。另一方面,我们仍然不清楚当一系列的物品被放入一个事务时,什么应作为下一个物品被推荐。这就产生了根据分析事务间并发依赖在事务上下文中推荐下一个物品的需要。在这里,推荐下一个物品的上下文指的是相应的基于物品的事务,比如说,一个购物车中的记录由大量所选的物品组成。
我们用一个例子来说明上述的问题。一个用户首先把三样东西:{牛奶,苹果,橙子}放入手推车,然后又把面包也放进去。随后,事务就成为了{牛奶,苹果,橙子,面包}。如果我们将前三个物品当做上下文,而把最后的物品当做推荐的目标,现有的推荐算法可能会根据最近的前后关系物品(橙子和苹果)推荐诸如蔬菜沙拉等的蔬菜。然而,目标物品面包的选择可能是依赖于第一个物品牛奶。在这种情况下,TBRS应当更加关注牛奶而不是橙子和苹果,因为牛奶和下一个选择面包具有更大的相关性。这个例子表明了下一物品推荐的重要性,它有可能被事务中不相关的物品所误导。另外,实际的事务数据经常只是将事务中同时出现的物品按顺序显示(比如物品的时间戳)。因此,根据硬性顺序推荐事务性物品是不可能不实际的。
了解一个事务上下文中物品之间的相关性和过渡是一大挑战。在TBRSs中,一个普遍的挑战是如何构建一个具有注意力的上下文来更高几率地输出真实的下一选择。有些现有的方法致力于将事务作为上下文来产生推荐。然而,大多数现有的TBRSs使用具有顺序假设的部分上下文。序列模式挖掘被用于根据具有硬性顺序假设的物品间的联系预测下一个物品。但是,一个上下文中的物品可能是任意的,可能不符合任何的挖掘模式。马尔科夫链是另一种将时序数据建模的方法。然而,MC只获取一个物品和下一个物品之间的过渡而不是获取整个上下文序列中的,也就是说,它只获取一阶过渡信息。最近,一个基于矩阵因式分解(MF)的方法将从当前物品到下一个的过渡概率矩阵因式分解为潜在因子。然而,MF容易遇到矩阵稀疏问题,因为现实世界中的数据是呈幂率分布的。由于深度神经网络的巨大成功,应用深度循环神经网络来将带有序列数据的事务建模。但是由于复杂的网络导致了极大的计算代价,这种网络并不能处理大规模的数据。另外,MC,MF和RNN最先被设计用于具有硬性自然顺序的事件序列数据,因此它们不适用于乱序的事务。比如,牛奶和面包哪个先被放进购物车它是不作区分的。另外,现存的方法并为有效地为上下文中的物品设置权重,也就是说更关注那些相关的物品。这种注意力的区别相当重要,尤其对于那些包含了很多与下一个选择无关的物品的长事务。
这篇论文通过推荐一种基于注意力的事务嵌入式模型(ATEM)来解决上述问题。ATEM通过识别和下一选择具有高相似度的上下文相关物品在事务中所有的物品的嵌入层之上构建了一个注意力上下文嵌入层。考虑到在现实商业中,物品的数量很大,往往超过十万级,我们构建了一个浅层的宽进宽出神经网络来减少时间和空间消耗。特别地,我们把注意力结构注入浅层神经网络从而在事务中的所有物品之上建立一个没有硬性顺序假设的注意力上下文。幸亏有这个注意力结构,我们提出的模型能够更加关注相似度更高的物品,而减少对相似度略低的物品的关注。因此,ATEM能够更加有效,强壮地在一个有更少限制的事务中预测下一个物品。这篇论文的主要贡献如下:
●浅层的宽进宽出神经网络实现了ATEM,因此能够更加有效,更加高效地在大量的物品上进行学习和预测。
●我们的实验研究显示ATEM在两个实际数据集之上的精确度和新颖性方面都显著地优于目前最先进的方法TBRSs。通过比较有注意力结构和无注意力结构的方法,我们发现注意力结构对于TBRSs具有显著的影响。
相关工作
基于模式挖掘的方法是对于TBRSs的一种直观解决方法。Adda等人介绍了关联规则挖掘来找到不同推荐物品之间的联系。考虑到物品之间的顺序,Yap,Li和Philip介绍了通过应用一种新的技能分数评估方法进行准确的个性化推荐的一种基于个性化序列模式挖掘的推荐框架。尽管简单有效,这种方法往往会因为最小支持限制忽略掉那些长尾物品。另外,包含着任意物品的动态上下文可能会和任何频繁挖掘模式都无法匹配。
马可夫链模型是获取序列数据中过渡信息的另一解决方法。Wu等人提出了个性化马可夫嵌入式系统(PME),它首先通过对序列歌唱行为进行建模将用户和歌曲嵌入一个欧几里得空间,然后根据嵌入层生成推荐。最近,一个个性化评分度量嵌入式方法(PRME)被提出用于为个性化入住序列进行精确建模,从而对下一个地点进行推荐。PME和PRME都是在硬性顺序数据上建立的一阶MC模型,用于给同一事务中的序列物品之间的过渡数据建模。他们可能丢失高阶依赖,假定的硬性顺序数据也可能和现实数据不同。由于矩阵因式分解(MF)的强大能力,分解个性化马可夫链(FPMC)集中了MF和MC的能力来分解过渡矩阵,作为MC给个性化序列行为建模以进行下一篮推荐的基础。同MC和MF相似,FPMC也会有不现实的硬性顺序假设和数据稀疏问题。
最近,富裕深度学习技术已经开始被应用于RS。Hidasi等人将由门控循环单元组成的RNN应用于基于事务的RS来给事务的长序列建模。相比于深层建筑,浅层神经网络在处理此类问题方面更加有效,尤其在大数据集上。特别地,使用一个浅层的宽神经网络,词向量模型在学习一个假定词集上候选词的概率分布方面已经取得了巨大成功。
近来,受益于心理认知体系,注意力结构已经在上下文学习相关领域体现出惊人的潜力。Yang等人提出了叠加注意力网络(SANs)来通过寻找图片中与答案相关的区域进行图像问题解答。另一种新模型根据人类注意力的指导来学习句子陈述。鉴于注意力结构在CV和NLP的上下文学习上取得的巨大成功,我们吸取了一些点子,并提出ATEM来给注意力上下文建模从而进行下一个物品的推荐。
问题陈述
在仔细讨论我们提出的模型之前,我们首先定义问题和基本概念。
大体上,基于事务的推荐都是在基于购物车的事务数据上构建的。对于一个给定的事务数据集,令为所有事务的集合,每个事务由一个物品的子集组成,其中|T|代表集合T中的元素数量。所有事务中出现的所有物品构成了整个物品集合。需要注意的是在一个事务t中的物品可能并没有硬性的顺序。对于一个给定的目标物体,t中除了is的所有物品都被选作它对应的上下文c,也就是。特别地,注意力上下文是指上下文中的物品对于进行下一个物品推荐的上下文嵌入层的贡献是不同的。给定上下文c,我们的ATEM被构造和训练成一个盖然论分类器,它学习如何预测一个条件概率分布。总数为|t|个的训练实例通过每次把每个物品选作目标物品被构造用于每个事务t。
因此,TBRS被归结于给所有候选物品根据它们在给定上下文中的条件概率排序。要注意的是在预测阶段,条件概率根据上下文c的注意力嵌入层进行计算。这种嵌入层通过利用注意力结构学习每个上下文相关物品的权重在c中所有上下文相关的物品上构建。
建模和学习
在这一章节,我们首先展示我们提出的ATEM模型的构造,然后讨论如何训练模型和学习参数。最后,我们会展示如何进行预测并相应地使用训练好的模型产生推荐。
基于注意力的事务嵌入式模型
总得来说,从底部到顶部,我们提出的ATEM模型由一个输入层,一个物品嵌入层,一个上下文嵌入层,一个输出层,以及一个在物品和上下文嵌入层之间的注意力层组成,就如图一所示。然后,我们从输入到输出一层一层地解释模型的工作结构。
图一:ATEM结构,首先学习物品嵌入层,然后把它们结合到用于目标物品预测的上下文嵌入层中。其中rsquo;Arsquo;代表注意力模型。
物品嵌入层
给定一个上下文相关的数据集c给输入层,图一底部的输入单元构成一个独热码向量。在该向量中,只有在位置的单元被设置为1,其他的都被设置为0。对任意的,我们以和同样的方式进行编码。因此,一个长为|I|的向量能够代表上下文中的每个物品,|c|个向量可以代表给定的一个上下文c。
稀疏独热矩阵所传递的信息是有限的。在ATEM中,我们构造一个嵌入式结构来把这些向量映射为一个在物品嵌入层的低维信息矩阵代表。在这里,K维实向量用于代表物品的嵌入层。输入权重矩阵用于充分地联系输入层和物品嵌入层。要注意的是权重矩阵的第列实际上把物品的独热向量编码为实值嵌入层,也就是说:。
事务上下文注意力嵌入层
当所有物品在上下文c中的嵌入层就绪时,我们可以通过结合c中所有物品的嵌入层获取上下文c的嵌入层。特别地,注意力上下文嵌入层是作为的带权之和:
其中是上下文相关物品关于目标物品的整合权重,它指明了对于的出现的贡献量表。在我们的模型中,为了更好地获取大量上下文相关物品的不同贡献量表,我们构造了一个注意力层来自动有效地学习整合权重。与在特定假设下手动地赋值权重或是不使用注意力结构直接地学习权重相比,我们的方法不仅能在这种假设的情况下更加灵活地工作,还能更多地关注关键物品并且减少一个上下文中不相关物品的干扰。然后,我们将演示注意力模型如何获取整合权重。
特别地,我们使用一个归一化层来确定不同上下文相关物品的权重。在这种情况下,那些与目标物品具有更高相似度的上下文物品会被赋予更大的权重,而归一化层的输入是每个物品嵌入层的转换结果。
其中是所有上下文相关物品共享的物品级上下文向量,如图一所示。这个共享的上下文矩阵可以被视作是对于所有上下文相关物品的一个固定查询”哪个是提供信息的物品”的高级表现,就像在记忆网络中使用的那样。它被随机地初始化,并且在训练阶段进行共同学习。由于用作一个连接物品嵌入层和注意力模型的权重向量,在接下来的章节中我们会把它称作注意力权重,使之和输入,输出权重一致。
从根本上看,我们根据每个物品的嵌入层和物品级上下文向量的相似度估计每个物品的重要性,并通过一个归一化函数来获取物品关于目标物品的标准化权重。因此,注意力上下文表现矩阵可以用来进行计算。
目标物品预测
在获取上下文c的代表之后,我们将它输入输出层进行预测任务,这在图一的顶部体现出来了。在这里,输出权重矩阵被用于充分地连接上下文嵌入层和输出层。根据给定的上下文c的嵌入层以及权重矩阵,一个目标物品关于所给上下文c的分数可以以如下方式计算:
其中代表的第t行。结果分数确定目标物品和所给上下文c之间的相关性。因此,条件概率分布可以根据归一化函数来进行定义,这在神经网络和回归模型中也同样使用。
其中是标准化常数,是模型参数。因此,我们得到了由我们提出的ATEM建模而成的盖然论分类器来预测目标物品。
学习和预测
在之前的分段中,我们已经描述了基于事务数据d=的盖然论分类器的构造方法。其中c是输入,即建立在事务中物品之上的上下文,是已察觉的输出,即此上下文中的相应的条件相关物品。给定一个训练数据集,联合概率分布可以表示为:
因此,模型参数可以通过最大化条件对数似然的方法来学习:
需要注意,的赋值和它对应对数似然梯度的计算都包含标准化术语,它需要计算每个训练实例的整个物品集的的总和。这意味着,需要的计算时间来为每个循环获取一个标准化常数以训练模型。不幸的是,|I|和|D|在实际商业应用中往往是很大的。例如,亚马逊数据集包含了超过一万个产品的百万个事务。这样高的计算代价使训练过程变得难以控制。
噪声对比估计
为了处理上述的问题,我们采取了一种下采样方法来处理归一化层,也就是噪声-对比估计(NCE),它是在训练非标准概率模型时提出的,并且已经被广泛地用于处理NLP等领域中的类似问题。NCE不是通过直接计算归一化的标准化常数来避免高计算代价,而是致力于另一个相似的计算代价更小的目标。
NCE的主要思想是使用一个二进制分类器来区分已知噪音分布Q的数据分布中的样本。在我们的例子中,给定一个训练实例,对一个正例或一个K噪声例的采样概率都被表示为这两种分布的混合:
然后一个样本的后验概率来自数据分布,即一个正例的概率,可以以下方式计算:
<!--
全文共10049字,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[2355]
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。