一种推荐方法技术

技术编号:20160626 阅读:36 留言:0更新日期:2019-01-19 00:13
一种推荐方法,包括如下步骤:S100:使用词嵌入单元将关于用户和项目的自然语言形式的文本转化为数值型的训练数据;S200:采用注意力机制在所述训练数据中增加用户与项目的相互影响力;S300:采用基于注意力机制的卷积神经网络模型提取训练数据的局部特征和核心特征,最终得出可以表达全局的特征的隐藏特征;S400:使用因子分解机对上述隐藏特征进行分析,得到用户与项目的关联,据所述关联完成用户对项目的评分预测,最终完成向用户推荐项目。该方法相较于现有方法,提高了推荐的精度和准确度,提高了数据利用率。

【技术实现步骤摘要】
一种推荐方法
本公开属于人工神经网络及个性化推荐
,特别涉及一种推荐方法。
技术介绍
随着云计算、大数据、物联网等技术的快速发展,互联网和信息行业涌现了大量的诸如购物、教育和娱乐等应用平台,使得多源异构数据的规模也急速增长,预计到2020年全球数据总量将达到35.2ZB。这些大数据蕴含着丰富的价值,能够指导人们将行为决策模式从经验主义为主转变为数据驱动为主。然而,人们在享受大数据带来便利的同时,难以从大数据中提取有价值的信息,由此引发了“信息过载”的问题。因此,如何从大数据中根据用户的需求和兴趣挖掘出有效信息是至关重要的。推荐方法是解决互联网等平台中信息过载问题的有效解决方案,包括基于协同过滤的推荐方法、基于内容的推荐方法和混合推荐方法。此外,近年来随着深度学习成为互联网大数据和人工智能的研究热点,涌现了一类基于深度学习的新型混合推荐方法。虽然基于深度学习的混合推荐方法能够自动提取特征,但特征提取的精度仍需进一步提升。为了提高神经网络特征提取的精度,当前多使用注意力机制对神经网络进行拓展,其中神经网络主要包括卷积神经网络CNN和循环神经网络RNN。卷积神经网络的汇聚操作会遗失一些词汇的位置信息,也无法考虑权重高的历史词汇的影响度,降低了其在自然语言处理中提取特征的精度;循环神经网络虽能考虑动态信息并在自然语言的特征提取有较好效果,但是与CNN相比,其对静态数据的特征表达效果较差且运算速度过慢。综上所述,在大数据环境下进行推荐仍然面临三个挑战:一是如何提高从异构多源的数据中提取特征的精度;二是如何把传统推荐方法中特征提取的方式由人工提取转向自动提取;三是如何将深度学习与传统推荐方法融合成一个可高度协作的混合模型。
技术实现思路
为了解决上述问题,本公开提供了一种推荐方法,包括如下步骤:S100:使用词嵌入单元将关于用户和项目的自然语言形式的文本转化为数值型的训练数据;S200:采用注意力机制在所述训练数据中增加用户与项目的相互影响力;S300:采用基于注意力机制的卷积神经网络模型提取训练数据的局部特征和核心特征,最终得出可以表达全局的特征的隐藏特征;S400:使用因子分解机对上述隐藏特征进行分析,得到用户与项目的关联,据所述关联完成用户对项目的评分预测,最终完成向用户推荐项目。上述技术方案提出了一种基于自然语言处理的注意力机制。该机制在保持卷积神经网络具有较好特征提取性能的同时,对卷积神经网络进行了拓展,增加了多源异构的文本中每个词和目标特征的影响度。该机制解决了卷积神经网络在自然语言处理当中丢失记忆的问题,使得卷积神经网络在自然语言处理环境中的特征提取精度得到了明显提升。本方法引入基于注意力机制的卷积神经网络模型。该模型具有深层次和非线性网络结构的特点,可以将多源异构数据映射到一个相同的隐空间,例如从基于自然语言形式的评论信息中自动提取用户和项目的隐藏特征。自动提取特征的方式解决了基于内容的推荐方法过度依赖人工提取特征的问题,使得推荐领域的特征提取的方式能够适应大数据的环境,拓展了推荐系统的适用范围。本方法提出一种融合了基于注意力机制的卷积神经网络模型和因子分解机的混合推荐方法。该方法首先自动提取隐藏特征,其次通过考虑多个隐藏特征的组合得到更多有效的辅助信息,最后利用这些有效的辅助信息建立了关联关系,完成了较高精度的推荐。该方法改进了传统推荐模型存在的数据稀疏、冷启动难、推荐性能差、可解释性差和适用性差等缺陷,实质性提升了推荐的效率以及推荐精确度。附图说明图1是本公开一个实施例中所提供的一种基于注意力机制的卷积神经网络和因子分解机的混合推荐方法的流程图;图2是本公开一个实施例中所提供的一种基于注意力机制的卷积神经网络和因子分解机的混合推荐方法的框架图;图3是本公开一个实施例中注意力机制原理图;图4是本公开一个实施例中数据集详细统计信息;图5是本公开一个实施例中不同的卷积核数量下的RMSE指标;图6是本公开一个实施例中不同的隐因子数量下的RMSE指标;图7(a)是本公开一个实施例中全部数据集的RMSE指标对比结果图;图7(b)是本公开一个实施例中全部数据集的MAE指标对比结果图;图8(a)是本公开一个实施例中冷启动用户数据集的RMSE指标对比结果图;图8(b)是本公开一个实施例中冷启动用户数据集的MAE指标对比结果图;图9(a)是本公开一个实施例中长尾项目数据集的RMSE指标对比结果图;图9(b)是本公开一个实施例中长尾项目数据集的MAE指标对比结果图;图10(a)是本公开一个实施例中新用户的RMSE指标对比结果图;图10(b)是本公开一个实施例中新用户的MAE指标对比结果图;图11(a)至图11(d)是本公开一个实施例中在不同字符串长度下的评论数量分布图(使用Log-LogScaling):图11(a)Books数据集;图11(b)MoviesandTV数据集;图11(c)HomeandKitchen数据集;图11(d)ToolsandHomeImprovement数据集;图12是本公开一个实施例中评论信息的字符串长度分析图;图13(a)是本公开一个实施例中不同字符串长度用户组的Books数据集对比结果图;图13(b)是本公开一个实施例中不同字符串长度用户组的MoviesandTV数据集对比结果图;图13(c)是本公开一个实施例中不同字符串长度用户组的HomeandKitchen数据集对比结果图;图13(d)是本公开一个实施例中不同字符串长度用户组的ToolsandHomeImprovement数据集对比结果图;图14是本公开一个实施例中性能对比结果图。具体实施方式参看图1,在一个实施例中,公开了提供了一种推荐方法,包括如下步骤:S100:使用词嵌入单元将关于用户和项目的自然语言形式的文本转化为数值型的训练数据;S200:采用注意力机制在所述训练数据中增加用户与项目的相互影响力;S300:采用基于注意力机制的卷积神经网络模型提取训练数据的局部特征和核心特征,最终得出可以表达全局的特征的隐藏特征;S400:使用因子分解机对上述隐藏特征进行分析,得到用户与项目的关联,据所述关联完成用户对项目的评分预测,最终完成向用户推荐项目。该方法提出拓展卷积神经网络的注意力机制,在保证CNN在静态特征提取优点的同时,参考RNN的运行机理,增强CNN在自然语言处理中的记忆能力;其次使用基于注意力的卷积神经网络进行特征提取,提升数据利用率;最后研究基于注意力的卷积神经网络与因子分解机的融合完成高精度推荐。在另一个实施例中,采用评论信息作为训练数据,基于注意力机制的卷积神经网络和因子分解机的混合推荐方法(Attention-basedConvolutionalNeuralNetworkwithFactorizationMachines,ACNN-FM)的总体框架如图2所示,主要包括以下几个功能模块:(1)词嵌入模型:利用多维的分布向量(n-dimensionaldistributedvectors),将基于自然语言的评论信息转化为CNN模型能够识别的数值型数据。(2)注意力机制:我们提出的注意力机制,增加了用户评论以及项目评论之间的关联度,能够改进CNN模型在NLP领域缺乏记忆的缺陷。(3)CNN模型:卷积神本文档来自技高网
...

【技术保护点】
1.一种推荐方法,包括如下步骤:S100:使用词嵌入单元将关于用户和项目的自然语言形式的文本转化为数值型的训练数据;S200:采用注意力机制在所述训练数据中增加用户与项目的相互影响力;S300:采用基于注意力机制的卷积神经网络模型提取训练数据的局部特征和核心特征,最终得出可以表达全局的特征的隐藏特征;S400:使用因子分解机对上述隐藏特征进行分析,得到用户与项目的关联,据所述关联完成用户对项目的评分预测,最终完成向用户推荐项目。

【技术特征摘要】
1.一种推荐方法,包括如下步骤:S100:使用词嵌入单元将关于用户和项目的自然语言形式的文本转化为数值型的训练数据;S200:采用注意力机制在所述训练数据中增加用户与项目的相互影响力;S300:采用基于注意力机制的卷积神经网络模型提取训练数据的局部特征和核心特征,最终得出可以表达全局的特征的隐藏特征;S400:使用因子分解机对上述隐藏特征进行分析,得到用户与项目的关联,据所述关联完成用户对项目的评分预测,最终完成向用户推荐项目。2.根据权利要求1的方法,优选的,采用评论信息作为训练数据,则该方法具体为:S101:使用词嵌入单元将自然语言形式的用户评论信息和项目评论信息数值化为用户的表达特征向量和项目的表达特征向量;S201:通过计算用户评论信息与项目评论信息之间的相似度,得到表达用户评论与项目评论之间影响度的注意力矩阵;将注意力矩阵与用户的权值矩阵进行运算,得到用户的注意力特征向量,将注意力矩阵与项目的权值矩阵进行运算,得到项目的注意力特征向量;把用户的表达特征向量与用户的注意力特征向量进行拼接形成带记忆能力的新的用户的表达特征向量;把项目的表达特征向量与项目的注意力特征向量进行拼接形成带记忆能力的新的项目的表达特征向量;S301:使用基于注意力机制的卷积神经网络对上述新的用户表达特征向量和新的项目表达特征向量进行卷积、池化和全连接操作,从中提取用户隐藏特征以及项目隐藏特征;S401:使用因子分解机从用户隐藏特征及项目隐藏特征中构建出用户及项目之间的关联,并且根据所述关联完成用户对项目的评分预测,最终完成向用户推荐项目。3.根据权利要求1的方法,步骤S100进一步包括,所述词嵌入单元包括规格化和数值化两个步骤,其中,规格化是指对自然语言形式的文本进行分词、去除停用词和无用词,数值化是指使用多维分布向量对文本进行数值化操作。4.根据权利要求1的方法,步骤S300进一步包括:所述卷积神经网络包括卷积、池化以及全连接操作。5.根据权利要求2的方法,其中,用户的权值矩阵以及项目的权值矩阵初期是直接随机初始化,并利用深度学习的后向传播方法进行更新。6.根据权利要求1的方法,其中,所述向用户推荐项目包括向信息的使用者推荐商品、知识、电影和音乐。7.根据权利要求2的方法,步骤S101进一步包括:S1001,已知为用户u对项目m的评论,假设有其中表示用户u对项目m评论的第i个句子;再假设句子其中,Wij表示第i个句子的第j个单词,n为每个句子的单词数;为了建立单词与数值的对应关系,建立映射函数φ(wij):wij→Z,Z∈N*,该函数表示从单词Wij到数值Z的映射关系,其中N*为正整数集合;在此基础上,构建出以数值表达的用户u评论的多维分布向量Vu:其中,Vu中的任一个元素表示词嵌入单元对用户u评论中单词Wij进行处理之后的数值化结果,q表示用户u所有评论的句子数量;同理构建出以数值表达的项目m评论的多维分布向量Vm,且Vm=Vu,以及同理得到Vm中任一个元素Vm,kq为项目m评论第k个句子第q个单词所对应的数值化值;S1002,假设词嵌入单元表示某个训练批次数据的表达特征向量为Fi,r∈Rd...

【专利技术属性】
技术研发人员:王小明庞光垚郝飞谢杰航王新燕林亚光秦雪洋
申请(专利权)人:陕西师范大学
类型:发明
国别省市:陕西,61

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

1