一种基于特征交互信息和时间张量分解的项目推荐方法技术

技术编号:39406870 阅读:8 留言:0更新日期:2023-11-19 15:58
本发明专利技术提供一种基于特征交互信息和时间张量分解的项目推荐方法,应用于项目推荐模型,项目推荐模型包括特征编码层、特征提取层和学习预测层,特征提取层包括DeepTF模块与DeepATF模块,学习预测层包括GMF

【技术实现步骤摘要】
一种基于特征交互信息和时间张量分解的项目推荐方法


[0001]本专利技术涉及数据处理
,特别是涉及一种基于特征交互信息和时间张量分解的项目推荐方法。

技术介绍

[0002]在推荐系统中,矩阵分解(Matrix Factorization, MF)作为协同过滤的代表性算法,将用户

项目矩阵分解为两个潜在因子矩阵,以表示用户和项目,但当用户

项目矩阵非常稀疏时,分解可能极不稳定,往往引起低质量的局部最优。为改善此情况,相关技术人员进行了许多工作,但这些方法常需大量人力筛选特征,且因矩阵分解的内积过于线性化,效果不佳,因而后续研究人员对改进矩阵分解做出了努力。
[0003]一方面,相关技术人员将深度学习引入矩阵分解中,以提升推荐效果。例如,使用多层感知机(Multilayer Perceptron, MLP)提取用户与项目的偏好特征,并通过点积获取的简单用户偏好进行组合;或利用多层注意力机制对用户的偏好重新分配占比。然而,这些方法虽通过各种技术提取出较为丰富的用户项目特征,但均仅关注用户的整体偏好,并未考虑到用户偏好随时间变化的情况。在涉及不同时间的场景时,用户与项目的交互无法体现因时间而产生的动态性,造成推荐偏差。
[0004]另一方面,相关技术人员尝试将代表用户与项目交互的二维矩阵扩展为包含时间信息的三维张量,随后,可使用张量分解(Tensor Factorization, TF)技术将用户与项目投影到具有时间编码的潜在空间,这其中存在两种对立假设,即相邻时间点是相互独立的或相互联系的。然而,不管是独立的还是连续交互的,它们的做法均将得到的用户、项目以及时间特征向量直接输入到多层感知机中预测评级,对于用户与项目间的潜在交互关系挖掘不足,在一定程度上给模型带来信息缺失问题。

技术实现思路

[0005]为此,本专利技术的实施例提出一种基于特征交互信息和时间张量分解的项目推荐方法,以解决现有技术忽略了用户偏好会随时间变化而改变的情况、以及潜在交互关系挖掘不足的问题。
[0006]根据本专利技术一实施例的基于特征交互信息和时间张量分解的项目推荐方法,应用于项目推荐模型,所述项目推荐模型包括特征编码层、特征提取层和学习预测层,其中,所述特征提取层包括DeepTF模块与DeepATF模块,所述学习预测层包括GMF

TF模块、GMF

ATF模块与预测模块;所述方法包括:步骤1,在特征编码层对用户的历史交互数据进行one

hot编码,得到用户编号、项目编号、时间编号的one

hot编码,然后将用户编号、项目编号、时间编号的one

hot编码分别与潜在因子矩阵相乘,得到用户潜在特征向量、项目潜在特征向量、时间潜在特征向量;步骤2,将用户潜在特征向量、项目潜在特征向量、时间潜在特征向量输入至
DeepTF模块,经过多层感知机操作,得到用户深度特征、项目深度特征、时间深度特征,同时,将用户潜在特征向量、项目潜在特征向量、时间潜在特征向量输入至DeepATF模块,在DeepATF模块中,每一层神经网络的输出输入至下一层的注意力网络,进而得到DeepATF模块的多层注意力用户特征输出、DeepATF模块的多层注意力项目特征输出、DeepATF模块的多层注意力时间特征输出;步骤3,将用户深度特征、项目深度特征、时间深度特征输入至GMF

TF模块,将DeepATF模块的多层注意力用户特征输出、DeepATF模块的多层注意力项目特征输出、DeepATF模块的多层注意力时间特征输出输入至GMF

ATF模块,通过广义矩阵分解学习得到用户、项目和时间三者间的二阶特征交互信息,将二阶特征交互信息输入至预测模块得到用户对项目的预测评分值;步骤4,通过目标函数计算预测评分值与真实评分值间的损失,将损失最小化,再通过反向传播优化目标函数参数,完成算法收敛,进而得到最终的预测评分值,再根据最终的预测评分值向用户提供项目推荐列表。
[0007]根据本专利技术实施例的基于特征交互信息和时间张量分解的项目推荐方法,具有以下有益效果:1) 本专利技术在模型中融入时间因素,使模型可观察时间对用户选择的影响,在涉及动态场景时,用户与项目的交互可以体现因时间而产生的动态性,以更准确地预测用户在当前时间对各个项目的评分;2) 本专利技术通过多层注意力机制提取用户、项目、时间特征,获取丰富的特征表示,并引入广义矩阵分解(GMF)为模型生成用户与项目、用户与时间、项目与时间的二阶特征交互信息,使模型可观测到它们之间的潜在联系,提高模型整体性能。
附图说明
[0008]本专利技术实施例的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:图1是本专利技术实施例的项目推荐模型结果框图;图2是本专利技术实施例的基于特征交互信息和时间张量分解的项目推荐方法的流程示意图。
具体实施方式
[0009]为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0010]本专利技术的实施例提供一种基于特征交互信息和时间张量分解的项目推荐方法,应用于项目推荐模型,请参阅图1,所述项目推荐模型包括特征编码层、特征提取层和学习预测层,其中,所述特征提取层包括DeepTF模块与DeepATF模块,所述学习预测层包括GMF

TF模块、GMF

ATF模块与预测模块。
[0011]请参阅图2,所述方法包括步骤1~步骤4:
步骤1,在特征编码层对用户的历史交互数据进行one

hot编码,得到用户编号、项目编号、时间编号的one

hot编码,然后将用户编号、项目编号、时间编号的one

hot编码分别与潜在因子矩阵相乘,得到用户潜在特征向量、项目潜在特征向量、时间潜在特征向量。
[0012]其中,在将用户的历史交互数据传入项目推荐模型时,需在特征编码层对数据做嵌入操作。首先对数据进行one

hot编码,可排除传统整数编码的次序影响,使每一个特征在计算机表示中均为平等关系。但由于one

hot编码的向量过于高维稀疏,会严重消耗计算资源并降低模型训练效率,因此将one

hot编码与潜在因子矩阵进行矩阵乘法,得到处于密致低维空间的特征向量。
[0013]具体将用户编号、项目编号、时间编号的one

hot编码分别与潜在因子矩阵、、相乘,可得三者各自潜在特征向量用户潜在特征向量、项目潜在特征向量、时间潜在特征向量。其中,、、分别表示用户、项本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于特征交互信息和时间张量分解的项目推荐方法,其特征在于,应用于项目推荐模型,所述项目推荐模型包括特征编码层、特征提取层和学习预测层,其中,所述特征提取层包括DeepTF模块与DeepATF模块,所述学习预测层包括GMF

TF模块、GMF

ATF模块与预测模块;所述方法包括:步骤1,在特征编码层对用户的历史交互数据进行one

hot编码,得到用户编号、项目编号、时间编号的one

hot编码,然后将用户编号、项目编号、时间编号的one

hot编码分别与潜在因子矩阵相乘,得到用户潜在特征向量、项目潜在特征向量、时间潜在特征向量;步骤2,将用户潜在特征向量、项目潜在特征向量、时间潜在特征向量输入至DeepTF模块,经过多层感知机操作,得到用户深度特征、项目深度特征、时间深度特征,同时,将用户潜在特征向量、项目潜在特征向量、时间潜在特征向量输入至DeepATF模块,在DeepATF模块中,每一层神经网络的输出输入至下一层的注意力网络,进而得到DeepATF模块的多层注意力用户特征输出、DeepATF模块的多层注意力项目特征输出、DeepATF模块的多层注意力时间特征输出;步骤3,将用户深度特征、项目深度特征、时间深度特征输入至GMF

TF模块,将DeepATF模块的多层注意力用户特征输出、DeepATF模块的多层注意力项目特征输出、DeepATF模块的多层注意力时间特征输出输入至GMF

ATF模块,通过广义矩阵分解学习得到用户、项目和时间三者间的二阶特征交互信息,将二阶特征交互信息输入至预测模块得到用户对项目的预测评分值;步骤4,通过目标函数计算预测评分值与真实评分值间的损失,将损失最小化,再通过反向传播优化目标函数参数,完成算法收敛,进而得到最终的预测评分值,再根据最终的预测评分值向用户提供项目推荐列表。2.根据权利要求1所述的基于特征交互信息和时间张量分解的项目推荐方法,其特征在于,步骤2中,用户深度特征满足以下条件式:;;;;其中,为DeepTF模块的用户多层感知机中第一层对应的用户过渡特征,为第一激活函数,为DeepTF模块的用户多层感知机中第一层对应的权重矩阵,为用户潜在特征向量,为DeepTF模块的用户多层感知机中第一层对应的偏置向量,为DeepTF模块的用户多层感知机中第n

1层对应的用户过渡特征,为DeepTF模块的用户多层感知机中第n

1层对应的权重矩阵,为DeepTF模块的用户多层感知机中第n

2层对应的用户过渡特征,为DeepTF模块的用户多层感知机中第n

1层对应的偏置向量,表示用户深度特征,为DeepTF模块的用户多层感知机中第n层对应的权重矩阵;步骤2中,项目深度特征满足以下条件式:;
;;;其中,为DeepTF模块的项目多层感知机中第一层对应的项目过渡特征,为DeepTF模块的项目多层感知机中第一层对应的权重矩阵,为项目潜在特征向量,为DeepTF模块的项目多层感知机中第一层对应的偏置向量,为DeepTF模块的项目多层感知机中第n

1层对应的项目过渡特征,为DeepTF模块的项目多层感知机中第n

1层对应的权重矩阵,为DeepTF模块的项目多层感知机中第n

2层对应的项目过渡特征,为DeepTF模块的项目多层感知机中第n

1层对应的偏置向量,表示项目深度特征,为DeepTF模块的项目多层感知机中第n层对应的权重矩阵;步骤2中,时间深度特征满足以下条件式:;;;;其中,为DeepTF模块的时间多层感知机中第一层对应的时间过渡特征,为DeepTF模块的时间多层感知机中第一层对应的权重矩阵,为时间潜在特征向量,为DeepTF模块的时间多层感知机中第一层对应的偏置向量,为DeepTF模块的时间多层感知机中第n

1层对应的时间过渡特征,为DeepTF模块的时间多层感知机中第n

1层对应的权重矩阵,为DeepTF模块的时间多层感知机中第n

2层对应的时间过渡特征,为DeepTF模块的时间多层感知机中第n

1层对应的偏置向量,表示时间深度特征,为DeepTF模块的时间多层感知机中第n层对应的权重矩阵。3.根据权利要求2所述的基于特征交互信息和时间张量分解的项目推荐方法,其特征在于,步骤2中,DeepATF模块的多层注意力用户特征输出满足以下条件式:;;;;;其中,是DeepATF模块的用户多层感知机中第1层对应的用户特征输出,是DeepATF模块的用户多层感知机中第1层对应的权重矩阵,是DeepATF模块的用户多层感知机中第1层对应的偏置向量,是DeepATF模块的用户多层感知机中第1层注意力网络的用户特征输出,是softmax函数,是DeepATF模块的用户多层感知机中第1层注意力
网络的权重矩阵,是DeepATF模块的用户多层感知机中第1层注意力网络的偏置向量,是DeepATF模块的用户多层感知...

【专利技术属性】
技术研发人员:钱忠胜姚昌森蒋鹏万子珑陈思华
申请(专利权)人:江西财经大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1