关联规则在高校图书管理中的应用研究

2010-10-16 01:51尹明灿
赤峰学院学报·自然科学版 2010年6期
关键词:项集关联性事务

尹明灿

(济宁学院 继续教育学院,山东 济宁 272000;聊城大学,山东 聊城 252059)

关联规则在高校图书管理中的应用研究

尹明灿

(济宁学院 继续教育学院,山东 济宁 272000;聊城大学,山东 聊城 252059)

关联规则分析是数据挖掘的一个非常重要的研究分支,其主要的研究目的是从大型数据集中发现隐藏的、有趣的、属性间存在的规律.本文在对数据挖掘相关技术、关联规则挖掘算法进行深入研究的基础上,探讨了关联规则在高校图书管理中的应用.

关联规则;高校图书管理;数据挖掘

1 关联规则的基本内涵

1.1 关联规则的基本概念

关联规则挖掘是发现大量数据中项集之间有趣的关联或相关联系.随着大量数据的收集和存储,人们希望从大量的数据中发现感兴趣的数据关联关系,从而帮助管理者进行决策的制订.关联规则发现的最初形式是零售商的货篮分析,即通过发现顾客放入其货篮的不同商品间的联系,分析顾客的购买习惯.在数据挖掘的研究中,关联规则研究开展得最广泛,应用也较早.

关联规则的定义:设 I={I1,I2,…,In}是所有项的集合,其中 Ik=(1,2,…,m)称为项,项的集合称为项集,包含k个项的项集称为k项集.一个事务T是一个项集它是I的一个子集,每个事务均与一个惟一标识符Tid相联系.不同的事务构成了事务集D,它构成了关联规则发现的事务数据库.如果项集X哿T,则称事务T支持(Support)项集X,也称事务T包含项集X.关联规则是这样一种形式的蕴涵:X圯T,其中 X奂T,Y奂I且 X∩Y=覫.

一般用4个参数来描述关联规则的属性.它们是支持度(Support)、可信度(Confidence)、期望可信度(Expected Confidence)和作用度(Lift).其中支持度和可信度能够比较直观地描述关联规则的性质.

1.2 关联规则的发现过程

货篮分析是关联规则的一种挖掘形式,实际的关联规则根据不同的标准也存在不同的类别.如单维关联规则和多维关联规则,比如前面例子果酱面包只涉及一个属性,就是单维关联规则;性别=“女”圯职业=“秘书”就是属于多维规则.根据层次关系又可分为单层的关联规则和多层关联规则.不论是属于哪类关联规则,关联规则的发现过程一般要经过以下步骤:

(1)数据准备

(2)确定最小支持度和最小可信度

(3)关联规则发现

(4)关联规则的解释

最小支持度和最小可信度的选择会直接影响到关联规则的挖掘,过大可能会漏掉有价值的规则,过小又可能会造成大量的无用规则产生、影响挖掘的效率.对关联规则的合理解释也是充分利用关联规则价值的关键所在.在关联规则的研究中,最著名的算法是Agrawal提出的Apriori算法,除此以外还有FP-growth方法、针对加权关联规则发现的MINWAL和DWAR算法等.

1.3 Apriori算法的基本思想

Apriori是由Rakesh Agrawal和 Rnamakrishnan Srikant在1994年提出的关联规则的经典算法,[1]它是所有关联规则挖掘算法的核心.Apriori算法将关联规则挖掘分解为两个子问题:

(1)求出事务数据库D中满足最小支持度minsup的所有频繁集;

(2)利用频繁集生成满足最小可信度minconf的所有关联规则;

寻找频繁集是关联规则发现的核心问题.包含k个项的项集称为k项集.若项集满足最小支持度,则称该项集为频繁项集(FreqentItemset),简称频繁集.频繁k项集通常记作Li.

具体做法是:第一步从候选1项集C1,中找出频繁1项集L1,然后利用LK-1;连接产生候选CK,并根据Apriori的性质删除那些具有非频繁子集的候选项集.扫描事务数据库,统计候选项集的支持计数,与最小支持计数相比,形成频繁项集LK.直至找到所有频繁项集.

从Apriori算法的步骤中可以发现,在产生候选项集时,可能会产生大量的候选集,当长度为1的频繁集有10000个时,长度为2的候选集数将会超过1000万.同时由于需要计算项集的支持度,会反复扫描事务数据库D,增加了系统的1/O开销.因此出现了许多改进的方法,如基于散列的优化方法DHP算法、基于减少事务个数的方法AprioriTID方法、基于数据库分割的方法等.

2 关联规则在高校图书管理系统中的应用

图书的关联性挖掘目的是试图寻找学生借阅图书的某种潜在的规律,比如学生借阅《计算机等级考试》时,一般都会同时借阅上机模拟试题和笔试模拟试题.这是一般人们都能够估计到的规律,然而在实际的借阅情况中,是否还存在我们不太了解的规律呢,通过关联规则就能发现那些容易被人们忽略的潜在规律.图书之间的关联性能够帮助管理人员了解学生的借阅兴趣,并且能够在个性化服务方面得以实际的应用.

图书间具有一定的关联性,不仅要寻找那些借阅频率较高的图书间的关联性,而且应该对图书进行分类的关联规则挖掘,找到同类图书之间的关联性.学生的阅读兴趣往往与他的专业相关,因此发现某类图书间的关联关系可能比不进行分类的关联性更加有价值.因此在实现过程中,图书的关联性挖掘从两个方面进行挖掘,一是不进行分类的挖掘,二是根据中国图书分类法,对每一大类图书进行挖掘.挖掘得到的结果都存储在规则表中.

图书关联规则发现的实现过程:

2.1 生成事务集

扫描学生的借阅记录LEND_DATA,形成每个学生的借阅集合,集合中包括该学生所有借阅的图书MARC_REC_NO,这个集合就形成了图书关联规则发现的事务集.在事务集形成过程中,针对下面的两个问题,提出了具体的解决方案.[2]

(1)有的学生重复借阅了某一本书,因此有可能在集成的过程中,生成的借阅集合有重复项,这会影响关联规则的挖掘.在事务集生成过程中,将重复借阅的记录只保留一条.

(2)在实际的图书关联规则挖掘中,有很多借阅频率较低的图书不可能出现在关联规则中,这是因为它们的支持度很低,因此在实际的挖掘中,为提高挖掘效率,应事先去掉这些记录.具体的解决方式,采用先计算所有图书的借阅次数,按从高到低进行排序,根据挖掘的需要,选择前若干本图书生成的事务集进行挖掘.这样生成的事务集具有两个优点:一是不需要再进行频繁1-项集的生成,直接利用统计表中的数据;二是事务集中的事务项均是支持度较高的项,因此减少了扫描事务所耗费的时间.

事务集的生成通过事务集Bean,createApData来完成.主要代码如下:

若进行图书的分类关联规则挖掘,则生成的事务集应只包含某类图书的项集,在进行事务集生成时,根据中国图书分类法的分类原则,选择那些满足类别的图书借阅记录.

2.2 设置最小支持度和最小可信度

关联规则是满足最小支持度和最小可信度的频繁集,因此最小支持度和最小可信度的设置将直接影响到关联规则的发现.最小支持度和最小可信度设置值太小,会产生一些没有实际价值的关联规则,设置值太大,挖掘不到结果.因此最小支持度和最小可信度的设置需要根据实际研究的数据集来给定.根据前面聚类分析的结果,对图书的借阅情况有了比较详细的了解,有助于设置这两个关键值.最小支持度的设置应根据图书聚类分析的结果和生成事务集的大小来设置,假设由图书聚类结果分析可知,前100本图书的平均借阅次数为100次,生成的事务集大小为2000,则图书的平均支持度=100/2000=0.05,若设置的最小支持度远大于0.05,则很难挖掘到结果.因此最小支持度和最小可信度应根据实际情况来合理设置.

2.3 关联规则发现——改进的Apriori算法

根据改进的Apriori算法进行关联规则的发现将得到的关联规则存储至规则表RULES.实现代码如下:

2.4 关联规则结果输出

关联规则结果是项集的形式,需要将结果与实际的数据结合,给用户显示一个具有实际意义的结果,同时提供给管理员,进行筛选,将实际使用价值不大的结果剔除.以方便在个性化服务中的使用.

3 结论

本文对关联规则挖掘的理论进行研究,选择Apriori[3]算法作为主要研究对象[4].在研究的基础上,提出了改进的Apriori算法,提高了产生频繁集的效率.在java环境下实现了两个算法.利用图书管理系统中的图书借阅数据,进行了关联规则的挖掘实验,分析了两个算法的优劣.验证了算法的正确性.并对关联规则产生的结果进行了解释.

〔1〕王创新.关联规则提取中对Apriori算法的一种改进[J].计算机工程与应用,2004,40(34):83-85.

〔2〕张翼.协同过滤技术在个性化图书馆中的应用研究[D].上海:复旦大学,2005.

〔3〕徐章艳.Apriori算法的三种优化方法[J].计算机工程与应用,2004,40(36):190-193.

〔4〕王玉清,李月华,巩政等.图书馆计算机管理集成系统设计与实现 [J].内蒙古大学学报,1997,128(5):720-727.

G251

A

1673-260X(2010)06-0171-03

猜你喜欢
项集关联性事务
基于分布式事务的门架数据处理系统设计与实现
河湖事务
不确定数据的约束频繁闭项集挖掘算法
四物汤有效成分的关联性分析
如何准确认定排污行为和环境损害之间的关联性
CRP检测与新生儿感染的关联性
关于矩阵的关联性
SQLServer自治事务实现方案探析
移动实时环境下的数据一致性研究
一种新的改进Apriori算法*