基于聚类分析的新书推荐
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于聚类分析的新书推荐
摘要:针对大多数图书馆管理系统中的个性化服务中的新书推荐只是定时将新到馆的图书罗列出来让读者浏览进行推荐,推荐效果差的问题。本文在比较三大常用的推荐技术的优缺点后,采用基于聚类分析的推荐算法推荐新书,并具体给出实现的方法。
关键词:协同过滤推荐;内容推荐;关联规则推荐;聚类分析the recommendation of new book based on cluster analysis wang yanhong
(college of computer science&technology,huaqiao university,quanzhou362000,china)
abstract:new books in the personalized service in most of the library management system is just timing the new museum of books listed here allow readers to browse recommended, recommended poor. compare the advantages and disadvantages of three commonly recommended techniques, the use of a recommendation algorithm based on cluster analysis recommended the book, and given the specific implementation method.
keywords:collaborative filtering recommendation;content recommendation;recommendation association rules;clustering analysis
一、常用推荐技术介绍
推荐技术是推荐系统中最核心、最关键的部分,很大程度上决定了推荐系统性能的优劣。目前,主要的推荐技术包括:基于内容推荐、协同过滤推荐、基于关联规则推荐、基于网络结构的推荐算法、基于社会网络分析的推荐算法、基于效用推荐、基于知识推荐和组合推荐。下面将简单介绍常用的三种推荐技术:
(一)协同过滤推荐(collaborative filtering recommendation)。协同过滤推荐技术是推荐系统中应用最早和最为成功的技术之一。其核心思想可以分为两部分:首先是利用用户的历史信息计算用户之间的距离,然后利用目标用户的最近邻居用户对商品的评价来预测目标用户对特定商品的喜好程度,系统从而根据这一喜好程度来对目标用户进行推荐。基于协同过滤的推荐系统可以说是从用户的角度来进行相应推荐的,而且是自动的,即用户获得的推荐是系统从购买模式或浏览行为等隐式获得的,不需要用户努力地找到适合自己兴趣的推荐信息,如填写一些调查表格等。
(二)基于内容的推荐(content-basedreeommendation)。基于内容的推荐是协同过滤技术的延续与发展,它是依据用户已经选择的产品内容信息计算用户之间的相似性,进而进行相应的推荐。它不需要依据用户对项目的评价意见,一般通过机器学习的方法从关于产品内容的特征描述的事例中得到用户的兴趣。在基于内容的推
荐系统中,项目或对象(产品)是通过相关的特征的属性来定义,系统基于对象的特征,学习用户的兴趣,考察用户与待预测项目的相匹配程度,为用户做出推荐。用户的资料模型取决于所用学习方法,常用的有决策树、神经网络和基于向量的表示方法等。基于内容的用户资料是需要有用户的历史数据。
(三)基于关联规则推荐(assoeiationrule一 based recommendation)。基于关联规则的推荐是以关联规则理论为基础,首先进行关联规则分析。关注用户行为的关联模式,把已购商品作为规则头,规则体为推荐对象。关联规则挖掘可以发现不同商品在销售过程中的相关性,在零售业中已经得到了成功的应用。但是利用规则推荐信息依赖于规则的质量和数量。
二、基于内容的推荐算法
(一)基于内容推荐算法的方法
基于内容的推荐方法主要由两个:启发式的方法和基于模型的方法。
启发式的方法就是用户凭借经验来定义相关的计算公式,然后再根据公式的计算结果和实际的结果进行验证,然后再不断的是修改公式以达到最终目的。基于模型的方法就是根据以往的数据作为数据集,然后根据这个数据集来通过机器学习的方法学习出一个模型。常用的学习方法例如bayes分类、聚类分析、决策树、人工神经网络等。这些算法不是基于一个函数公式来进行推荐,而是利用
统计学习和机器学习技术从已有的数据中通过分析得到模型,基于模型进行推荐。
(二)聚类分析的基本思想
聚类分析根据各个待分类的特征模型相似程度进行分类,相似的归为一类,不相似的归为另一类。聚类分析包含两个基本内容:模式相似性的度量和聚类算法。
1.模式相似度测度
为了能划分模式的类别,必须先定义模式相似度测度,以此来描述模式之间特征的相似程度即距离测度
以两个矢量矢端的距离为考虑的基础,距离测度值是两矢量相应的分量之差的函数,两矢量间的距离的具体算法有很多,常用的有:(1)欧式距离(euclidean)
d(x,y)=|x-y|=
(2)绝对值距离
d(x,y)=
(3)明氏距离
d(x,y)=[
计算模式特征矢量到聚类中心的距离并和门限t比较,决定归属于哪类作为新的一类中心。
2.算法原理
(1)拿任意的一个模式特征矢量作为第一个聚类中心。令w1类
的中心z1=x1。(2)计算下一个模式特征矢量x2到z1的距离d21,若d21>t,则建立新的一类w2,中心z2=x2。(3)假设已有聚类中心z1,z2,…..,计算尚未定类别的模式特征矢量xi到各聚类中心zj(j=1,2……)的距离dij。如dij>t,xi作为新的一类wk+1 的中心,zk+1=xi否则,如果dij=min dij,则xi wt;检查是否所有的模式都划分完类别,如划分完就结束,否则在返回到(3)。
三、基于聚类分析的新书推荐的实现
(一)程序流程
1.定一个聚类中心,从图书结构体中拿出一个实例,即一个书号,作为聚类中心。
2.计算新书库中的每一个书号与聚类中心的距离,先计算书号的第1,2位(书的大类),如为同类则往下计算,若不同类则令相似度p为0,在计算书号的后两位,通过调用距离计算函数,通过函数得到的返回值与阀门值t(人工设定)进行比较,如果大于阀门值此书号就入选,若小于t就不为同一类的,此书就不进行推荐
3.将整个新书库中的书一一与之比较,第一轮完毕之后就完成了第一本书的推荐,一个读者己借几本书,就将以上操作循环几次就可以完成新书推荐。
(二)算法具体实现
聚类过程中类的中心一经选中,在聚类过程中就不在改变,因此,在带分类模式集给定的条件下,使用这种方法的结果很大程度上依赖于距离门限t的选择,待分类特征矢量参与分类的次序即聚类中