基于关联规则的高校图书馆个性化推荐模型
2013-02-22马仲兵长江师范学院图书馆
马仲兵(长江师范学院图书馆)
随着网络技术不断进步和发展,大多数高校图书馆都采用了Web2.0 技术对高校图书馆进行运行和管理。与LIB1.0技术相比,Lib2.0 技术一个重要的特点是能为读者提供个性化服务,即可以根据读者借阅图书的兴趣爱好,实时、有针对性、主动地为读者提供读者感兴趣的图书。
在数据挖掘领域,关联规则一直是应用得比较多的挖掘方式之一。关联规则的概念是在SIGMOD93 上由Agrawal 等人第一次提出来。它最先是在零售产品行业中,对顾客购物篮中的不同商品的分析,挖掘出用户的购物习惯后,进而来推动产品的销售。目前,关联规则是众多学者研究热点,许多行业也对关联规则的技术进行了大量的研究。关联规则的挖掘通过规则的支持度来反映规则的实用性,置信度反映出规则的有用性,而通过他们共同作用来反映出用户的兴趣度。一个关联规则是否有用,看它是否满足最小支持度阈值以及最小置信度阈值。一旦发现了有用的规则,可以帮助服务行业管理者有选择地推销,从而引导消费。关联规则使用最多的是Apriori 算法,Apriori 算法对用户的模式比较直观。目前来看,关联规则在图书馆的个性化推荐模型的实际运用中还是比较成功,当然也存在一些问题,主要体现在两个方面。
(1)关联规则的发现比较难。目前各个图书馆的图书种类复杂,但在大多情况下,每个读者只借其中少量种类的图书,因此,在读者的借阅数据中找到具体图书之间的关联规则是比较困难的。
(2)关联规则是静态的。通过Apriori 算法挖掘出来的关联规则,在实际运用中都不进行更新处理,认为永恒有效的,而没有考虑到一段时间读者借阅的变化而影响到关联规则的产生。因此,从某种意义上来说,挖掘出来的静态关联规则不能反映出用户的兴趣变化。
考虑到目前关联规则存在的问题,本文试图通过加权方式来改善关联规则的推荐模式,为读者提供一个更加人性化的推荐。经过加权的关联规则,在长江师范学院图书馆(以下简称我馆)的应用中效果比较良好。
1 基于关联规则的模型优化
本文引入了一种新的加权方法来解决关联规则存在的两个问题。在此基础上,提出了基于关联规则的个性化推荐模型。
1.1 图书馆书籍管理模型解析
在现代图书管理系统中,每本书根据相应的分类法都对应一个分类号。我馆使用的分类法依据的是《中国图书馆分类法》,将图书分成22 个大类,每个大类再按不同的分类标准一级一级细分,从而形成了有级别、有层次又互相联系的众多类目。而每一个类目下面又用一组数字来表示该类目下更详细的分类,组合在一起就形成了图书的分类号,如我们可以用R318.01 来表示生物力学方面的图书。为了区分同一类图书,我们再采用书次号进行区分。把分类号和书次号两个部分结合在一起构成索书号。由于图书分类法采用层次结构方式进行划分的,我们可以对图书的具体分类号进行挖掘,找出更高层次的关联规则,从而能够为推荐出读者感兴趣的图书。
1.2 关联规则的描述
我们可以用下列符号对关联规则进行描述。
设I={i,i,…,i}为图书馆所有的图书集,也就是我馆存在图书的种类为n。其中i表示系统中第j 种图书,而C={c,c,…,c}表示该项目集中图书馆分类后的每一类图书,共有K 类。
设X、Y 是C 的子集,我们可以用R:X→Y 来表示用户的兴趣模型。而关联规则R:X→Y 的兴趣度用来表示用户模型的兴趣度。我们则可把关联规则的兴趣度(Interest)定义为:
从式1 可以看出,关联规则的兴趣度Interest(R:X→Y)是根据置信度产生。置信度就是抽样指标和总体指标的误差不超过一定范围的概率保证度。置信度(confidence)是同时借阅图书A 和借阅图书B 的读者人数占借阅图书A 的读者人数的百分比。即:
如果用户对某种书籍的兴趣度越大,根据关联规则挖掘出来的兴趣度就会越大。而挖掘出来的兴趣度越大的规则,它的实际利用价值就越大。
1.3 改进的关联规则策略
关联规则算法虽然能在一定程度上解决好读者推荐模型,但它也存在一些不足,最严重的就是它是一种静态的方式,一次关联规则进行挖掘之后,便永久地使用。这种方式完全不适合图书馆的发展,也不适合高校的发展。我们刚开始使用这种静态的推荐模式推出的图书效果非常好,但随着读者兴趣的转移,这种静态的推荐模式做出的推荐就会产生偏差。因此,我们需要把这种推荐模式进行改进。本文通过对数据挖掘结果进行加权,得到一种新的加权数据,然后依据该数据进行推荐。根据挖掘出来的规则如果在当前表现得很强,我们就可以将该规则的权值增大;而如果在当前表现得很弱,我们就可以将权值减小。因此,我们根据该方法所获得的规则将跟随着我们设定的权值变化而变化,从而在结果中表现出一种动态的特性。
我们先假设原读者借阅数据为D,新获取的借阅数据为NewD。利用原读者借阅数据挖掘出来的结果为RuleSet,新获取的读者借阅数据挖掘出来的结果为NewRuleSet。我们比较RuleSet 和NewRuleSet 这两个关联规则集,会出现以下三种情况。
(1)RuleSet 没出现。如果R:X→Y∈RuleSet,并且R∉NewRuleSet,表明该规则在目前表现得不活跃,在前期表现得相对活跃一些,对于这种情况,我们就应该不断地减小它的推荐度Recommend。所以应该将值更新为:
C 取值范围为0〈C〈1;
(2)NewRuleSet 出现。如果R:X→Y?RuleSet,并且R∈NewRuleSet,表明该规则在前期的挖掘中表现得不活跃,而在目前才表现得活跃起来,对于这种情况,我们应该适当地增加其推荐度Recommend 值。所以应该将值更新为:
C 取值范围为0〈C〈1;
(3)规则重复出现。如果R:X→Y∈RuleSet,并且R∈NewRuleSet,表明该规则一直都表现得非常活跃,对于这种情况,我们应该增加规则的推荐度Recommend。所以应该将值更新为:
C 取值范围为0〈C〈1;
1.4 三种推荐策略
到目前为止,我馆经历了三种推荐策略进行图书推荐,①根据读者的借阅数据直接提供借阅量最高的N 种图书在图书馆的推荐模块上;②根据关联规则挖掘出来的用户兴趣度相关结果提供在图书馆的推荐模块上;③按照前面介绍加权模式进行推荐。在本实验过程中,我们按照三种推荐模式各推荐出5 种图书。
2 实验结果分析
实验数据为我馆2011年2月至2011年12月份。读者借阅数据,共有57 821 条,涉及读者4 833 人。数据采集之后,就需要对采集到的数据进行预处理,为后面的数据挖掘时提供干净的数据源,然后通过挖掘工具Spss 的Apriori 算法对数据进行挖掘,挖掘出关联结果。在推荐策略上,我们采用了三种方式进行比较:一种是直接向读者推荐出最畅销的N 种书目,我们记为Best;第二种我们采用挖掘出来的用户兴趣度最高的N 种书目,记为Interest;而第三种推荐策略则采用本文提出来的加权策略推荐的方式,记为:Weighing。对于每种推荐策略的好坏,我们采用对推荐书目的命中率来评价推荐书目的优劣,命中率的计算公式如下:
N 表示推荐的书目数,而Nhit 表示读者感兴趣的推荐书目数。
对于命中率,我们采用按月进行统计分析,最后得到的结果如表1 所示。
表1 三种推荐模式三至六月份统计表
三种推荐模型的命中率平均值为:
HitRateB=0.302+0.289+0.307+0.266/4=0.291
HitRateI=0.324+0.343+0.319+0.331/4=0.329
HitRateW=0.373+0.368+0.374+0.403/4=0.380
从表1 和三种推荐模型的命中率的平均值我们可以得出:加权的关联规则挖掘技术的推荐模型较最畅销推荐模型以及采用用户兴趣度最高推荐模型推荐的图书方式有了比较明显的进步。其主要原因在于:三种推荐方式与用户的兴趣及时更新有很大的关系。最受欢迎的推荐模式没有根据用户的兴趣度进行推荐,只是按照读者的借阅排行榜进行无针对性的推荐,因此,推荐的效果相对来说是最差的一种。而基于数据挖掘用户兴趣度的推荐模型,虽然能根据用户的兴趣度来进行推荐,由于用户的兴趣可能随着时间的推移而改变,该模型不能及时反映出用户的兴趣的改变,从而进行了无效的推荐,所以推荐的效果也不太理想。而本文提出的基于关联规则的加权模型它能根据用户的兴趣而及时更新推荐书目,集中地推荐出了在现阶段用户感兴趣的图书,从而提高了推荐的命中率。
从上面的实验及分析可以看出:本文提出加权模型在目前来看能够较好地满足图书馆用于读者的个性化的推荐需求,而且比较方便。随着关联规则的发展,我们在以后的工作中,需要对系统做进一步的改进:①对数据挖掘的算法进行改善,使得数据挖掘出来的结果更加准确,从而使推荐的结果更加精确;②更改推荐模式,让推荐模式更适合现代读者的个性化的习惯,吸引读者访问图书馆。
1 Agrawal R,Imiclinski T,Swami A. Mining Association Rules Between Sets of Items in Large Databases [J]. Proceedings of the 1993 ACM SINMOD Conference. Washington,DC,1993(5):207~216
2 Agrawal R,Imiclinski T,Swami A.Database Mining: A performance perspective [J].IEEEE Trans. Knowledge and Data Enginnering,1993(5):914~925
3 Agrawal R,Stikant R.Fast Algorithm for Mining Association Rules in Large databases[M].IBM Almaden Research Center,1994,35~60
4 陈力,等.关联规则在提高图书馆服务质量中的应用[J].情报杂志,2008(2):145~150
5 翟海军.面向Web 信息检索的知识挖掘[D].合肥:中国科学技术大学,2010(10):18~20
6 刘斌. 关联挖掘在高校图书馆借阅数据分析中的应用[J].蚌埠学院学报,2012(4):12~16