CN109359140A - 一种基于自适应注意力的序列推荐方法及装置 - Google Patents
一种基于自适应注意力的序列推荐方法及装置 Download PDFInfo
- Publication number
- CN109359140A CN109359140A CN201811457857.0A CN201811457857A CN109359140A CN 109359140 A CN109359140 A CN 109359140A CN 201811457857 A CN201811457857 A CN 201811457857A CN 109359140 A CN109359140 A CN 109359140A
- Authority
- CN
- China
- Prior art keywords
- sequence
- result
- adaptive attention
- item
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于自适应注意力的序列推荐方法,该方法包括:在预先训练获得的自适应注意力感知GRU网络的输入层确定输入自适应注意力;将输入自适应注意力作用于历史交互项目序列中,获得输入序列;基于历史交互项目序列和输入序列的结合,获得输入层输出结果;在隐藏状态层确定隐藏自适应注意力,将隐藏自适应注意力作用于输入层输出结果中,获得隐藏状态序列;进而获得隐藏状态层输出结果;在自适应注意力感知GRU网络的输出层根据隐藏状态层输出结果,确定推荐给用户的项目。应用本发明实施例所提供的技术方案,提高了推荐性能。本发明还公开了一种基于自适应注意力的序列推荐装置,具有相应技术效果。
Description
技术领域
本发明涉及推荐技术领域,特别是涉及一种基于自适应注意力的序列推荐方法及装置。
背景技术
随着网络信息的爆炸式增长,推荐系统在很多在线服务中扮演着越来越重要的角色。推荐系统常用的推荐方法有一般推荐和序列推荐。一般推荐是指通过用户的历史交互项目建模用户的总体爱好来推荐项目。关键思想是协同过滤(CF),进一步可以分为基于记忆的CF和基于模型的CF。一般推荐可以捕获用户的总体喜好,但如果不进行序列行为建模,则很难直接根据用户最近的交互项目进行推荐。序列推荐将用户的交互项目视为一个序列,目的是预测用户接下来将与哪个项目交互。一个典型解决方案是计算一个项目到项目的关系矩阵,向用户推荐与最后一个交互的项目最相似的项目。
为了给序列模式建模,FPMC模型利用马尔科夫链(MC)分解用户特定的转换矩阵。基于马尔科夫链的解决方案的一个显著缺点是它仍然采用静态表示用户兴趣。随着神经网络在许多应用领域的成功,递归神经网络被广泛应用于序列推荐中。除了基本的动态和演变特性之外,用户的兴趣也是多样化的。在同一时期内,用户的兴趣通常涉及多个领域。例如,根据用户的历史行为,我们发现喜欢阅读深度学习书籍的用户也喜欢购买家用电器。虽然RNN的扩展LSTM和GRU可以更好地捕获用户偏好的长期依赖,但依赖随着时间步的变化发生单调变化。换句话说,当前项比上一项更能预测下一项。基于注意力机制的RNN可以解决上述问题,其中注意力机制可以自动赋予之前项目对预测的不同影响,并达到最优性能。
尽管基于注意力的解决方案可以为每个时间步项目分配不同的权重,使其对预测下一个项目做出不同的贡献,但是这个过程是动态的。前一个项目可能会因为其特性而在选择下一个不同类型的项目时发挥不同的作用和表现出不同的影响。然而,现有的基于注意力的RNN解决方案采用了一种固定的策略来综合前面时间步项目的影响。因此,现有方法不足以捕获用户多样性序列决策的动态过程,导致性能不佳。
发明内容
本发明的目的是提供一种基于自适应注意力的序列推荐方法及装置,以提高推荐系统性能。
为解决上述技术问题,本发明提供如下技术方案:
一种基于自适应注意力的序列推荐方法,包括:
获得用户历史交互项目序列和待推荐项目序列;
在预先训练获得的自适应注意力感知GRU网络的输入层,根据所述历史交互项目序列和所述待推荐项目序列,确定输入自适应注意力;
将所述输入自适应注意力作用于所述历史交互项目序列中,获得输入序列;
基于所述历史交互项目序列和所述输入序列的结合,获得输入层输出结果;
在所述自适应注意力感知GRU网络的隐藏状态层,根据所述输入层输出结果和所述待推荐项目序列,确定隐藏自适应注意力;
将所述隐藏自适应注意力作用于所述输入层输出结果中,获得隐藏状态序列;
基于所述输入层输出结果和所述隐藏状态序列的结合,获得隐藏状态层输出结果;
在所述自适应注意力感知GRU网络的输出层,根据所述隐藏状态层输出结果,确定推荐给所述用户的项目。
在本发明的一种具体实施方式中,所述根据所述历史交互项目序列和所述待推荐项目序列,确定输入自适应注意力,包括:
分别将所述历史交互项目序列和所述待推荐项目序列嵌入到低维空间,获得历史项目嵌入结果和待推荐项目嵌入结果;
根据所述历史项目嵌入结果和所述待推荐项目嵌入结果,确定输入自适应注意力。
在本发明的一种具体实施方式中,所述根据所述历史项目嵌入结果和所述待推荐项目嵌入结果,确定输入自适应注意力,包括:
利用softmax函数计算所述历史项目嵌入结果中每一项和所述待推荐项目嵌入结果中每一项之间的相关性,获得输入自适应注意力。
在本发明的一种具体实施方式中,所述将所述输入自适应注意力作用于所述历史交互项目序列中,获得输入序列,包括:
将所述输入自适应注意力与所述历史交互项目序列进行元素相乘操作,获得输入序列。
在本发明的一种具体实施方式中,所述将所述隐藏自适应注意力作用于所述输入层输出结果中,获得隐藏状态序列,包括:
将所述隐藏自适应注意力与所述输入层输出结果进行元素相乘操作,获得隐藏状态序列。
一种基于自适应注意力的序列推荐装置,包括:
序列获得模块,用于获得用户历史交互项目序列和待推荐项目序列;
输入自适应注意力确定模块,用于在预先训练获得的自适应注意力感知GRU网络的输入层,根据所述历史交互项目序列和所述待推荐项目序列,确定输入自适应注意力;
输入序列获得模块,用于将所述输入自适应注意力作用于所述历史交互项目序列中,获得输入序列;
输入层输出结果获得模块,用于基于所述历史交互项目序列和所述输入序列的结合,获得输入层输出结果;
隐藏自适应注意力确定模块,用于在所述自适应注意力感知GRU网络的隐藏状态层,根据所述输入层输出结果和所述待推荐项目序列,确定隐藏自适应注意力;
隐藏状态序列获得模块,用于将所述隐藏自适应注意力作用于所述输入层输出结果中,获得隐藏状态序列;
隐藏状态层输出结果获得模块,用于基于所述输入层输出结果和所述隐藏状态序列的结合,获得隐藏状态层输出结果;
项目推荐模块,用于在所述自适应注意力感知GRU网络的输出层根据所述隐藏状态层输出结果,确定推荐给所述用户的项目。
在本发明的一种具体实施方式中,所述输入自适应注意力确定模块,具体用于:
分别将所述历史交互项目序列和所述待推荐项目序列嵌入到低维空间,获得历史项目嵌入结果和待推荐项目嵌入结果;
根据所述历史项目嵌入结果和所述待推荐项目嵌入结果,确定输入自适应注意力。
在本发明的一种具体实施方式中,所述输入自适应注意力确定模块,具体用于:
利用softmax函数计算所述历史项目嵌入结果中每一项和所述待推荐项目嵌入结果中每一项之间的相关性,获得输入自适应注意力。
在本发明的一种具体实施方式中,所述输入序列获得模块,具体用于:
将所述输入自适应注意力与所述历史交互项目序列进行元素相乘操作,获得输入序列。
在本发明的一种具体实施方式中,所述隐藏状态序列获得模块,具体用于:
将所述隐藏自适应注意力与所述输入层输出结果进行元素相乘操作,获得隐藏状态序列。
应用本发明实施例所提供的技术方案,获得用户历史交互项目序列和待推荐项目序列后,在预先训练获得的自适应注意力感知GRU网络的输入层根据历史交互项目序列和待推荐项目序列,确定输入自适应注意力,将输入自适应注意力作用于历史交互项目序列中,获得输入序列,基于历史交互项目序列和输入序列的结合,获得输入层输出结果,然后在自适应注意力感知GRU网络的隐藏状态层根据输入层输出结果和待推荐项目序列,确定隐藏自适应注意力,将隐藏自适应注意力作用于输入层输出结果中,获得隐藏状态序列,基于输入层输出结果和隐藏状态序列的结合,获得隐藏状态层输出结果,在自适应注意力感知GRU网络的输出层根据隐藏状态层输出结果,确定推荐给用户的项目。利用GRU的循环体系结构的优势捕获复杂的长期依赖关系,利用注意力网络来发现本地序列模式,可以进行深度自适应用户序列兴趣表示,提高了推荐性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中一种自适应注意力机制的框架图;
图2为本发明实施例中一种基于自适应注意力的序列推荐方法的实施流程图;
图3为本发明实施例中一种基于自适应注意力的序列推荐装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的核心是提供一种基于自适应注意力的序列推荐方法,该方法利用预先训练获得的自适应注意力感知GRU网络进行序列推荐。该自适应注意力感知GRU网络为基于递归神经网络和一种新的自适应注意力机制来学习自适应用户的序列表示。具体来讲,就是采用注意力机制来适应用户序列偏好的表示,并从数据中学习时间步和项目之间的交互。
在本发明实施例中,自适应注意力感知GRU网络应用了层次结构,包括输入层、隐藏状态层和输出层。第一层即输入层,利用待推荐的目标信息来构建输入层的自适应注意力机制,从而描述输入和待推荐的目标之间的相关性。这样,基于输入自适应注意力机制的新输入可以反映用户的不同兴趣。第二层即隐藏状态层,融合了当前隐藏状态和隐藏状态层的自适应注意力机制所产生的新隐藏状态,进一步增强用户的偏好。第三层即输出层,输出结果。
GRU为长短期记忆网络(LSTM)的变体,GRU很好地解决了RNN长期依赖性问题,并简化了长短期记忆网络的结构。它包含重置门Rt和更新门Zt。此外,它具有候选隐含状态候选隐含状态使用了重置门来控制包含过去时刻信息的上一个隐含状态的流入。如果重置门近似0,上一个隐含状态将被丢弃。因此,重置门提供了丢弃与未来无关的过去隐含状态的机制。也就是说,重置门决定了过去有多少信息被遗忘。隐含状态Ht使用更新门Zt来对上一个隐含状态Ht-1和候选隐含状态进行更新。更新门可以控制过去的隐含状态在当前时刻的重要性。如果更新门一直近似1,过去的隐含状态将一直通过时间保存并传递至当前时刻。这个设计可以应对循环神经网络中的梯度衰减问题,并更好地捕捉时序数据中间隔较大的依赖关系。公式如下:
其中,W代表着过渡矩阵,b代表着偏置,表示元素乘积运算。
目前,使用传统编码器解码器的RNN模型先用一些LSTM单元来对输入序列进行学习,编码为固定长度的向量表示,然后再用一些LSTM单元来读取这种向量表示并解码为输出序列。采用这种结构的模型在许多比较难的序列预测问题(如文本翻译)上都取得了较好的结果,因此迅速成为了目前的主流方法。然而,输入序列不论长短都会被编码成一个固定长度的向量表示,而解码则受限于该固定长度的向量表示。当输入序列非常长时,模型难以学到合理的向量表示。序列输入时,随着序列的不断增长,原始根据时间步的方式的表现越来越差,整个模型的能力都同样受到限制,编解码器的结构无法解释,进一步导致了其无法设计。
注意力机制在序列学习任务上具有巨大的提升作用。在编解码器框架内,打破了传统编码器解码器结构在编解码时都依赖于内部一个固定长度向量的限制,通过在编码段保留LSTM编码器对输入序列的中间输出结果,然后训练一个网络模型来对这些输入进行选择性的学习并且在模型输出时将输出序列与之进行关联,对源数据序列进行数据加权变换,或者在解码端引入Attention模型,对目标数据进行加权变化,可以有效提高序列对序列的自然方式下的系统表现。
下面先对自适应注意力感知GRU网络的训练过程进行说明。
在本发明实施例中,使用U={u1,u2,u3,…,u|U|}表示用户集合,I={i1,i2,i3,…,i|I|}表示项目集合,用户集合中的用户总数用|U|表示,项目集合中的项目总数用|I|表示。在网络训练过程中,集中从用户的隐式反馈中抽取数据信息,该数据信息主要表示用户u∈U在t时刻与项目i∈I发生交互。用表示按时间顺序排列好的与用户u∈U有交互的项目的集合,并选取每个用户对应序列的一部分,如前70%的数据作为训练集,剩下的,如后30%的数据作为测试集,将训练集记作 表示训练集中项目总数。再从训练集中选取前面项目作为历史记录,记作最后d个项目作为待推荐的目标,记作为方便理解,以网上购物的历史记录为例,用户与某一项目在某一时刻发生交互意味着该用户在该时刻购买了该项目对应的物品。目标就是根据用户的历史购物记录预测用户在不久的将来可能会购买的一系列的物品。
具体使用符号与解释对应关系如表1所示。
表1
在本发明实施例的自适应注意力感知GRU网络中,自适应注意力机制应用于输入层和隐藏状态层。自适应注意力机制与固定的基于注意力的用户表示不同,自适应用户表示动态地适应本地活动的项目,其原理是计算历史记录中的每一个项目与待推荐目标中每一个项目之间的相关度,再根据相关度赋予历史记录中的项目在预测接下来一系列的项目的不同重要程度。
在自适应注意力感知GRU网络的输入层,可以根据用户历史记录Xu和待推荐目标Yu确定输入自适应注意力,u∈U。
具体的,可以分别将Xu和Yu嵌入到低维空间,用和分别表示Xu和Yu经过项目嵌入操作后的结果。因为本发明的目标是预测用户在不久的将来可能会发生交互的一系列的项目,所以接着可以利用softmax函数来计算Vx中的每一项和Vy中每一项之间的相关性,Vx会根据不同的待推荐项目形成不同的自适应注意力,将关于同一个历史项目的自适应注意力向量求和可以得到最终的输入自适应注意力,具有如下的向量表示:
图1所示为自适应注意力机制框架图,左下方虚线框区域中的项目组成Xu,右下方虚线框区域中的项目组成Yu,上方虚线框区域中的自适应注意力形成最终的用户u在输入层的输入自适应注意力,即
将输入自适应注意力作用于历史记录中,即将输入自适应注意力分配给Xu,使其中的不同项目在预测时起到不同程度的作用。具体可以将输入自适应注意力与历史记录进行元素相乘操作,获得输入序列:
输入序列表示经过输入自适应注意力作用过的新输入,是一个将向量之间元素相乘的运算,实现将根据待推荐目标项目集求得的不同的相关度得分分配给历史记录。
基于历史记录Xu和输入序列的结合,可以获得输入层输出结果。将GRU基础公式(1)变化为:
其中,t表示相对时间索引。获得的输入层输出结果为
在自适应注意力感知GRU网络的隐藏状态层,根据输入层输出结果和待推荐目标可以确定隐藏自适应注意力,将隐藏自适应注意力作用于输入层输出结果中,获得隐藏状态序列。
本发明实施例在输入层和隐藏状态层上均用到自适应注意力机制,且两个层次上只有输入不同,隐藏状态层对应的隐藏自适应注意力与输入层对应的输入自适应注意力计算公式相同。
在隐藏状态层,首先会得到GRU的输入层输出结果将隐藏自适应注意力作用于输入层输出结果中,即利用隐藏自适应注意力为输入层输出结果中的不同元素赋予不同的权重,进一步加强用户对不同项目的偏好程度。具体的,可以将隐藏自适应注意力与输入层输出结果进行元素相乘操作,获得隐藏状态序列:
隐藏状态序列是经过隐藏自适应注意力作用后产生的带有目标项目集信息的新的隐藏状态。
和输入层一样,可以将隐藏状态序列和输入层输出结果Hu结合起来,基于二者的结合,获得隐藏状态层输出结果用于预测:
其中,Wo是关于和的过渡矩阵,bo是偏置,是用户u在相对时间索引t时刻的输出,用表示网络的实际输出。
利用交叉熵计算待推荐项目与实际输出之间的相似性,待推荐项目集合目标函数为:
其中,θ={Wxr,Whr,Wxz,Whz,Wxh,Whh,Wo,br,bz,bh,bo}表示训练过程中的参数,λθ>0适用于约束目标函数的正则化参数,之后网络可以通过随机梯度下降学习得到。
梯度下降算法(Gradient Descent Optimization)是神经网络模型训练最常用的优化算法。对于深度学习模型,基本都是采用梯度下降算法来进行优化训练的。梯度表示某一函数在该点处的方向导数沿着该方向取得最大值,即函数在该点处沿着该梯度的方向变化最快,因此目标函数J(θ)关于参数θ的梯度是目标函数上升最快的方向。对于最小化优化问题可以使参数沿着参数反方向前进一个步长就能实现目标函数下降。这里的步长就是神经网络模型中的学习率η。参数更新表示为:
是参数的梯度。根据目标函数采用数据量的不同,梯度下降算法又可以再细分。在整个训练集上计算目标函数,称作批量梯度下降,收敛速度较慢且会面临内存不足的问题。针对训练集中一个训练样本计算目标函数称作随机梯度下降,每得到一个新样本即可执行一次参数更新,因此收敛速度快,但目标函数值会出现震荡现象。选取训练集中小批量样本计算目标函数称作小批量梯度下降算法,这是一种折中方案能保证训练过程更加稳定,并且可以充分发挥批量训练方法利用矩阵计算的优势。
经过训练获得自适应注意力感知GRU网络后,可以利用自适应注意力感知GRU网络进行序列推荐。
参见图2所示,为本发明实施例所提供的一种基于自适应注意力的序列推荐方法的实施流程图,该方法可以包括以下步骤:
S110:获得用户历史交互项目序列和待推荐项目序列。
用户历史交互项目序列即为用户历史记录,可以通过不同平台收集得到,待推荐项目序列即为待推荐目标,待推荐给用户的项目的集合。可以先对用户历史交互项目序列进行预处理,将用户和项目编号,一个用户对应的序列就是过去与该用户发生交互的项目的集合,按照时间顺序排列。
S120:在预先训练获得的自适应注意力感知GRU网络的输入层,根据历史交互项目序列和待推荐项目序列,确定输入自适应注意力。
在上述训练获得的自适应注意力感知GRU网络的输入层,可以根据历史交互项目序列和待推荐项目序列,确定输入自适应注意力。
在本发明的一种具体实施方式中,步骤S120可以包括以下步骤:
步骤一:分别将历史交互项目序列和待推荐项目序列嵌入到低维空间,获得历史项目嵌入结果和待推荐项目嵌入结果;
步骤二:根据历史项目嵌入结果和待推荐项目嵌入结果,确定输入自适应注意力。
为便于描述,将上述两个步骤结合起来进行说明。
获得历史交互项目序列和待推荐项目序列后,可以分别将历史交互项目序列和待推荐项目序列嵌入到低维空间,得到项目嵌入操作后的结果,即历史项目嵌入结果和待推荐项目嵌入结果。根据历史项目嵌入结果和待推荐项目嵌入结果,确定输入自适应注意力。具体可以利用softmax函数计算历史项目嵌入结果中每一项和待推荐项目嵌入结果中每一项之间的相关性,获得输入自适应注意力,如公式(2)所示。
S130:将输入自适应注意力作用于历史交互项目序列中,获得输入序列。
将输入自适应注意力作用于历史交互项目序列中,具体的可以将输入自适应注意力与历史交互项目序列进行元素相乘操作,如公式(3)所示,获得输入序列。具体操作过程可参考自适应注意力感知GRU网络的训练过程中在输入层进行输入自适应注意力的作用操作,在此不再赘述。
S140:基于历史交互项目序列和输入序列的结合,获得输入层输出结果。
将历史交互项目序列和输入序列相结合,通过GRU变化后的基础公式(4),可以获得输入层输出结果。
S150:在自适应注意力感知GRU网络的隐藏状态层,根据输入层输出结果和待推荐项目序列,确定隐藏自适应注意力;
S160:将隐藏自适应注意力作用于输入层输出结果中,获得隐藏状态序列。
在自适应注意力感知GRU网络的隐藏状态层,根据输入层输入结果和待推荐项目序列,可以确定隐藏自适应注意力,具体可参考输入自适应注意力的确定过程,在此不再赘述。
将隐藏自适应注意力作用于输入层输出结果中,具体的可以将隐藏自适应注意力与输入层输出结果进行元素相乘操作,如公式(5)所示,获得隐藏状态序列。具体操作过程可以参考自适应注意力感知GRU网络的训练过程中在隐藏状态层进行隐藏自适应注意力的作用操作,在此不再赘述。
S170:基于输入层输出结果和隐藏状态序列的结合,获得隐藏状态层输出结果。
将输入层输出结果和隐藏状态序列相结合,形成一个最终隐藏状态层的输出,获得隐藏状态层输出结果。
S180:在自适应注意力感知GRU网络的输出层根据隐藏状态层输出结果,确定推荐给用户的项目。
在自适应注意力感知GRU网络的输出层可以根据隐藏状态层输出结果,确定推荐给用户的项目,即生成用户的推荐侯选集。
在具体推荐时,可以根据当前用户对不同项目的偏好程度将项目从大到小排序,从中选出Top-K个项目推荐给用户。
应用本发明实施例所提供的方法,获得用户历史交互项目序列和待推荐项目序列后,在预先训练获得的自适应注意力感知GRU网络的输入层根据历史交互项目序列和待推荐项目序列,确定输入自适应注意力,将输入自适应注意力作用于历史交互项目序列中,获得输入序列,基于历史交互项目序列和输入序列的结合,获得输入层输出结果,然后在自适应注意力感知GRU网络的隐藏状态层根据输入层输出结果和待推荐项目序列,确定隐藏自适应注意力,将隐藏自适应注意力作用于输入层输出结果中,获得隐藏状态序列,基于输入层输出结果和隐藏状态序列的结合,获得隐藏状态层输出结果,在自适应注意力感知GRU网络的输出层根据隐藏状态层输出结果,确定推荐给用户的项目。利用GRU的循环体系结构的优势捕获复杂的长期依赖关系,利用注意力网络来发现本地序列模式,可以进行深度自适应用户序列兴趣表示,提高了推荐性能。
相应于上面的方法实施例,本发明实施例还提供了一种基于自适应注意力的序列推荐装置,下文描述的一种基于自适应注意力的序列推荐装置与上文描述的一种基于自适应注意力的序列推荐方法可相互对应参照。
参见图3所示,该装置包括以下模块:
序列获得模块310,用于获得用户历史交互项目序列和待推荐项目序列;
输入自适应注意力确定模块320,用于在预先训练获得的自适应注意力感知GRU网络的输入层,根据历史交互项目序列和待推荐项目序列,确定输入自适应注意力;
输入序列获得模块330,用于将输入自适应注意力作用于历史交互项目序列中,获得输入序列;
输入层输出结果获得模块340,用于基于历史交互项目序列和输入序列的结合,获得输入层输出结果;
隐藏自适应注意力确定模块350,用于在自适应注意力感知GRU网络的隐藏状态层,根据输入层输出结果和待推荐项目序列,确定隐藏自适应注意力;
隐藏状态序列获得模块360,用于将隐藏自适应注意力作用于输入层输出结果中,获得隐藏状态序列;
隐藏状态层输出结果获得模块370,用于基于输入层输出结果和隐藏状态序列的结合,获得隐藏状态层输出结果;
项目推荐模块380,用于在自适应注意力感知GRU网络的输出层根据隐藏状态层输出结果,确定推荐给用户的项目。
应用本发明实施例所提供的装置,获得用户历史交互项目序列和待推荐项目序列后,在预先训练获得的自适应注意力感知GRU网络的输入层根据历史交互项目序列和待推荐项目序列,确定输入自适应注意力,将输入自适应注意力作用于历史交互项目序列中,获得输入序列,基于历史交互项目序列和输入序列的结合,获得输入层输出结果,然后在自适应注意力感知GRU网络的隐藏状态层根据输入层输出结果和待推荐项目序列,确定隐藏自适应注意力,将隐藏自适应注意力作用于输入层输出结果中,获得隐藏状态序列,基于输入层输出结果和隐藏状态序列的结合,获得隐藏状态层输出结果,在自适应注意力感知GRU网络的输出层根据隐藏状态层输出结果,确定推荐给用户的项目。利用GRU的循环体系结构的优势捕获复杂的长期依赖关系,利用注意力网络来发现本地序列模式,可以进行深度自适应用户序列兴趣表示,提高了推荐性能。
在本发明的一种具体实施方式中,输入自适应注意力确定模块320,具体用于:
分别将历史交互项目序列和待推荐项目序列嵌入到低维空间,获得历史项目嵌入结果和待推荐项目嵌入结果;
根据历史项目嵌入结果和待推荐项目嵌入结果,确定输入自适应注意力。
在本发明的一种具体实施方式中,输入自适应注意力确定模块320,具体用于:
利用softmax函数计算历史项目嵌入结果中每一项和待推荐项目嵌入结果中每一项之间的相关性,获得输入自适应注意力。
在本发明的一种具体实施方式中,输入序列获得模块330,具体用于:
将输入自适应注意力与历史交互项目序列进行元素相乘操作,获得输入序列。
在本发明的一种具体实施方式中,隐藏状态序列获得模块360,具体用于:
将隐藏自适应注意力与输入层输出结果进行元素相乘操作,获得隐藏状态序列。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种基于自适应注意力的序列推荐方法,其特征在于,包括:
获得用户历史交互项目序列和待推荐项目序列;
在预先训练获得的自适应注意力感知GRU网络的输入层,根据所述历史交互项目序列和所述待推荐项目序列,确定输入自适应注意力;
将所述输入自适应注意力作用于所述历史交互项目序列中,获得输入序列;
基于所述历史交互项目序列和所述输入序列的结合,获得输入层输出结果;
在所述自适应注意力感知GRU网络的隐藏状态层,根据所述输入层输出结果和所述待推荐项目序列,确定隐藏自适应注意力;
将所述隐藏自适应注意力作用于所述输入层输出结果中,获得隐藏状态序列;
基于所述输入层输出结果和所述隐藏状态序列的结合,获得隐藏状态层输出结果;
在所述自适应注意力感知GRU网络的输出层,根据所述隐藏状态层输出结果,确定推荐给所述用户的项目。
2.根据权利要求1所述的方法,其特征在于,所述根据所述历史交互项目序列和所述待推荐项目序列,确定输入自适应注意力,包括:
分别将所述历史交互项目序列和所述待推荐项目序列嵌入到低维空间,获得历史项目嵌入结果和待推荐项目嵌入结果;
根据所述历史项目嵌入结果和所述待推荐项目嵌入结果,确定输入自适应注意力。
3.根据权利要求2所述的方法,其特征在于,所述根据所述历史项目嵌入结果和所述待推荐项目嵌入结果,确定输入自适应注意力,包括:
利用softmax函数计算所述历史项目嵌入结果中每一项和所述待推荐项目嵌入结果中每一项之间的相关性,获得输入自适应注意力。
4.根据权利要求1至3之中任一项所述的方法,其特征在于,所述将所述输入自适应注意力作用于所述历史交互项目序列中,获得输入序列,包括:
将所述输入自适应注意力与所述历史交互项目序列进行元素相乘操作,获得输入序列。
5.根据权利要求1至3之中任一项所述的方法,其特征在于,所述将所述隐藏自适应注意力作用于所述输入层输出结果中,获得隐藏状态序列,包括:
将所述隐藏自适应注意力与所述输入层输出结果进行元素相乘操作,获得隐藏状态序列。
6.一种基于自适应注意力的序列推荐装置,其特征在于,包括:
序列获得模块,用于获得用户历史交互项目序列和待推荐项目序列;
输入自适应注意力确定模块,用于在预先训练获得的自适应注意力感知GRU网络的输入层,根据所述历史交互项目序列和所述待推荐项目序列,确定输入自适应注意力;
输入序列获得模块,用于将所述输入自适应注意力作用于所述历史交互项目序列中,获得输入序列;
输入层输出结果获得模块,用于基于所述历史交互项目序列和所述输入序列的结合,获得输入层输出结果;
隐藏自适应注意力确定模块,用于在所述自适应注意力感知GRU网络的隐藏状态层,根据所述输入层输出结果和所述待推荐项目序列,确定隐藏自适应注意力;
隐藏状态序列获得模块,用于将所述隐藏自适应注意力作用于所述输入层输出结果中,获得隐藏状态序列;
隐藏状态层输出结果获得模块,用于基于所述输入层输出结果和所述隐藏状态序列的结合,获得隐藏状态层输出结果;
项目推荐模块,用于在所述自适应注意力感知GRU网络的输出层根据所述隐藏状态层输出结果,确定推荐给所述用户的项目。
7.根据权利要求6所述的装置,其特征在于,所述输入自适应注意力确定模块,具体用于:
分别将所述历史交互项目序列和所述待推荐项目序列嵌入到低维空间,获得历史项目嵌入结果和待推荐项目嵌入结果;
根据所述历史项目嵌入结果和所述待推荐项目嵌入结果,确定输入自适应注意力。
8.根据权利要求7所述的装置,其特征在于,所述输入自适应注意力确定模块,具体用于:
利用softmax函数计算所述历史项目嵌入结果中每一项和所述待推荐项目嵌入结果中每一项之间的相关性,获得输入自适应注意力。
9.根据权利要求6至8之中任一项所述的装置,其特征在于,所述输入序列获得模块,具体用于:
将所述输入自适应注意力与所述历史交互项目序列进行元素相乘操作,获得输入序列。
10.根据权利要求6至8之中任一项所述的装置,其特征在于,所述隐藏状态序列获得模块,具体用于:
将所述隐藏自适应注意力与所述输入层输出结果进行元素相乘操作,获得隐藏状态序列。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811457857.0A CN109359140B (zh) | 2018-11-30 | 2018-11-30 | 一种基于自适应注意力的序列推荐方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811457857.0A CN109359140B (zh) | 2018-11-30 | 2018-11-30 | 一种基于自适应注意力的序列推荐方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109359140A true CN109359140A (zh) | 2019-02-19 |
CN109359140B CN109359140B (zh) | 2022-09-09 |
Family
ID=65330741
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811457857.0A Active CN109359140B (zh) | 2018-11-30 | 2018-11-30 | 一种基于自适应注意力的序列推荐方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109359140B (zh) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110008409A (zh) * | 2019-04-12 | 2019-07-12 | 苏州市职业大学 | 基于自注意力机制的序列推荐方法、装置及设备 |
CN110060097A (zh) * | 2019-04-01 | 2019-07-26 | 苏州市职业大学 | 基于注意力机制和卷积神经网络的用户行为序列推荐方法 |
CN110245299A (zh) * | 2019-06-19 | 2019-09-17 | 中国人民解放军国防科技大学 | 一种基于动态交互注意力机制的序列推荐方法及其系统 |
CN110555469A (zh) * | 2019-08-15 | 2019-12-10 | 阿里巴巴集团控股有限公司 | 处理交互序列数据的方法及装置 |
CN110619081A (zh) * | 2019-09-20 | 2019-12-27 | 苏州市职业大学 | 一种基于交互图神经网络的新闻推送方法 |
CN110659742A (zh) * | 2019-09-10 | 2020-01-07 | 阿里巴巴集团控股有限公司 | 获取用户行为序列的序列表示向量的方法和装置 |
CN110765352A (zh) * | 2019-10-11 | 2020-02-07 | 上海上湖信息技术有限公司 | 一种用户兴趣识别方法及装置 |
CN110930219A (zh) * | 2019-11-14 | 2020-03-27 | 电子科技大学 | 一种基于多特征融合的个性化电商推荐方法 |
CN111222039A (zh) * | 2019-11-14 | 2020-06-02 | 电子科技大学 | 一种基于长短期兴趣组合的会话推荐方法及系统 |
CN111259243A (zh) * | 2020-01-14 | 2020-06-09 | 中山大学 | 基于会话的并行推荐方法及系统 |
CN111506814A (zh) * | 2020-04-09 | 2020-08-07 | 苏州大学 | 一种基于变分自注意力网络的序列推荐方法 |
CN111626827A (zh) * | 2020-05-28 | 2020-09-04 | 苏州大学 | 基于序列推荐模型的物品推荐方法、装置、设备及介质 |
CN111931054A (zh) * | 2020-08-14 | 2020-11-13 | 中国科学院深圳先进技术研究院 | 一种基于改进残差结构的序列推荐方法和系统 |
US10936950B1 (en) | 2019-08-15 | 2021-03-02 | Advanced New Technologies Co., Ltd. | Processing sequential interaction data |
CN112579914A (zh) * | 2020-12-31 | 2021-03-30 | 安徽大学 | 基于自注意力因子分解机的时间感知服务推荐系统及方法 |
CN113065060A (zh) * | 2021-02-18 | 2021-07-02 | 山东师范大学 | 基于深度学习的教育平台课程推荐方法及系统 |
CN113326384A (zh) * | 2021-06-22 | 2021-08-31 | 四川大学 | 一种基于知识图谱的可解释推荐模型的构建方法 |
CN113407819A (zh) * | 2021-05-20 | 2021-09-17 | 桂林电子科技大学 | 一种基于残差网络的序列推荐方法、系统及存储介质 |
CN113688315A (zh) * | 2021-08-19 | 2021-11-23 | 电子科技大学 | 一种基于无信息损失图编码的序列推荐方法 |
CN114169869A (zh) * | 2022-02-14 | 2022-03-11 | 北京大学 | 一种基于注意力机制的岗位推荐方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107145518A (zh) * | 2017-04-10 | 2017-09-08 | 同济大学 | 一种社交网络下基于深度学习的个性化推荐系统 |
US20180144208A1 (en) * | 2016-11-18 | 2018-05-24 | Salesforce.Com, Inc. | Adaptive attention model for image captioning |
-
2018
- 2018-11-30 CN CN201811457857.0A patent/CN109359140B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180144208A1 (en) * | 2016-11-18 | 2018-05-24 | Salesforce.Com, Inc. | Adaptive attention model for image captioning |
CN107145518A (zh) * | 2017-04-10 | 2017-09-08 | 同济大学 | 一种社交网络下基于深度学习的个性化推荐系统 |
Non-Patent Citations (1)
Title |
---|
蔡宏志: "个性化信息推荐服务模式", 《情报杂志》 * |
Cited By (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110060097A (zh) * | 2019-04-01 | 2019-07-26 | 苏州市职业大学 | 基于注意力机制和卷积神经网络的用户行为序列推荐方法 |
CN110008409A (zh) * | 2019-04-12 | 2019-07-12 | 苏州市职业大学 | 基于自注意力机制的序列推荐方法、装置及设备 |
CN110245299B (zh) * | 2019-06-19 | 2022-02-08 | 中国人民解放军国防科技大学 | 一种基于动态交互注意力机制的序列推荐方法及其系统 |
CN110245299A (zh) * | 2019-06-19 | 2019-09-17 | 中国人民解放军国防科技大学 | 一种基于动态交互注意力机制的序列推荐方法及其系统 |
CN110555469A (zh) * | 2019-08-15 | 2019-12-10 | 阿里巴巴集团控股有限公司 | 处理交互序列数据的方法及装置 |
US11636341B2 (en) | 2019-08-15 | 2023-04-25 | Advanced New Technologies Co., Ltd. | Processing sequential interaction data |
CN110555469B (zh) * | 2019-08-15 | 2020-07-24 | 阿里巴巴集团控股有限公司 | 处理交互序列数据的方法及装置 |
US10936950B1 (en) | 2019-08-15 | 2021-03-02 | Advanced New Technologies Co., Ltd. | Processing sequential interaction data |
CN110659742A (zh) * | 2019-09-10 | 2020-01-07 | 阿里巴巴集团控股有限公司 | 获取用户行为序列的序列表示向量的方法和装置 |
CN110659742B (zh) * | 2019-09-10 | 2023-09-05 | 创新先进技术有限公司 | 获取用户行为序列的序列表示向量的方法和装置 |
CN110619081A (zh) * | 2019-09-20 | 2019-12-27 | 苏州市职业大学 | 一种基于交互图神经网络的新闻推送方法 |
CN110619081B (zh) * | 2019-09-20 | 2022-05-17 | 苏州市职业大学 | 一种基于交互图神经网络的新闻推送方法 |
CN110765352A (zh) * | 2019-10-11 | 2020-02-07 | 上海上湖信息技术有限公司 | 一种用户兴趣识别方法及装置 |
CN111222039A (zh) * | 2019-11-14 | 2020-06-02 | 电子科技大学 | 一种基于长短期兴趣组合的会话推荐方法及系统 |
CN111222039B (zh) * | 2019-11-14 | 2022-05-20 | 电子科技大学 | 一种基于长短期兴趣组合的会话推荐方法及系统 |
CN110930219B (zh) * | 2019-11-14 | 2022-10-18 | 电子科技大学 | 一种基于多特征融合的个性化电商推荐方法 |
CN110930219A (zh) * | 2019-11-14 | 2020-03-27 | 电子科技大学 | 一种基于多特征融合的个性化电商推荐方法 |
CN111259243B (zh) * | 2020-01-14 | 2023-06-06 | 中山大学 | 基于会话的并行推荐方法及系统 |
CN111259243A (zh) * | 2020-01-14 | 2020-06-09 | 中山大学 | 基于会话的并行推荐方法及系统 |
CN111506814B (zh) * | 2020-04-09 | 2023-11-28 | 苏州大学 | 一种基于变分自注意力网络的序列推荐方法 |
CN111506814A (zh) * | 2020-04-09 | 2020-08-07 | 苏州大学 | 一种基于变分自注意力网络的序列推荐方法 |
CN111626827B (zh) * | 2020-05-28 | 2023-06-13 | 苏州大学 | 基于序列推荐模型的物品推荐方法、装置、设备及介质 |
CN111626827A (zh) * | 2020-05-28 | 2020-09-04 | 苏州大学 | 基于序列推荐模型的物品推荐方法、装置、设备及介质 |
CN111931054B (zh) * | 2020-08-14 | 2024-01-05 | 中国科学院深圳先进技术研究院 | 一种基于改进残差结构的序列推荐方法和系统 |
CN111931054A (zh) * | 2020-08-14 | 2020-11-13 | 中国科学院深圳先进技术研究院 | 一种基于改进残差结构的序列推荐方法和系统 |
CN112579914A (zh) * | 2020-12-31 | 2021-03-30 | 安徽大学 | 基于自注意力因子分解机的时间感知服务推荐系统及方法 |
CN113065060A (zh) * | 2021-02-18 | 2021-07-02 | 山东师范大学 | 基于深度学习的教育平台课程推荐方法及系统 |
CN113407819B (zh) * | 2021-05-20 | 2022-06-17 | 桂林电子科技大学 | 一种基于残差网络的序列推荐方法、系统及存储介质 |
CN113407819A (zh) * | 2021-05-20 | 2021-09-17 | 桂林电子科技大学 | 一种基于残差网络的序列推荐方法、系统及存储介质 |
CN113326384A (zh) * | 2021-06-22 | 2021-08-31 | 四川大学 | 一种基于知识图谱的可解释推荐模型的构建方法 |
CN113688315B (zh) * | 2021-08-19 | 2023-04-18 | 电子科技大学 | 一种基于无信息损失图编码的序列推荐方法 |
CN113688315A (zh) * | 2021-08-19 | 2021-11-23 | 电子科技大学 | 一种基于无信息损失图编码的序列推荐方法 |
CN114169869A (zh) * | 2022-02-14 | 2022-03-11 | 北京大学 | 一种基于注意力机制的岗位推荐方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109359140B (zh) | 2022-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109359140A (zh) | 一种基于自适应注意力的序列推荐方法及装置 | |
CN110245299B (zh) | 一种基于动态交互注意力机制的序列推荐方法及其系统 | |
CN110046304A (zh) | 一种用户推荐方法和装置 | |
CN108573399B (zh) | 基于转移概率网络的商户推荐方法及其系统 | |
CN110309427A (zh) | 一种对象推荐方法、装置及存储介质 | |
Bruce et al. | Genie: Generative interactive environments | |
CN106779084B (zh) | 机器学习系统及方法 | |
CN108984724A (zh) | 利用高维表示提高特定属性情感分类准确率方法 | |
CN109829959B (zh) | 基于人脸解析的表情编辑方法及装置 | |
CN110852273A (zh) | 一种基于强化学习注意力机制的行为识别方法 | |
CN110020667A (zh) | 神经网络结构的搜索方法、系统、存储介质以及设备 | |
CN109785062A (zh) | 一种基于协同过滤模型的混合神经网络推荐系统 | |
CN109034034A (zh) | 一种基于强化学习算法优化卷积神经网络的静脉识别方法 | |
CN110162698A (zh) | 一种用户画像数据处理方法、装置及存储介质 | |
CN107463701A (zh) | 基于人工智能推送信息流的方法和装置 | |
CN110462638A (zh) | 使用后验锐化训练神经网络 | |
CN113538101A (zh) | 一种基于人工智能的家装定制方法、系统及存储介质 | |
CN114842402B (zh) | 一种基于对抗学习的弱监督时序行为定位方法 | |
CN110837603A (zh) | 一种基于差分隐私保护的集成推荐方法 | |
CN112256971A (zh) | 一种序列推荐方法及计算机可读存储介质 | |
CN108960486B (zh) | 基于灰支持向量回归机预测适应值的交互式集合进化方法 | |
CN112699310A (zh) | 基于深度神经网络的冷启动跨域混合推荐的方法及系统 | |
CN115345358A (zh) | 一种基于强化学习的油井参数自适应性调控方法 | |
CN113449182B (zh) | 一种知识信息个性化推荐方法及系统 | |
CN112330362A (zh) | 用于互联网商城用户行为习惯的快速数据智能分析方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |