一种结合用户评论内容和评分的项目推荐方法技术

技术编号:14158897 阅读:133 留言:0更新日期:2016-12-12 01:39
本发明专利技术公开了一种结合用户评论内容和评分的项目推荐方法,针对推荐系统中存在的冷启动问题和可解释性差问题,提出了结合用户评论内容和用户评分的模型,通过利用蕴含在评论中丰富的信息,可以极大的提高预测的精确度,尤其当数据很稀疏时,可以很好的解决冷启动和可解释性差的问题。本发明专利技术方法主要考虑到用户评论信息中包含了项目特征的描述,通过映射函数使数值评分中的潜在特征和评论信息的项目特征相对应。可以很好的对用户的喜好进行建模,因此即使数据很稀疏时,也能很好的进行预测和推荐。

【技术实现步骤摘要】

本专利技术涉及项目推荐方法,具体是一种结合用户评论内容和评分的项目推荐方法
技术介绍
随着Web2.0以来,互联网上的信息以指数级的数量增长,面对海量的数据,用户明显感觉到很难从中发现自己真正感兴趣的内容,于是推荐系统变得越来越不可或缺。我们可以依靠推荐系统从音乐流媒体服务平台(例如网易云音乐)中收藏的上百万首歌曲中发现自己喜欢的歌曲;我们也可以依靠推荐系统从新闻网站(例如腾讯新闻)中发现自己感兴趣的新闻。淘宝等购物网站使用推荐系统向用户推荐他们可能喜欢的商品。虽然推荐系统在互联网的很多领域表现良好,但是现有的方法仍然存在不足之处。其中一个不足之处在于大多数推荐系统都不能很好的处理冷启动问题,冷启动问题指的是当推荐系统中存在新用户时,由于系统中缺少新用户足够的历史行为信息,这样就导致推荐系统不能很好的给新用户做出满意的推荐结果;同样,对于新项目推荐系统也不能及时的推荐给用户。冷启动问题在导致推荐系统对新用户和新项目的体验不好。另外一个问题是现有的推荐系统的可解释性差,它们不能更加深入地学习用户的偏好以及项目的属性。例如在矩阵分解方法中,我们学习对应用户潜在特征和项目潜在特征的两个特征向量。两个潜在特征向量的点积大小表示用户是否喜欢这个项目。但是这些潜在的特征值很难同用户真实的评价联系起来。例如一个用户可能喜欢某个项目由于两个特征向量的某个特征值同时对应的值比较大,当推荐系统给用户推荐这个项目时,很难用真实的物理意义解释说明给用户,做出相应推荐的原因。如果项目是一 部科幻题材的电影,是否意味着用户喜欢科幻电影或者用户仅仅因为喜欢电影的男主角而喜欢呢?我们无从得之。事实上把潜在向量的每一个特征值都对应于一个真实的物理意义是很困难的。推荐系统中预测用户的偏好是通过学习用户对项目的历史评分得到的,它的思想是假设过去有相似偏好的用户在未来也有相似的偏好,推荐系统对用户进行建模仅仅用到用户的评分信息而没有考虑评论的内容。在实际的推荐系统中,用户不仅有对项目的评分值,而且有对项目的评论。评论中包含了丰富的信息解释了用户对这个项目的评分值是某个确定值的原因。这些评论提供了项目的内容,可以用来缓解当用户评分很稀疏时的冷启动问题。这是因为评论内容中包含的信息比一个评分值丰富很多,当系统中的评分数据很稀疏时,推荐系统几乎不可能学习到用户或者项目的特点。然而文本的评论内容却可以更好的估计用户偏好或者项目的内容。在早期的研究中,研究者们也意识到在推荐系统中使用文本内容的优点,于是在基于内容过滤和基于协同过滤的组合中做了大量的工作,研究者们发现有很多特征影响用户对项目的评分,他们利用文本的评论内容学习用户在这些特征上的权重分布,然而他们的方法需要有经验的专家预先定义这些特征。而且这样选择的特征也有很大的随机性,如果特征选择的不好,导致系统不能正确的学习用户的偏好。
技术实现思路
本专利技术的目的在于克服上述项目推荐现有方法中存在的问题和不足,提供一种结合用户评论内容和评分的项目推荐方法,通过基于用户评论内容的过滤和基于评分的协同过滤自动学习这些特征,从而解决上述问题。同时为了解决可解释性问题,把评分的潜在主题空间维度和评论内容的主题空间维度进行了一致排列,这样每一个评分的潜在主题的维度都可以用评价的关键词的标签来 解释,标签解释了评分对应维度的真实物理意义。为实现本专利技术目的,本专利技术一种结合用户评论内容和评分的项目推荐方法,其中评分用基于矩阵的方法进行潜在特征分解,用户评论的内容用LDA方法进行建模,项目推荐方法包括以下步骤:步骤1:从互联网中采集用户数据并对其进行预处理,生成用户行为数据存放到用户行为信息数据库;步骤2:通过分析用户的历史行为数据,构建用户对项目偏好评分以及评论的标签,并将数据划分为训练集和测试集;步骤3:基于训练集构建用户-项目的偏好评分矩阵;步骤4:利用训练集中用户对项目的评论内容构建LDA模型;步骤5:构建映射函数,使基于评分的矩阵分解方法和基于评论的LDA模型方法有效地联系起来;步骤6:通过设置一个超参数μ来平衡评分数据和评论数据对推荐的影响程度,得到推荐的模型表达式;步骤7:训练步骤6中得到的模型,利用测试集得到的不同的超参数μ中的推荐误差,绘制不同超参数μ得到的误差曲线;步骤8:从误差曲线中选择出最优的误差曲线对应的超参数μ,得到最优的预测推荐模型;步骤9:基于最优超参数μ,对推荐系统中出现的用户项目集,按照步骤8的模型对目标用户计算他对某个待推荐项目的评分,当评分大于设定的阈值时,系统就把该项目推荐给用户。所述步骤1采集的数据至少包括用户唯一ID、项目唯一ID、用户对项目的评论内容、偏好评分以及用户对项目的行为时间的相关信息,存放于用户行为 信息数据库中。所述步骤3中,用户-项目的偏好评分矩阵是利用矩阵分解方法的SVD算法得到的:rec(u,i)=α+βu+βi+γu.γi (1)其中,rec(u,i)表示用户u对项目i的预测评分,α表示预测基准,βu和βi表示用户u和项目i的评分偏移值,γu和γi表示用户和项目的潜在特征向量。所述步骤4基于评论内容集构建的LDA模型为: ι ( τ | θ , φ , z ) = Π d ∈ τ Π j = 1 N d θ z d , j φ z d , j , ω d , j - - - ( 2 ) ]]>其中τ表示整个评论集,Nd表示一条评论中出现的词的数量,表示出现某个主题的可能性,ωd,j表示某个词描述某个主题的可能性。所述步骤5构建的映射函数为: θ i , k = exp ( κγ i , 本文档来自技高网
...
一种结合用户评论内容和评分的项目推荐方法

【技术保护点】
一种结合用户评论内容和评分的项目推荐方法,其特征在于包括以下步骤:步骤1:从互联网中采集用户数据并对其进行预处理,生成用户行为数据存放到用户行为信息数据库;步骤2:通过分析用户的历史行为数据,构建用户对项目偏好评分以及评论的标签,并将数据划分为训练集和测试集;步骤3:基于训练集构建用户-项目的偏好评分矩阵;步骤4:利用训练集中用户对项目的评论内容构建LDA模型;步骤5:构建映射函数,使基于评分的矩阵分解方法和基于评论的LDA模型方法有效地联系起来;步骤6:通过设置一个超参数μ来平衡评分数据和评论数据对推荐的影响程度,得到推荐的模型表达式;步骤7:训练步骤6中得到的模型,利用测试集得到的不同的超参数μ中的推荐误差,绘制不同超参数μ得到的误差曲线;步骤8:从误差曲线中选择出最优的误差曲线对应的超参数μ,得到最优的预测推荐模型;步骤9:基于最优超参数μ,对推荐系统中出现的用户项目集,按照步骤8的模型对目标用户计算他对某个待推荐项目的评分,当评分大于设定的阈值时,系统就把该项目推荐给用户。

【技术特征摘要】
1.一种结合用户评论内容和评分的项目推荐方法,其特征在于包括以下步骤:步骤1:从互联网中采集用户数据并对其进行预处理,生成用户行为数据存放到用户行为信息数据库;步骤2:通过分析用户的历史行为数据,构建用户对项目偏好评分以及评论的标签,并将数据划分为训练集和测试集;步骤3:基于训练集构建用户-项目的偏好评分矩阵;步骤4:利用训练集中用户对项目的评论内容构建LDA模型;步骤5:构建映射函数,使基于评分的矩阵分解方法和基于评论的LDA模型方法有效地联系起来;步骤6:通过设置一个超参数μ来平衡评分数据和评论数据对推荐的影响程度,得到推荐的模型表达式;步骤7:训练步骤6中得到的模型,利用测试集得到的不同的超参数μ中的推荐误差,绘制不同超参数μ得到的误差曲线;步骤8:从误差曲线中选择出最优的误差曲线对应的超参数μ,得到最优的预测推荐模型;步骤9:基于最优超参数μ,对推荐系统中出现的用户项目集,按照步骤8的模型对目标用户计算他对某个待推荐项目的评分,当评分大于设定的阈值时,系统就把该项目推荐给用户。2.根据权利要求1所述的结合用户评论内容和评分的项目推荐方法,其特征在于:所述步骤1采集的数据至少包括用户唯一ID、项目唯一ID、用户对项目的评论内容、偏好评分以及...

【专利技术属性】
技术研发人员:黄文明程广兵邓珍荣
申请(专利权)人:桂林电子科技大学
类型:发明
国别省市:广西;45

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

1