一种基于用户评分与评论的推荐方法与流程

文档序号:18396976发布日期:2019-08-09 23:31阅读:1405来源:国知局
一种基于用户评分与评论的推荐方法与流程

本发明涉及推荐方法的技术领域,尤其是指一种基于用户评分与评论的推荐方法。



背景技术:

互联网技术的高速发展,极大地降低了人们获取信息的门槛,与此同时,全球互联网上每时每刻都在产生庞大的数据,人类社会已经进入了信息过载的时代。基于协同过滤的个性化推荐技术作为解决信息过载问题的有效手段,它能够通过分析用户的历史行为、物品属性和上下文等信息,从海量的数据中挖掘出与用户兴趣相符的信息进行推荐,不仅帮助人们提高获取有价值信息的效率,而且也让信息能够精准的展现在对它感兴趣的用户面前,为企业带来了巨大的经济效益。

在实际的应用中,传统的协同过滤推荐算法面临数据稀疏性和冷启动问题,导致算法预测的精确度以及运行效率偏低。为弥补协同过滤推荐算法的不足,本文提出了一种基于用户评分与评论的推荐方法。



技术实现要素:

本发明的目的在于克服现有技术的不足,提出了一种基于用户评分与评论的推荐方法,能够实现更精准的推荐,该方法首先通过大数据预处理技术对评论数据进行预处理,然后使用word2vec模型从预处理后的用户评论数据中提取物品特征,再引入词频,评分,评论时间,评论帮助度改进物品特征,最后利用物品特征计算物品之间的相似度,并进行评分预测和推荐列表生成。

为实现上述目的,本发明所提供的技术方案为:一种基于用户评分与评论的推荐方法,包括以下步骤:

步骤1、评论数据预处理:包括物品评论聚合、缺失评论填充、重复数据删除和数据格式转换;

步骤2、物品特征提取:利用word2vec模型从预处理后的评论数据中提取物品特征;

步骤3、改进物品特征:利用用户评论中包含的词频、评分、评论时间和评论帮助度信息对物品特征进行改进;

步骤4、计算物品相似度:基于改进后的物品特征利用余弦相似度计算物品之间的相似度;

步骤5、预测物品评分:根据物品之间的相似度计算用户对物品的评分,得到用户对物品的预测评分;

步骤6、生成推荐列表:根据用户对物品的预测评分生成初始的推荐列表,然后过滤用户已评分物品,生成最终的推荐列表。

在步骤1中,所述评论数据预处理是利用大数据预处理技术对原始的用户评论数据进行数据清洗转换,包括:

物品评论聚合:根据物品的唯一标识将描述同一物品的所有用户评论进行聚合,得到同一物品的评论集合;

缺失评论填充:对于没有获得用户评论的物品,从物品的元数据中提取物品的描述信息作为一条用户评论数据,来填充物品的缺失评论数据;

重复数据删除:对同一物品评论集合中的所有用户评论,利用编辑距离计算它们之间的相似度,对于相似度高的用户评论,视为重复评论进行删除;

数据格式转换:对每条用户评论数据,进行标点符号过滤,单词大小写转换,分词,词干提取和去除停用词处理。

在步骤2中,所述物品特征提取是指利用word2vec模型从预处理后的物品评论数据中提取物品特征,具体过程如下:

步骤2.1、词向量转换:利用word2vec模型将同一物品集合中的所有用户评论的词汇转换为低维的词向量;

步骤2.2、评论特征向量转换:将相应评论中所有词对应的词向量进行累加,然后除以该条评论中包含的词汇数量,得到评论的特征向量;

步骤2.3、物品特征向量转换:得到评论的特征向量后,对物品评论集合中所有评论对应的评论特征向量进行累加,然后除以物品评论集合中包含的评论数量得到物品的特征向量。

在步骤3中,所述对物品特征进行改进是指利用用户评论中包含的词频,评分,评论时间和评论帮助度信息对物品特征进行改进,具体过程如下:

步骤3.1、引入词频改进物品特征:利用tf-idf算法计算用户评论中单词的词频,根据词频权重对物品特征进行改进;

步骤3.2、引入评分改进物品特征:对评分较高的用户评论赋予较高权重,评分较低的用户评论赋予较低权重,根据评分权重对物品特征进行改进;

步骤3.3、引入评论时间改进物品特征:对距离当前时间较近的用户评论赋予较高权重,距离当前时间较远的用户评论赋予较低权重,根据评论时间权重对物品特征进行改进;

步骤3.4、引入评论帮助度改进物品特征:对评论帮助度较高的用户评论赋予较高权重,距离当前时间较远的用户评论赋予较低权重,根据评论时间权重对物品特征进行改进;

在步骤4中,所述计算物品相似度是指利用余弦相似度度量方法比较两两物品的特征向量,得到物品之间的相似度;

在步骤5中,所述预测物品评分是指根据物品之间的相似度计算用户对物品的评分,得到用户对物品的预测评分,具体过程如下:

步骤5.1、根据物品之间的相似度由高至低进行排序,得到与目标物品最相似的前k个物品;

步骤5.2、根据用户对这前k个物品的评分,预测用户对目标物品的评分。

在步骤6中,所述推荐列表生成是指根据用户对物品的预测评分生成初始的推荐列表,然后过滤用户已评分物品,生成最终的推荐列表,具体过程如下:

步骤6.1、初始推荐列表生成:根据用户对物品的预测评分由高至低进行排序,得到初始推荐列表;

步骤6.2、物品过滤和排序:过滤初始推荐列表中用户已经给过评分的物品,重新进行排序;

步骤6.3、最终推荐列表生成:读取步骤6.2中的物品排序列表,选取前n个物品生成推荐列表。

本发明与现有技术相比,具有如下优点与有益效果:

1、用户评论内容比评分蕴含更丰富的信息,评论内容一般是文本数据,相较于简单的评分数值,能够作为解释用户评分的依据,反映用户对物品某方面特征的关注。

2、用户评论内容能够更真实,更确切的体现物品特征,相比评分和商家给定的物品元信息,能够更贴切地反映用户关注的物品特征。

3、用户评论数据能够缓解评分数据稀疏性问题,当评分数据稀疏时,会对协同推荐算法造成严重的影响,但只要有少数的用户评论内容,就能够以此建立物品特征。

4、本发明方法在用户评论数据缺失时,通过从物品的元数据中提取物品的描述信息作为一条用户评论数据,来填充物品的缺失评论数据,能够较好地解决物品冷启动问题。

5、本发明方法的预测准确率有较大的提高,能够实现更精准地推荐。

附图说明

图1为本发明方法的整体流程示意图。

图2为本发明方法中评论数据预处理的具体流程图。

图3为本发明方法中物品特征提取的具体流程图。

具体实施方式

下面结合具体实施例对本发明作进一步说明。

如图1至图3所示,本实施例所提供的基于用户评分与评论的推荐方法,包括以下步骤:

步骤1、评论数据预处理,利用大数据预处理技术对原始的用户评论数据进行数据清洗转换,包括:

物品评论聚合:根据物品的唯一标识将描述同一物品的所有用户评论进行聚合,得到同一物品的评论集合;

缺失评论填充:对于没有获得用户评论的物品,从物品的元数据中提取物品的描述信息作为一条用户评论数据,来填充物品的缺失评论数据;

重复数据删除:对同一物品评论集合中的所有用户评论,利用编辑距离计算它们之间的相似度,对于相似度高的用户评论,视为重复评论进行删除;

数据格式转换:对每条用户评论数据,进行标点符号过滤,单词大小写转换,分词,词干提取和去除停用词处理。

步骤2、物品特征提取:利用word2vec模型从预处理后的评论数据中提取物品特征,具体过程如下:

步骤2.1、词向量转换:利用word2vec模型将同一物品集合中的所有用户评论的词汇转换为低维的词向量;

步骤2.2、评论特征向量转换:将相应评论中所有词对应的词向量进行累加,然后除以该条评论中包含的词汇数量,得到评论的特征向量;

步骤2.3、物品特征向量转换:得到评论的特征向量后,对物品评论集合中所有评论对应的评论特征向量进行累加,然后除以物品评论集合中包含的评论数量得到物品的特征向量。

步骤3、改进物品特征:利用用户评论中包含的词频、评分、评论时间和评论帮助度信息对物品特征进行改进,具体过程如下:

步骤3.1、引入词频改进物品特征:利用tf-idf算法计算用户评论中单词的词频,根据词频权重对物品特征进行改进;

步骤3.2、引入评分改进物品特征:对评分较高的用户评论赋予较高权重,评分较低的用户评论赋予较低权重,根据评分权重对物品特征进行改进;

步骤3.3、引入评论时间改进物品特征:对距离当前时间较近的用户评论赋予较高权重,距离当前时间较远的用户评论赋予较低权重,根据评论时间权重对物品特征进行改进;

步骤3.4、引入评论帮助度改进物品特征:对评论帮助度较高的用户评论赋予较高权重,距离当前时间较远的用户评论赋予较低权重,根据评论时间权重对物品特征进行改进。

步骤4、计算物品相似度:基于改进后的物品特征利用余弦相似度计算物品之间的相似度,具体是利用余弦相似度度量方法比较两两物品的特征向量,得到物品之间的相似度。

步骤5、预测物品评分:根据物品之间的相似度计算用户对物品的评分,得到用户对物品的预测评分,具体过程如下:

步骤5.1、根据物品之间的相似度由高至低进行排序,得到与目标物品最相似的前k个物品;

步骤5.2、根据用户对这前k个物品的评分,预测用户对目标物品的评分。

步骤6、生成推荐列表:根据用户对物品的预测评分生成初始的推荐列表,然后过滤用户已评分物品,生成最终的推荐列表,具体过程如下:

步骤6.1、初始推荐列表生成:根据用户对物品的预测评分由高至低进行排序,得到初始推荐列表;

步骤6.2、物品过滤和排序:过滤初始推荐列表中用户已经给过评分的物品,重新进行排序;

步骤6.3、最终推荐列表生成:读取步骤6.2中的物品排序列表,选取前n个物品生成推荐列表。

以上所述实施例只为本发明之较佳实施例,并非以此限制本发明的实施范围,故凡依本发明之形状、原理所作的变化,均应涵盖在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1