一种改进Apriori的个性化信息推荐算法

来源 :电脑知识与技术·学术交流 | 被引量 : 0次 | 上传用户:wujie1983
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:对现有的Apriori算法进行改进,用分治策略引入哈希技术的方法完成了压缩侯选集,减少频繁扫描数据库的次数,克服了原有关联规则的数据挖掘算法生成频繁集比较大,且需要反复扫描数据库的问题。
  关键词:Web数据挖掘;网站个性化信息推荐;关联规则
  中图分类号:TP301文献标识码:A文章编号:1009-3044(2008)24-1265-02
  A Personalized Information Recommendation of Improved the Apriori Algorithm
  YANG Jie
  (Zhejiang Financial Professional College, Hangzhou 310020, China)
  Abstract: This paper improved the apriori algorithm, complete the compress reserve by introducing the Hash technoloy, reduce the times of scanning the data base,overcome the problem that the data mining algorithm about association rules produce the big frequency collection and scan the database again and again.
  Key words: web data mining; web personalized information recommendation; association rules
  
  1 引言
  
  随着网络信息技术的快速发展,网络中的信息量越来越大,Internet出现了“信息爆炸”的现象。在这种背景下,用户可能在花费了大量的时间后依然无法获取自己所需的信息资源,即产生“信息迷航”现象[1-4]。因此,通过识别不同用户的需求特点,以此采用个性化的服务策略和方式,将很好解决这个问题。
  
  2 Apriori算法
  
  Apriori等在1993年设计了一个基本算法Apriori[5],提出了挖掘关联规则的一个重要的基于两阶段频集思想的方法,是最典型的层次算法,是布尔关联规则采掘算法中最成功的一类算法。其核心技术为其它各类布尔关联规则采掘算法所广泛采用。算法的思想是:如果说S是频繁项集,对于S的任意非空子集L,我们就可以通过计算可信度,也就是:conf support(S)/support(L),并通过conf≥miniconf(最小可信度)来确定规则L→(S-L)是否确立(该规则由于S是频繁项集故肯定具有最小支持度)。
  例如:ABCD是频繁项集,AB是它子集
  如果conf=support(ABCD)/support(AB)≥miniconf(最小可信度)
  那么规则AB→CD是成立的,否则不成立。
  具体到页面会话中,S是频繁项集即S中的页面是一次访问中经常同时访问的页面,而访问序列中最后的一个页面往往是用户的访问目的。所以用频繁项集产生所需的规则时,主要导出S的前n-1个页面到最后一个页面的规则,如果此规则满足最小可信度,将此规则存入模式库中。
  
  3 Apriori算法的改进
  
  从Apriori算法的思路中可以看出,当有相当数量的频繁1项集,Apriori会产生大量的候选集,而且可能需要重复的扫描数据库,这无疑降低了算法的效率,本文提出的算法是通过分治策略引入哈希技术来改进产生频繁项目集,并且用数据查询语言实现关联规则挖掘算法。要得出用户的频繁访问路径,如果用户每次访问的最大向前引用都很长的话,那就需要生成若干的k项集,产生大量的候选项目集,每次需要重复的多次的扫描同一个事务库,我们提出一种改进策略。为了讨论方便,这里对I中的每个项目用其项目编号来代替。和前面一样,把所有频繁k项目集的集合记为Lk,比如L1为所有频繁1项目集的集合。这里我们假定交易数据库中的交易以及在算法中出现的任一个项目集中的项目都是按照项目编号顺序排好的。在后面的算法中,我们容易看到,只要保证开始时也就是2项目集中的项目是有序的,那么算法的执行将自动保证任一个项目集也是有序的。
  通过利用哈希技术通过构建一个相当小的C2以产生更小的L2来导出C3。如果C2很庞大,数据库就不能有效修剪。此步之后,Li的大小随i值的增大迅速减小,从而导致很小的Li 1,这样对应的开销就小得多,极大的提高了整个过程的执行效率。
  哈希表的优点就是避免反复查找的过程,通过定址的方法直接找到要查找的数据,通常通过设计一个哈希函数,它是一个映象,只要使得任何关键字由此所得的哈希函数值都落在表长允许范围之内就可以。基本思路如下:
  1) 和Apriori的思想一样,首先生成候选1—项目集Cl。算法简单地扫描事务数据库,对每一个项目计数。
  2) 设定最小事务支持数(即min_support),可以由存储过程来计算,也可以由用户自己指定。确定频繁1—项目集的集合L1,如下表。频繁项目集L1中的任何一个业务都大于或等于最小支持度。
  3) 产生候选2—项目集。算法使用L1∞L1产生候选项目集C2。C2中的每一个项目集是对两个属于L1的频繁项目集做一个连接来产生的。
  4)扫描事务数据库,计算C2中每个候选项目集的支持数,用一个临时表存放C2。
  5) 选出事务中每个业务不小于最小支持度的事务,从而确定频繁2项目集的集合L2,并计算其事务对应的哈希函数与项目数2组合。
  6) 产生3项候选集的集合C3,利用Apriori算法的特点,采用剪枝技术,删除所有其子集不是频繁项目集的候选项目集,从而大大缩减了3项候选集的大小,为生成频繁项目集L3提高效率。
  7) 生成频繁3—项目集L3,计算每条事务的支持数。
  8) 如此循环下去,不断生成候选集,再由此生成频繁项目集,直到候选项为空。
  运用哈希算法主要是为生成下一个候选集过滤掉不需要得项目集。当扫描数据库来计算候选k项集得支持度得时候,运用哈希技术来预先存储(k 1)项候选集,也就是经过一些修剪后把所有可能的(k 1)项集hash在一个hash表中。Hash表中每个hash单元由一个数字组成,该数字代表迄今有多少项集被hash到该单元。位矢量是基于hash表构造的,如果Hash表中相应的数目的个数大于或者等于s的话,对应的位的值就设为1,否则为0。
  
  4 实验分析
  
  图1用实例对Apriori算法进行分析。第一次迭代中,Apriori算法简单的扫描所有事务,计算每一项的出现次数,得到了候选1项集Cl,假设事务的最小支持度为2,那么频繁1项集L1,就由满足最小支持度要求的候选1项集构成。Apriori算法利用L1∞L1生成候选集C2。接下来,扫描数据库中10个事务,计算C2中每个候选集的支持度。然后,基于C2中每个候选2项集的支持度可以确定频繁2项集L2。候选集C3由L2产生,过程如下:L2中具有相同第一个项目的两个频繁2项集{AB}和{AC}首先识别出来。接着,Apriori检查由前面两个项目{AB}和{AC}组成的2项集{BC}是否构成一个频繁2项集。因为{BC}本身是一个频繁2项集,于是可以得到{ABC}的所有子集都是频繁的,于是{ABC}成为一个候选3项集。同理可得{ABE}也是一个候选3项集。这就是利用上文所说的Apriori性质进行连接和剪枝的过程。从L3中无法构造候选4项集,此时算法终止。
  从这个算法的过程来看,产生尽可能小的候选集Ci是很重要的,因为在扫描整个数据库的过程中要计算Ci中每一个项目的支持度。
  
  图2给出一个具体应用哈希思想的例子。构造哈希表的目的就是通过散列技术来压缩候选集,那么哈希表的构造方法在一定程度上决定了散列的效果。本文采用了除留取余法构造hash函数:(x*factor y) mod hashtblsize。显然,两个未定的参数:hash表的表长和factor系数是决定散列效果的重要因素。因为,如果哈希表的表长较小,那么散列的结果就是哈希表的每个bucket中都有多个候选集,如果每个bucket的计数都大于最小支持度,那么哈希表无法过滤掉任何一项,那么它不但没什么压缩过滤作用,而且构造的过程还消耗了时间。而factor系数是个不确定的因素,例如,我们取x=3,y=2,当hashtblsize=10的时候,无论factor取10, 20, 30结果都相同,而当hashtblsize=20的时候,结果就会产生差异。在实验分析一节我们通过实验对相同测试集,在相同最小支持度,不同表长的情况下,运用该算法产生的相关结果进行分析,比较结果,我们可以得到,当hash的表长越长时,散列的效果越好。而且我们验证了这样的结论:初始候选集的生成,尤其是频繁2项集,是提高关联规则挖掘效率的关键。用hash表有效的生成频繁2项集提高了算法效率。
  
  5 结束语
  
  针对目前关联规则的经典算法产生的侯选集较大、需要扫描的数据量较多的现状,利用哈希技术和分治结合的方法,对现有Apriori算法进行改进,实现提高挖掘效率,提高给出推荐页面的速度的目的。
  
  参考文献:
  [1] 汪晓岩,胡庆生,庄镇泉. 基于关联规则挖掘的个性化智能推荐服务[J]. 计算机科学,2002,29(7):63-65.
  [2] 徐宝文,张卫丰. 数据挖掘技术在Web预取中的应用研究[J]. 计算机学报,2001,24(4):89-91.
  [3] 许兆新,周双娥,郝燕玲. 最优关联规则的形式和挖掘思想的研究[J]. 计算机工程与应用,2001,37(20):118-119.
  [4] 王运峰,张蕾. 数据库中关联规则的并行挖掘算法[J]. 计算机工程与应用,2001,37(16):99-100.
  [5] 张仁平,卜淮原. 关联规则挖掘快速更新算法的研究和实现[J]. 计算机工程与应用,2001,37(6):101-103.
其他文献
摘要:C语言是一门典型的结构化程序设计语言,很多高校将其定为编程入门语言。时常会听到有学生抱怨C语言难学,难懂,难用,在解决实际问题编制应用软件时往往无以下手,缺乏编程和调试的能力。如何更好地开展C语言课程的教学呢? 本文就C语言教学中存在的问题,进行了相关的教学研究,提出了相应的看法,以促进C语言教学。  关键词:教学方法;教学模式;思维训练;自学能力  中图分类号:G642文献标识码:A文章编
随着现代科学和信息技术的发展,网络媒体成为人们阅读、写作的新媒介。近年来,越来越多的汉语言文学在网络上通过新的媒介实现了进一步的传播和扩散。传统文学何去何从以及新时代背景下中国网络文学的发展成为人们不得不思考的问题。杭州师范大学中文系单小曦教授的《媒介与文学:媒介文艺学引论》一书从媒介传播的角度对中国现当代的文学艺术发展进行了研究,并结合现代网络传播媒介下文学艺术的传播情况,提出了独特的媒介文艺学
摘要:P2P蠕虫是利用P2P 机制进行传播的恶意代码。通过P2P节点的共享列表,蠕虫很容易获得攻击目标的信息,所以其爆发时传播速度很快,这种大量的快速传播导致的直接后果是网络阻塞。该文分析蠕虫在P2P 网络中的传播原理,在此基础上分析了蠕虫的防御措施。  关键词:蠕虫;P2P系统  中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2009)05-1066-02  Resear
摘要:Digital Rights Management(DRM)——数字版权管理,这个产业对于中国来说还是非常新的一个产业,特别是DRM技术在IPTV上面的应用目前还没有一个十分成熟的机制。本文首先对DRM进行了概述,介绍了目前IPTV DRM的背景,并根据IPTV DRM所特有的特点、风险,从而分析出IPTV DRM保证内容的安全的技术手段。针对当前国内IPTV的现状以及未来的发展,提出了IP
摘要:将MCU系统与无线射频芯片相结合可以实现对无线电表的控制和对电能数据的采集和传输。本文利用ADE7755作为电能计量芯片,并结合由MCU PIC18F4620和无线射频芯片CC2420组成的ZigBee无线传输网络,实现了基于ZigBee技术的无线抄表系统。  关键词:ADE7755;CC2420;ZigBee;无线抄表系统  中图分类号:TP393文献标识码:A文章编号:1009-3044
西南地区不仅有丰富的军事文化资源、红色文化资源和传统文化资源,更有让全军创作人羡慕的少数民族文化资源富矿。这里淳朴的民风、独特的地域文化和军区部队边防文化交融生辉,构成了一幅民族团结、鱼水情深的斑斓画卷。重视民族舞蹈创作,一直是军区文艺战线的光荣传统和鲜明特色,也是促进西南社会和谐与民族团结的艺术纽带。军区几代文艺工作者以青春和生命融入了这片土地,回望历史,我常常问自己为什么不能放下民族舞蹈的创作
《巨人的花园》是英国唯美主义作家奥斯卡·王尔德创作的童话作品,这篇文章文笔优美、故事温馨,得到了广泛的好评。文章被选人了人教版语文教材四年级上册。  一、体会语言之美  从前,一个小村子里有座漂亮的花园。那里,春天鲜花盛开,夏天绿树成荫,秋天鲜果飘香,冬天白雪一片。  这是课文开篇描写小村子里美丽的花园的一段文字。在教学中,教师可以向学生提出问题:“假如你看见一座美丽的花园,会如何用自己的语言来描
摘要:该文首先简要分析了Qtopia的实现技术和应用现状,然后详细论述了如何在基于s3c2440架构的开发板上移植Qtopia开发平台的过程,并结合项目需求介绍了Qtopia平台部分功能的完善。此外还介绍了MPlayer的移植过程,以及开发环境的搭建和若干开发实例。  关键词:Qtopia,嵌入式Linux,utu2440,MPlayer  中图分类号:TP316文献标识码:A文章编号:1009-
摘要:互联网的迅速发展,使如何采集和利用Web信息越来越受关注。该文提出了基于Web的信息采集系统的设计方案,并利用.Net技术与数据库技术,实现了对特定网站信息的采集与处理。  关键词:信息检索;正则表达式;ADO.NET  中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)16-21263-02  Design and Implementation of Inform
形式迁移写话教学模式是施茂枝教授“基于小学牛心理特点的写作教学序列与模式”中系列教学模式之一。其教学目标具体,评价标准明确,教学步骤清晰,教学策略可操作性强,是读写结合的典型样式。《为什么?》所提供的言语范式是教师“着意下水”的一首儿歌,是教师根据教学需要而精心写成的独特文本,在它和统编教材二年级下册第六单元写话例句主题的联合触发下,运用本模式引导学生写话,既可引导学生产生探索自然科学的兴趣和热爱