一、概述
本篇博文主要阐述数据挖掘相关的关联规则挖掘的算法(Apriori算法)。主要介绍关联规则的基本概念、Apriori算法原理和Apriori算法实例,文章末尾处附加Apriori算法源程序。
二、关联规则挖掘的基本概念
关联规则挖掘发现大量数据中项集之间有趣的关联关系。如果两项或者多项属性之间存在关联,那么其中一项的属性可以依靠其他属性值进行预测。
关联规则挖掘问题可以分为两个子问题:1、找出事物数据库中所有大于等于用户指定的最小支持度的数据项集;2、利用频繁项集生成所欲需要的关联规则,根据用户设置的最小置信度进行取舍,最后得到强关联规则。
2.1、项与项集
数据库中不可分割的最小单位信息称为项,用符号i表示。项的集合称为项集,用 I 表示。项集的个数为k称为k-项集。比如,集合{啤酒、尿布、奶粉}称为3-项集。
2.2、事物
事物数据库T={t1,t2,t3,....,tn}是由一系列具有唯一标识的事务组成的。每个事务ti(i=1,2,3,4,5....,n)包含的项集都是I的子集。
2.3、项集的频数(支持度计数)
包括项集的事务个数称之为项集的频数(支持度计数)
2.4、关联规则
关联规则x==>y 的蕴含式。其中x,y都是I的真子集,并且x∩y=∅。x称之为前提,y称之为结果。关联规则反应x中的项目出现时,y中项目也跟着出现的规律。
2.5、关联规则的支持度(support)
关联规则的支持度是交易集中同时包含x和y的交易数和所有交易数之比。它反应了x和y中所包含的项在事务集中同时出现的概率,support(x==》y&