基于双重注意力机制的文本推荐系统技术方案

技术编号:33020213 阅读:10 留言:0更新日期:2022-04-15 08:53
本发明专利技术公开一种基于双重注意力机制的文本推荐系统。本发明专利技术首先获取用户评论数据,将数据预处理之后输入到双重注意力神经网络中进行训练,之后使用此模型对用户对某个物品的评分进行预测。包括以下步骤:S1:获取用户评论数据;S2:对获取到的数据进行预处理,使其满足网络训练的需要,包括缺失值填充、异常值剔除以及构建一个用户/物品

【技术实现步骤摘要】
基于双重注意力机制的文本推荐系统


[0001]本专利技术涉及到一种基于双重注意力机制的文本推荐系统,属于推荐系统领域。

技术介绍

[0002]评论数据相比于评分数据更能展现用户对商品的喜好程度,同时相较于单个的数字评分,具体的文字能让其他用户更好地了解某个物品的属性。而现在许多优秀的推荐模型大多都使用的是协同过滤的方法来预测用户对某个物品的喜好程度,通过将评分矩阵进行分解,得到用户与物品的特征向量,再将这两个向量的点乘结果作为预测评分。虽然基于矩阵分解的推荐模型已取得了不错的性能表现。但是受限于点乘操作,无法拟合特征之间的非线性关系以及无法加入其他相关信息,而且具有较低的可解释性。
[0003]而引入了评论文本的模型能够有效解决这些弊端,使模型更有效地理解用户的偏好:在一条评论中可以抽取出用户的情感倾向、用户的喜好以及物品的一些特征,并且具有较好的可解释性。但是用户的评论具有随意性,即一个用户他的每条评论对模型的贡献是不同的。详细而贴近主题的评论应该被赋予更大的权重。而且评论之间存在着某种联系,一条评论可能会受到前一条评论的影响,同时也会影响其他评论。
[0004]目前已经有许多研究致力于解决上述问题:ConvMF是最早将卷积神经网络引入到评论推荐系统中的工作。ConvMF的主要思路是将卷积神经网络与概率矩阵分解结合起来,使用网络学习到的物品的特征作为物品特征向量的均值,从而进行推荐;Zheng等人提出的DeepCoNN完全使用了深度学习的方法对评论进行建模,使用了两个平行的卷积神经网络分别对用户物品评论进行特征提取,再将得到的特征输入到因子分解机中预测评分;Seo等人提出的D

Attn是首次将注意力机制引入到文本推荐系统中的模型,同样使用两个平行的卷积网络进行特征提取,采用局部注意力机制和全局注意力机制对评论文本进行分析,找出对用户和物品更重要的词,进而提高推荐效果和推荐的可解释性;Chen C等人提出的,通过卷积神经网络提取到每条评论的表达,然后通过注意力网络计算出每条评论的权重,再将得到的特征输入到因子分解机中预测评分;Lu Y等人提出的TARMF在思路上与NARRE相近,方法上与ConvMF类似,引入了概率模型,通过序列化神经网络提取特征,在计算出评论的权重后,得到用户或者物品的表达,与概率矩阵分解后的用户物品特征向量做比较,从而获得推荐结果。虽然上述研究已经能在某些数据集上取得不错的效果,但是都未能将评论之间的关系的信息融入到模型学习中,这会影响到最终的模型性能表现。

技术实现思路

[0005]本专利技术为了应对上述模型存在的缺陷,提出了一种基于双重注意力机制的推荐算法:首先将所有评论映射成向量形式,再通过一个局部注意力网络将其编码为一个含有所有评论表示的矩阵,接着再通过一个全局注意力网络将这个矩阵编码为一个用户向量,与自编码器得到的用户向量相加,得到最终的用户特征表示;同理可以获得物品的特征表示,将这两个向量相加输入到预测网络之中得到最终的预测评分。具体技术方案如下:
[0006]基于双重注意力机制的评论推荐系统的特征在于包括以下步骤:
[0007]步骤1:获取用户和物品的评论文本、评分信息;
[0008]步骤2:对上一步骤获取到的数据进行预处理,使其满足网络训练的需要,包括缺失值填充、异常值剔除以及构建一个用户/物品

评论的哈希表;
[0009]步骤3:将评论文本信息输入到句向量工具中,得到评论的向量化形式;划分训练集、验证集、测试集;
[0010]步骤4:初始化神经网络的各种超参数,将预处理后的训练集数据输入到网络中进行训练直至收敛;
[0011]步骤5:在预处理后的验证集数据上调整网络的各种超参数;然后在预处理后的测试集上进行预测,评估模型的性能表现。
[0012]进一步的,所述步骤1具体为:
[0013]步骤1.1:获取所有用户和物品的唯一编号、评论的物品、评论文本、评论时间以及评分。
[0014]进一步的,所述步骤2具体为:
[0015]步骤2.1:将缺失以及明显异常的数据直接删除;
[0016]步骤2.2:遍历整个数据集,构造一个哈希表,其键是用户/物品唯一标识码,值是一个具有所有评论序号,评论时间组成的二元组的列表。
[0017]进一步的,所述步骤3具体为:
[0018]步骤3.1:将数据集中的所有评论输入到句向量工具中得到评论的向量化表示,并且进行数据归一化操作,将所有值控制在[0,1]之间;
[0019]步骤3.2:按照步骤2.2生成的哈希表中的评论序号,将值替换为真正的评论向量,并且对所有值按照时间顺序进行排序;
[0020]步骤3.3:按照7:3:1的比例将数据集分割为训练集、验证集、以及测试集。
[0021]进一步的,所述步骤4具体为:
[0022]步骤4.1:初始化模型的各个超参数:局部注意力向量的维度,全局注意力向量的维度,批量大小,全联接网络的层数,各层神经元个数,注意力头部个数,数据集迭代次数,Dropout比率;
[0023]步骤4.2:计算各个评论之间的局部注意力分数,进行加权求和,得到单个用户下所有评论进行局部注意力计算后的矩阵表示,物品同理;
[0024]步骤4.3:计算各个评论的全局注意力分数,进行加权求和,得到单个用户的向量表示,物品同理,并且将两者相加,得到一个此用户

物品对的一个最终表示向量;
[0025]步骤4.4:将上一步骤产生的最终表示向量输入到因子分解机中进行评分预测;
[0026]步骤4.5:依照MSE进行整体损失计算,使用Adam优化器对模型的参数进行优化,在模型收敛或者达到最大数据集迭代次数后结束训练。
[0027]进一步的,所述步骤5具体为:
[0028]步骤5.1:根据训练后的结果对模型进行参数调整,寻找到一组使模型性能最优的超参数;
[0029]步骤5.2:在测试集上使用MSE指标对模型性能进行评估,得到最终结果。
附图说明
[0030]图1是本专利技术的方法流程图;
[0031]图2是整体预测方法的模型架构图;
[0032]图3是在Kindle Store数据集上与其他算法的对比图;
[0033]图4是在Digital Music数据集上与其他算法的对比图;
[0034]图5是在Toys and Games数据集上与其他算法的对比图;
[0035]图6是在Movies and TV数据集上与其他算法的对比图。
具体实施方式
[0036]下面结合附图对本专利技术作进一步说明。
[0037]如图1所示,本专利技术的基于双重注意力机制的的推荐算法,具体步骤如下:
[0038]步骤1:获取用户和物品的评论文本、评分信息;
[0039]步骤2:对上一步骤获取到的数据进行预处理,使其满足网络训练的需要,包括缺失
[00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于双重注意力机制的评论推荐系统的特征在于包括以下步骤:步骤 1:获取用户和物品的评论文本、评分信息;步骤 2:对上一步骤获取到的数据进行预处理,使其满足网络训练的需要,包括缺失值填充、异常值剔除以及构建一个用户/物品
‑ꢀ
评论的哈希表;步骤 3:将评论文本信息输入到句向量工具中,得到评论的向量化形式;划分训练集、验证集、测试集;步骤 4:初始化神经网络的各种超参数,将预处理后的训练集数据输入到网络中进行训练直至收敛;步骤 5:在预处理后的验证集数据上调整网络的各种超参数;然后在预处理后的测试集上进行预测,评估模型的性能表现。2.根据权利要求 1 所述的基于双重注意力机制的评论推荐系统,其特征在于所述步骤 1 具体为:步骤 1.1:获取所有用户和物品的唯一编号、评论的物品、评论文本、评论时间以及评分。3.根据权利要求 1 所述的基于双重注意力机制的评论推荐系统,其特征在于所述步骤 2 具体为:步骤 2.1:将缺失以及明显异常的数据直接删除;步骤 2.2:遍历整个数据集,构造一个哈希表,其键是用户/物品唯一标识码,值是一个具有所有评论序号,评论时间组成的二元组的列表。4.根据权利要求 1 所述的基于双重注意力机制的评论推荐系统,其特征在于所述步骤 3 具体为:步骤 3.1:将数据集中的所有评论输入到句向量工具中得到评论的向量化表示,并且进行数据归一化操作,将所有值控制在 [0, 1] 之间;步骤 3.2:...

【专利技术属性】
技术研发人员:僧德文王嘉奕
申请(专利权)人:杭州电子科技大学
类型:发明
国别省市:

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

1