基于奇异值分解算法的聚类协同过滤推荐系统技术方案

技术编号:8683256 阅读:487 留言:0更新日期:2013-05-09 03:14
本发明专利技术提出一种基于奇异值分解算法的聚类协同过滤推荐技术,通过利用本发明专利技术中提出的用户属性特征值将用户先分类,降低用户-商品评分矩阵的维度;然后将在图像处理与自然语言处理中常用的奇异值分解(SVD)算法加以改进,并利用到推荐系统当中去。将用户所在聚类中的评分矩阵分解后聚合,从而填充矩阵中未评分项的预测得分,并且利用该填充矩阵计算同一聚类中用户间的相似度,最后利用在推荐系统中应用广泛的基于用户协同过滤技术计算最终商品的预测评分,并做出最终的推荐。该发明专利技术可以提高系统推荐效率,解决推荐系统数据稀疏性等问题,同时可以提高系统的推荐准确率。

【技术实现步骤摘要】

本专利技术属于电子商务推荐系统领域,具体涉及集成多种技术,如数据挖掘技术、机器学习技术、自然语言处理技术等,实现将聚类与奇异值分解(SVD)技术结合的一种推荐方法。
技术介绍
近年来,随着互联网技术的迅猛发展,电子商务已经成为ー种新的时尚,在近些年形成飞速增长的趋势。电子商务,它是IT技术与商务行为结合所产生的一种新的商务交易过程,是21世纪市场经济商务运行的主要模式,通过电子商务平台,人们可以享受足不出户选购商品的快捷与方便。随着电子商务平台交易规模的扩大,人们通过浏览器无法在短时间内快速的浏览所有的商品,并且也缺少现实交易中售货员对顾客进行的一些产品介绍,因此人们面临了电子商务时代特有的“信息超载”问题。针对干“信息超载”问题,推荐系统在20世纪90年代应运而生,如Google的新闻推荐、Email过滤等等。目前几乎所有的电子商务系统,都将推荐技术作为网上销售的必然组成部分,如Amazon, Netflix,豆瓣,淘宝等等。推荐系统的主要作用有:(I)诱导新客户,也就是向ー个潜在的新客户推荐产品,将浏览者变成购买者;(2)鼓励老客户,也就是在客户已买的东西的基础上推荐更多产品,提高网络的交叉销售能力;(3)提升顾客对网站的忠诚度。准确率,可扩展性,实时性是评价一个推荐系统好坏与否的重要因素。然而随着人们越来越热衷于网上购物,目前的推荐系统面临着“信息超载”的问题,由于系统中的数据量过于庞大,导致目前的ー些推荐技术不能实时快速有效的做出推荐;与此同时,ー个一直困扰着推荐系统的问题就是局部数据稀疏性问题,尽管一个系统中的数据量极大,但是对于每个単一用户,其浏览与购买的商品所占系统中总的商品数的比例实在太小,这就导致计算用户相似度的问题上无法做到准确有效,这样大大的影响了推荐的結果。因此如何解决上述两个问题成为了推荐系统亟待解决的主要问题。本专利采用基于奇异值分解算法的聚类协同过滤推荐技术,通过将用户先分类,降低用户-商品评分矩阵的维度,然后利用奇异值分解(SVD)算法,在用户所在聚类中将评分矩阵分解后聚合,从而填充矩阵中的未评分项的预测得分,最后通过协同过滤技术做出最終的推荐。该技术可以提高系统推荐效率,解决推荐系统数据稀疏性等问题并且可以提高系统的推荐准确率。
技术实现思路
本专利技术提出通过利用聚类算法与奇异值分解(SVD)算法相结合的技术来改善推荐系统的推荐效率与准确率。导致传统推荐系统推荐效率较低的主要原因是由于推荐系统中存在的用户数与商品数量过多,而传统的推荐系统必须通过计算每两个用户或商品之间的相似性,来找出与指定用户或者商品相似度最高的k个最近邻来做出推荐,由于计算量过于庞大,而且不是每一次的计算都是必要的,因此导致推荐效率降低;导致传统推荐系统推荐准确率较低的主要原因是由于尽管ー个系统中的数据量很庞大,但是对于每个单ー用户,其浏览与购买的商品所占系统中总的商品数的比例实在太小,这种局部数据稀疏性就导致计算用户相似度的问题上无法做到准确有效,这样大大的影响了推荐的准确率。本专利技术通过聚类算法解决推荐效率问题,而利用SVD算法解决局部数据稀疏性问题,从而改善推荐結果。本专利技术技术方案分为如下几个基本的执行步骤:步骤ー:利用用户特征值,包括性别、年龄、职业,将系统中已有用户分到n个聚类中去,并且计算出每个聚类的聚类中心值;步骤ニ:对于每个新注册的用户,计算出该用户属性特征值,将该值与每个聚类中心值进行比较,找出最相近的一个聚类,将该新用户加入进去,并且改变该聚类的聚类中心值;步骤三:对于每个登录用户,找到该用户所在聚类,将该聚类中的用户-商品评分矩阵取出来,并且依照一定得规则,利用SVD算法将该评分矩阵进行分解,将分解后的矩阵进行处理后再聚合,从而得到原有矩阵中每ー个未评分商品的预测评分;步骤四:利用得到的新评分矩阵,计算该登录用户与该矩阵中每个用户的相似度,找出相似度最高的k个用户作为他的最近邻;步骤五:利用基于用户的协同过滤方法和步骤四中得到的登录用户的最近邻相似度,对原有评分矩阵中的每个未评分商品进行评分预测,最后得到最佳推荐结果,并将该结果推荐给用户。本专利技术有以下ー些技术特征:(I)步骤I所述的聚类算法是利用数据挖掘中有名的k-means聚类算法原理,在本专利技术中提出了一种适用于推荐系统的新聚类算法,通过利用用户注册信息中的性别,年龄和职业等属性,利用多次实验数据找出最优的每个属性特征的权值,从而得出ー个计算用户综合属性特征值的公式,在根据该用户综合属性特征值进行聚类;(2)步骤2所述的过程其实就是不断向系统数据库中添加新数据的过程,通过注册后的计算新用户综合属性特征值,来对新用户进行聚类,可以在以后毎次用户登录的时候,快速的找到该用户所在聚类,提高系统的效率;(3)步骤3所述的SVD算法,主要用来解决系统局部数据稀疏性的问题。SVD算法通常用于图像处理以及自然语言处理等领域,本专利技术将这一方法改进后,利用到推荐技术中去,通过第一次计算用户-商品评分矩阵中未评分商品的预测评分,来解决系统局部数据稀疏性的问题。(4)步骤4所述的过程,不是单纯的以步骤3中所得到的未评分商品的预测评分来进行推荐,而是通过步骤3中所得到的评分来计算同一个聚类中的用户相似度,通过SVD算法分解聚合后的评分矩阵,使得用户相似度的计算更加准确。(5)步骤5所述的过程,是本专利技术推荐系统中最后的推荐部分,通过步骤4找到目标用户的k个最近邻,利用传统的基于用户的协同过滤推荐方法,计算出原用户-商品矩阵中未评分商品的预测评分,并将最后的结果推荐给目标用户。具体实施方式为使本专利技术的目的、技术方案及优点更加清楚明白,以下将举实例对本专利技术做进ー步详细地说明。1.利用用户属性特征值分类的聚类算法本专利技术中,我们利用用户综合属性特征值来对用户进行聚类划分。通常,每个用户都拥有自己的个人特征,如エ资、籍贯、性別、职业、年龄等等。根据知名的咨询公司艾瑞对中国网民的消费形态进行了统计,消费者的消费情况可以根据用户的不同属性来划分。而通常用户在注册时候可以收集到的信息包括性别、年龄以及职业,而这3种属性又恰恰可以很好的反映出一个用户的特征。因此我们可以利用以上属性来对用户进行分类,并且通过具体的计算公式为:muc (u) = aS(u) + 0A(u) + yO(u),来计算用户的属性特征值。其中a+^ + Y = 1,它们分别为各个属性的相关系数。muc(u)表示用户u的综合属性特征值,本文档来自技高网
...

【技术保护点】
基于奇异值分解算法的聚类协同过滤推荐系统,其特征在于,在计算用户相似度之前,首先将系统中的每个用户根据特定的聚类算法划分到不同的聚类中去,这样可以有效的降低用户?商品评分矩阵的维度,提高系统的推荐效率;其次将常用于图像处理与自然语言处理技术中的奇异值分解(SVD)算法改进后应用到推荐系统中去,将用户?商品矩阵分解之后再聚合,从而得出第一次预测后的商品评分,来计算用户间的相似度,这样可以有效的解决推荐系统中常见的矩阵稀疏问题。

【技术特征摘要】
1.于奇异值分解算法的聚类协同过滤推荐系统,其特征在于,在计算用户相似度之前,首先将系统中的每个用户根据特定的聚类算法划分到不同的聚类中去,这样可以有效的降低用户-商品评分矩阵的维度,提高系统的推荐效率;其次将常用于图像处理与自然语言处理技术中的奇异值分解(SVD)算法改进后应用到推荐系统中去,将用户-商品矩阵分解之后再聚合,从而得出第一次预测后的商品评分,来计算用户间的相似度,这样可以有效的解决推荐系统中常见的矩阵稀疏问题。2.据权利要求1所述的方法,其特征在于,实现方案共分为两个步骤,聚类和利用SVD算法填充用户-商品矩阵。聚类负责将系统中原有的大量用户划分到多个小的聚类中去;利用SVD算法填充用户-商品矩阵负责将该用户所在聚类中的用户-商品评分矩阵中未评分的项通过分解后聚合填充,利用以上两个步骤可以降低系统计算维度,解决系统稀疏性问题,从而大大提高推荐的效率与准确率。3.据权利要求1所述的方法,其特征在于,聚类负责利用用户的属性特征值将系统中原有的大量用户-商品...

【专利技术属性】
技术研发人员:李小勇巴麒龙
申请(专利权)人:北京邮电大学
类型:发明
国别省市:

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

1