CN103176976A - 一种基于数据压缩的改进的Apriori算法 - Google Patents
一种基于数据压缩的改进的Apriori算法 Download PDFInfo
- Publication number
- CN103176976A CN103176976A CN2011104305289A CN201110430528A CN103176976A CN 103176976 A CN103176976 A CN 103176976A CN 2011104305289 A CN2011104305289 A CN 2011104305289A CN 201110430528 A CN201110430528 A CN 201110430528A CN 103176976 A CN103176976 A CN 103176976A
- Authority
- CN
- China
- Prior art keywords
- key
- database
- map
- apriori algorithm
- algorithm
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种基于数据压缩的改进的Apriori算法,包括步骤:判断数据库中的事物记录条数N大于该数据库中所有数据项的所有可能的组合数M时,生成数据库项与该数据项数量的映射表DB_Map_Table;将该映射表DB_Map_Table中的所有健值对<key,value>按照key的大小升序排列;使用Apriori算法生成I(I>2)项候选集时,判断将要合并的两个频繁集中不同的项所组成的二项集是否为2项频繁集的子集,如果是,则将将要合并的两个频繁集的合集加入候选集。本发明的效果在于,减小了原有事务数据库的大小,减少了数据库的扫描次数,减少了算法运行过程中候选集的生成,从而在保证算法正确的同时有效地提高了算法的速度和效率。
Description
技术领域
本发明涉及对一种Apriori算法的改进算法。
背景技术
关联规则挖掘用来发现大量数据中项集之间的有趣的关联或相关联系,它在数据挖掘中是一个重要的课题,最近几年已被业界所广泛研究。关联规则挖掘的一个典型例子是购物篮分析。关联规则研究有助于发现交易数据库中不同商品(项)之间的联系,找出顾客购买行为模式,如购买了某一商品对购买其他商品的影响。分析结果可以应用于商品货架布局、货存安排以及根据购买模式对用户进行分类。
Agrawal等于1994年提出了一个挖掘顾客交易数据库中项集间的关联规则的重要方法Apriori,其核心是基于两阶段频繁集思想的递推算法。该关联规则在分类上属于单维、单层、布尔关联规则。
该算法的基本思想是:首先找出所有的频繁项集,这些项集出现的频繁性至少和预定义的最小支持度一样。然后由频繁集产生强关联规则,这些规则必须满足最小支持度和最小可信度。一旦这些规则被生成,那么只有那些大于用户给定的最小可信度的规则才被留下来。为了生成所有频繁项集,使用了递推的方法。Apriori的总体性能由第一步决定,第二步相对容易实现。
传统的Apriori算法具有两个主要的缺陷:
1.会产生大量的候选集;
2.会重复地扫描数据库;
为解决上述问题,本发明利用数据库中数据的特点,提出一种基于数据压缩的Apriori算法的改进算法,同时在候选集的选择上进行预先判断,以减少所产生的候选集的数目。
本发明的再一目的是减少扫描数据库的次数,以提高查询的速度。
发明概述
为了实现上述目的,本发明采用了压缩数据库的办法。设有由m个项{I1,I2...Im}组成的数据集合,数据库中的每一项均由该集合中的元素组成,即Tk={I1,I2...Ij},数据库共包含N条事务记录,数据库中所有组合的总数为:
当N>M时,对数据库进行压缩,提取出数据库中的有效信息,生成数据库项和该数据项数量的映射表DB_Map_Tbale,映射函数为H(key)。这里引入转换函数f(X),F(X)的作用是将数据库项转换为DB_Map_Tbale中该项对应的键值。如:
对于Tk={I1,I2...Ij}
F(Tk)=keyk
进一步,对DB_Map_Tbale中内容排序,将该映射表DB_Map_Table中的所有健值对<key,value>按key的大小升序排列,即KEY={key1,key2,...keym},key1<key2<...<keym。
进一步,使用Apriori算法,由n--1项频繁集合并生成n项候选集In(n>2)。每次从n-1项频繁集中选出没有合并过的两个频繁集IX,IY,如果IX,IY这两个集合的前n-2项相同,第n-1项不同,则它们符合原始算法的合并条件。本发明在此基础上额外加入新的判断条件,判断将要合并的两个频繁集IX,IY中不同的两项ix,iy所组成的2项集ixy={ix,iy}是否是2项频繁集IF的子集,若则将IX∪IY加入候选集的集合In中。
根据Apriori算法的原理,当在第一个阶段要计算每一个候选集合Ik={I1,I2...IX}的支持度sup(Ik)时,从处开始顺序扫描DB_Map_Tbale,引入函数d(keyI),
d(keyI)=I={I1,I2,...Ix}
那么
本发明的优点在于,减小了原有事务数据库的大小,减少了数据库的扫描次数,减少了算法运行过程中生产的候选集的数量,从而在保证算法正确的同时有效地提高了算法的速度和效率。
附图说明
图1是根据本发明的生成DB_Map_Tbale的流程图;
图2是根据本发明的利用DB_Map_Tbale计算支持度的流程图;
图3显示的是本发明的算法与已有算法执行时间的比较;
图4显示的是使用了Apriori性质进一步验证后生成的候选集的数量。
具体实施方式
以下将对本发明的实施进行详细描述。
图1根据本发明的生成DB_Map_Tbale的流程图,具体步骤如下:
1)设置长度为m的bitmask=<0000...0>;
2)扫描数据库,顺序读取数据库的每一项,对读取的数据库的项,Tk={Ix,IY,...Iz}调用f(X),将bitmask=<0000...0>对应的x,y,...z位设置为1,生成Tk对应的bitvector=<01x....1y..1z0>;
3)bitvector=<01x....1y..1z0>转化为对应的十进制键值keyk;
4)调用count=H(keyk),若返回的结果为0,则H(keyk)=1,若返回值大于0,H(keyk)=count+1;
5)当扫描完整个数据库后,对DB_Map_Tbale按照key的大小按升序排序,至此生成DB_Map_Tbale的过程结束。
图2是根据本发明的利用DB_Map_Tbale计算支持度的流程图,具体步骤如下:
1)对于候选集Ic={Ix,Iy,...Iz},调用f(X),生成keyc,
sup(Ic)=sup(Ic)+H(key)
4)当到达DB_Map_Tbale末尾时,此过程结束。
数据库经过去重压缩处理之后,数据库的信息被无损地保存在DB_Map_Tbale,这种方式可减少数据库的操作次数,提高算法的效率。使用映射表进行存储,可提高存储空间的利用效率,同时借助key在DB_Map_Tbale中递增排列的特点,在求某一个候选集的支持度时,可以不用遍历整个DB_Map_Tbale,仅从包含该候选集的最小单元开始遍历DB_Map_Tbale即可,这样可以降低查询操作的时间复杂度。而通过利用Apriori性质,本发明的算法可有效减少生成的候选集的数量。
在对本发明算法的仿真过程中,数据集包含46243条数据记录,包含13个不同的单元项。图3显示的是改进后的算法与原有算法执行时间的比较,横轴表示支持度,纵轴表示算法的执行时间。图4显示的是在使用了Apriori性质进一步验证后,生成的候选集的数量,这里以三项候选集为例,其中横轴表示支持度,纵轴表示生成三项候选集的数量。
虽然已经结合具体实施方式对本发明的基于数据压缩的Apriori算法的改进算法进行了说明,但是本发明不限于此。在本发明的精神和原理下做出的各种变型均应包含在本发明的权利要求书限定的范围之内。
Claims (4)
2.根据权利要求1的基于数据压缩的改进的Apriori算法,其特征在于生成所述映射表DB_Map_Table的过程包括以下步骤:
设置长度为m的bitmask=<0000...0>;
顺序读取数据库的每一项,对于所读取的数据库的项Tk={Ix,Iy,...Iz},调用f(X),将bitmask=<0000...0>对应的x,y,...z位设置为1,生成Tk对应的bitvector=<01x....1y..1z0>;
bitvector=<01x....1y..1z0>转化为对应的十进制键值keyk;
调用count=H(keyk),若返回的结果为0,则H(keyk)=1,若返回值大于0,H(keyk)=count+1;
重复以上步骤直至扫描完整个数据库。
3.根据权利要求1或2的基于数据压缩的改进的Apriori算法,其特征在于还包括:引入函数d(keyI),d(keyI)=I={I1,I2,...Ix},并且根据公式 计算每个候选集合的支持度。
4.根据前述权利要求之一的基于数据压缩的改进的Apriori算法,其特征在于还包括:使用Apriori算法生成I(I>2)项候选集时,判断将要合并的两个频繁集IX,IY中不同的两项ix,iy所组成的2项集ixy={ix,iy}是否是2项频繁集IF的子集,若则将IX ∪IY加入候选集的集合In中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110430528.9A CN103176976B (zh) | 2011-12-20 | 2011-12-20 | 一种基于数据压缩Apriori算法的关联规则挖掘方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110430528.9A CN103176976B (zh) | 2011-12-20 | 2011-12-20 | 一种基于数据压缩Apriori算法的关联规则挖掘方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103176976A true CN103176976A (zh) | 2013-06-26 |
CN103176976B CN103176976B (zh) | 2016-01-20 |
Family
ID=48636858
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110430528.9A Expired - Fee Related CN103176976B (zh) | 2011-12-20 | 2011-12-20 | 一种基于数据压缩Apriori算法的关联规则挖掘方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103176976B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103593400A (zh) * | 2013-12-13 | 2014-02-19 | 陕西省气象局 | 一种基于改进Apriori算法的雷电活动数据统计方法 |
CN105631709A (zh) * | 2015-12-26 | 2016-06-01 | 深圳大学 | 一种购物篮分析方法及系统 |
CN105930104A (zh) * | 2016-05-17 | 2016-09-07 | 百度在线网络技术(北京)有限公司 | 数据存储方法和装置 |
CN109542908A (zh) * | 2018-11-23 | 2019-03-29 | 中科驭数(北京)科技有限公司 | key-value数据库中的数据压缩方法、存储方法、访问方法和系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1938702A (zh) * | 2004-04-27 | 2007-03-28 | 诺基亚公司 | 计算机化系统中的数据处理 |
CN101655857A (zh) * | 2009-09-18 | 2010-02-24 | 西安建筑科技大学 | 基于关联规则挖掘技术挖掘建设法规领域数据的方法 |
US20100125608A1 (en) * | 2008-11-19 | 2010-05-20 | Electronics And Telecommunication Research Institute | Rotation based transformation method and apparatus for preserving data privacy |
-
2011
- 2011-12-20 CN CN201110430528.9A patent/CN103176976B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1938702A (zh) * | 2004-04-27 | 2007-03-28 | 诺基亚公司 | 计算机化系统中的数据处理 |
US20100125608A1 (en) * | 2008-11-19 | 2010-05-20 | Electronics And Telecommunication Research Institute | Rotation based transformation method and apparatus for preserving data privacy |
CN101655857A (zh) * | 2009-09-18 | 2010-02-24 | 西安建筑科技大学 | 基于关联规则挖掘技术挖掘建设法规领域数据的方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103593400A (zh) * | 2013-12-13 | 2014-02-19 | 陕西省气象局 | 一种基于改进Apriori算法的雷电活动数据统计方法 |
CN105631709A (zh) * | 2015-12-26 | 2016-06-01 | 深圳大学 | 一种购物篮分析方法及系统 |
CN105930104A (zh) * | 2016-05-17 | 2016-09-07 | 百度在线网络技术(北京)有限公司 | 数据存储方法和装置 |
CN105930104B (zh) * | 2016-05-17 | 2019-01-18 | 百度在线网络技术(北京)有限公司 | 数据存储方法和装置 |
CN109542908A (zh) * | 2018-11-23 | 2019-03-29 | 中科驭数(北京)科技有限公司 | key-value数据库中的数据压缩方法、存储方法、访问方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103176976B (zh) | 2016-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Raorane et al. | Association rule–extracting knowledge using market basket analysis | |
CN106844787A (zh) | 一种为汽车行业寻找目标用户并匹配目标产品的推荐方法 | |
CN107066476A (zh) | 一种基于物品相似度的实时推荐方法 | |
CN103391302B (zh) | 一种信息发送的方法及系统 | |
CN101968806A (zh) | 数据存储方法、查询方法及装置 | |
CN105138690B (zh) | 确定关键词的方法和装置 | |
CN103744904B (zh) | 一种提供信息的方法及装置 | |
CN104615779A (zh) | 一种Web文本个性化推荐方法 | |
CN110335123B (zh) | 基于社交电商平台的商品推荐方法、系统、计算机可读介质以及装置 | |
CN105320719A (zh) | 一种基于项目标签和图形关系的众筹网站项目推荐方法 | |
CN113159892B (zh) | 一种基于多模态商品特征融合的商品推荐方法 | |
CN109727078A (zh) | 一种基于商品类别树的销量预测修正方法 | |
CN106127493A (zh) | 一种分析用户交易行为的方法及装置 | |
CN100354864C (zh) | 数据挖掘中一种基于混合互信息的特征选择方法 | |
CN103176976B (zh) | 一种基于数据压缩Apriori算法的关联规则挖掘方法 | |
Mesforoush et al. | Customer profitability segmentation for SMEs case study: network equipment company | |
CN107870956A (zh) | 一种高效用项集挖掘方法、装置及数据处理设备 | |
CN104915440A (zh) | 一种商品排重方法和系统 | |
CN113487117A (zh) | 一种基于多维度用户画像的电商用户行为数据模拟的方法及系统 | |
Cho et al. | Mining association rules using RFM scoring method for personalized u-commerce recommendation system in emerging data | |
Prasad et al. | Frequent pattern mining and current state of the art | |
CN107609110B (zh) | 基于分类树的最大多样频繁模式的挖掘方法及装置 | |
CN112784064B (zh) | 一种面向社交网络的层次化超维知识图谱构建方法 | |
Wu et al. | Modeling and imputation of large incomplete multidimensional datasets | |
CN102789615A (zh) | 图书信息关联推荐方法、服务器及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160120 Termination date: 20181220 |