论文部分内容阅读
摘要:解决信息过载问题较好的办法之一就是采用推荐算法。为了达到更好的效果,本文提出了一种新的推荐模型。此模型基于长短期序列推荐,利用自注意力机制从用户的历史交互记录推断项目之间的关系,然后借助自注意力估算出用户交互的权重,对全局信息进行捕获,然后利用残差网络进一步发现项目之间潜在的关系。
关键词:推荐系统;自注意力机制;序列推荐
1.引言
随着互联网的发展,数据变得越来越多,如何从如此之多的数据中选择有效的信息,成为用户当前需要考虑的一个重大问题,而推荐系统的诞生就是为了解决此类信息过载的问题[1]and Evaluations</title><secondary-title>arXiv preprint arXiv:1905.01997</secondary-title></titles><periodical><full-title>arXiv preprint arXiv:1905.01997</full-title></periodical><dates><year>2019</year></dates><urls></urls></record></Cite></EndNote>。近些年来,深度学习技术在顺序推荐中引起了越来越多的兴趣,但当将其应用于推荐系统时,很难在一个较长的序列中对项目的依赖关系进行建模,也无法捕获序列的全局信息和项目之间的交互。
受到Zhang et al.的启发,本文提出了一种基于长短期偏好序列的推荐模型。利用此模型的短期偏好推荐和长期偏好推荐可以明确地调用用户的整个历史序列中的项目-项目交互,实现模型学习序列的全局表示;在卷积网络部分,采用残差网络将低层的有用信息传播至高层,进而提高模型的性能。
2.模型
本文提出一种基于长短期偏好序列的推荐模型,包括以下三个部分。
2.1短期偏好建模
用户近期与项目之间的的交互能够反映用户的需求,因此需要对用户的短期偏好进行建模。首先通过自注意力机制获取用户的全局信息,然后使用卷积网络获得项目之间的非线性关系。
在自注意力机制中允许接收n个输入,然后将这n个输入进行自乘,最后得到用户交互和注意力得分的总和。通过自注意力的这种表达形式可以了解整个序列的信息,而且无论序列内元素的距离如何,都能捕获它们之间的关系。
如图1所示,自注意力机制的输入由query,key,value构成,而且这三个值是由用户的交互序列 决定,其中 ,d表示潜在空间的维数。假设用户的短期交互的长度为L,即
,则交互矩阵 的行是用户的交互历史,列则是维度。
首先,自注意力机制的数学公式定义如下:
Q、K、V分别表示查询(query)、键(key)和值(value)。其输出定义为
=Attention(Q,K,V)# (2)
其中V是输入矩阵,Q和K是输入矩阵通过映射权重矩阵WQ和WK(WQ∈Rd×d=Wk∈Rd×d)得到的,映射关系是ReLU函数,也就是Q=ReLU(WQV),K=ReLU(WkV)。ReLU(Rectified Linear Unit)是广泛使用在深度学习中的非线性激活函数,它的数学表达式如下:
ReLU(x)=max(x,0)# (3)
在自注意力输出之前会进行掩码操作,这样可以减少对交互矩阵进行填充时的消极影响,自注意力的输出是一个L×L的矩阵,此矩阵认为是L个项目之间的相似矩阵。另外, 是用于缩放上面点积的缩放因子,从而防止梯度变得太大。
接下来,把输出的矩阵和value(也就是 )相乘,最后得到的结果是最终的加权输出:
其中 ∈RL×d,输出认为是用户的短期偏好的表示。为了学习用户的单一注意表示,我们将L个自我注意表示的均值进行嵌入。
在自注意力機制当中,并不包含任何的时间以及位置信息。如果没有上述信息的话,模型将无法保证输入的数据保持序列模式。Shaw P et al.[21]和Li J et al.[22]Yujie</author><author>McAuley, Julian</author></authors></contributors><titles><title>Time Interval Aware Self-Attention for Sequential Recommendation</title><secondary-title>Proceedings of the 13th International Conference on Web Search and Data Mining</secondary-title></titles><pages>322-330</pages><dates><year>2020</year></dates><urls></urls></record></Cite></EndNote>分别将位置和时间戳融入到模型中,保证了用户交互的顺序。因此本文使用时间信号(Time Signal TS),也就是说将不同频率的正弦曲线添加到输入中,时间信号由以下两个正弦信号构成
其中i是维度,t是时间步长。
2.2长期偏好建模
本文使用度量学习为用户进行长期推荐。用U'=RM×d和V'=RN×d分别表示用户和项目的潜在因素,用欧氏距离度量项目i和用户u的距离。
用户u对项目i越喜欢,则函数ED(U,V)的值越小。
2.3残差网络
理论上,越深的网络训练效果应该越好。但随着神经网络层数的添加,训练会变得越来越难,训练集上的效果也会变得越来越差,效果反而不如相对较浅的网络,这就是所谓的退化问题。过深的网络会产生退化问题,而残差网络恰好可以解决这个问题,残差网络越深,训练集上的效果越好。因此本文使用残差网络来优化模型。
3.结论
本文提出了一种基于长短期偏好序列的推荐系统模型。此模型结合长短期偏好,利用残差网络探究用户和项目之间潜在的关系,最终把下一个项目推荐给用户。
参考文献:
[1]Fang, H., et al., Deep Learning for Sequential Recommendation: Algorithms, Influential Factors, and Evaluations.arXiv preprint arXiv:1905.01997, 2019.
作者简介:
边晶(1977.4-),女 汉族 吉林省长春市人 硕士,副教授,从事计算机应用研究。
李国梁(1994.12-),男 汉族 山西省大同市人 硕士研究生(在读),研究方向为推荐系统、机器学习、网络安全。
关键词:推荐系统;自注意力机制;序列推荐
1.引言
随着互联网的发展,数据变得越来越多,如何从如此之多的数据中选择有效的信息,成为用户当前需要考虑的一个重大问题,而推荐系统的诞生就是为了解决此类信息过载的问题[1]and Evaluations</title><secondary-title>arXiv preprint arXiv:1905.01997</secondary-title></titles><periodical><full-title>arXiv preprint arXiv:1905.01997</full-title></periodical><dates><year>2019</year></dates><urls></urls></record></Cite></EndNote>。近些年来,深度学习技术在顺序推荐中引起了越来越多的兴趣,但当将其应用于推荐系统时,很难在一个较长的序列中对项目的依赖关系进行建模,也无法捕获序列的全局信息和项目之间的交互。
受到Zhang et al.的启发,本文提出了一种基于长短期偏好序列的推荐模型。利用此模型的短期偏好推荐和长期偏好推荐可以明确地调用用户的整个历史序列中的项目-项目交互,实现模型学习序列的全局表示;在卷积网络部分,采用残差网络将低层的有用信息传播至高层,进而提高模型的性能。
2.模型
本文提出一种基于长短期偏好序列的推荐模型,包括以下三个部分。
2.1短期偏好建模
用户近期与项目之间的的交互能够反映用户的需求,因此需要对用户的短期偏好进行建模。首先通过自注意力机制获取用户的全局信息,然后使用卷积网络获得项目之间的非线性关系。
在自注意力机制中允许接收n个输入,然后将这n个输入进行自乘,最后得到用户交互和注意力得分的总和。通过自注意力的这种表达形式可以了解整个序列的信息,而且无论序列内元素的距离如何,都能捕获它们之间的关系。
如图1所示,自注意力机制的输入由query,key,value构成,而且这三个值是由用户的交互序列 决定,其中 ,d表示潜在空间的维数。假设用户的短期交互的长度为L,即
,则交互矩阵 的行是用户的交互历史,列则是维度。
首先,自注意力机制的数学公式定义如下:
Q、K、V分别表示查询(query)、键(key)和值(value)。其输出定义为
=Attention(Q,K,V)# (2)
其中V是输入矩阵,Q和K是输入矩阵通过映射权重矩阵WQ和WK(WQ∈Rd×d=Wk∈Rd×d)得到的,映射关系是ReLU函数,也就是Q=ReLU(WQV),K=ReLU(WkV)。ReLU(Rectified Linear Unit)是广泛使用在深度学习中的非线性激活函数,它的数学表达式如下:
ReLU(x)=max(x,0)# (3)
在自注意力输出之前会进行掩码操作,这样可以减少对交互矩阵进行填充时的消极影响,自注意力的输出是一个L×L的矩阵,此矩阵认为是L个项目之间的相似矩阵。另外, 是用于缩放上面点积的缩放因子,从而防止梯度变得太大。
接下来,把输出的矩阵和value(也就是 )相乘,最后得到的结果是最终的加权输出:
其中 ∈RL×d,输出认为是用户的短期偏好的表示。为了学习用户的单一注意表示,我们将L个自我注意表示的均值进行嵌入。
在自注意力機制当中,并不包含任何的时间以及位置信息。如果没有上述信息的话,模型将无法保证输入的数据保持序列模式。Shaw P et al.[21]和Li J et al.[22]Yujie</author><author>McAuley, Julian</author></authors></contributors><titles><title>Time Interval Aware Self-Attention for Sequential Recommendation</title><secondary-title>Proceedings of the 13th International Conference on Web Search and Data Mining</secondary-title></titles><pages>322-330</pages><dates><year>2020</year></dates><urls></urls></record></Cite></EndNote>分别将位置和时间戳融入到模型中,保证了用户交互的顺序。因此本文使用时间信号(Time Signal TS),也就是说将不同频率的正弦曲线添加到输入中,时间信号由以下两个正弦信号构成
其中i是维度,t是时间步长。
2.2长期偏好建模
本文使用度量学习为用户进行长期推荐。用U'=RM×d和V'=RN×d分别表示用户和项目的潜在因素,用欧氏距离度量项目i和用户u的距离。
用户u对项目i越喜欢,则函数ED(U,V)的值越小。
2.3残差网络
理论上,越深的网络训练效果应该越好。但随着神经网络层数的添加,训练会变得越来越难,训练集上的效果也会变得越来越差,效果反而不如相对较浅的网络,这就是所谓的退化问题。过深的网络会产生退化问题,而残差网络恰好可以解决这个问题,残差网络越深,训练集上的效果越好。因此本文使用残差网络来优化模型。
3.结论
本文提出了一种基于长短期偏好序列的推荐系统模型。此模型结合长短期偏好,利用残差网络探究用户和项目之间潜在的关系,最终把下一个项目推荐给用户。
参考文献:
[1]Fang, H., et al., Deep Learning for Sequential Recommendation: Algorithms, Influential Factors, and Evaluations.arXiv preprint arXiv:1905.01997, 2019.
作者简介:
边晶(1977.4-),女 汉族 吉林省长春市人 硕士,副教授,从事计算机应用研究。
李国梁(1994.12-),男 汉族 山西省大同市人 硕士研究生(在读),研究方向为推荐系统、机器学习、网络安全。