数据挖掘实验三报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验三:基于Weka 进行关联规则挖掘

实验步骤

1.利用Weka对数据集contact-lenses.arff进行Apriori关联规则挖掘。要求:

描述数据集;解释Apriori 算法及流程;解释Weka 中有关Apriori 的参数;解释输出结果

Apriori 算法:

1、发现频繁项集,过程为

(1)扫描

(2)计数

(3)比较

(4)产生频繁项集

(5)连接、剪枝,产生候选项集

(6)重复步骤(1)~(5)直到不能发现更大的频集

2、产生关联规则

(1)对于每个频繁项集L,产生L的所有非空子集;

(2)对于L的每个非空子集S,如果

P(L)/P(S)≧min_conf(最小置信度阈值)

则输出规则“S=>L-S”

Weka 中有关Apriori 的参数:

1. car 如果设为真,则会挖掘类关联规则而不是全局关联规则。

2. classindex 类属性索引。如果设置为-1,最后的属性被当做类属性。

3.delta 以此数值为迭代递减单位。不断减小支持度直至达到最小支持度或产生了满足数量要求的规则。

4. lowerBoundMinSupport 最小支持度下界。

5. metricType 度量类型。设置对规则进行排序的度量依据。可以是:置信度(类关联规则只能用置信度挖掘),提升度(lift),杠杆率(leverage),确信度(conviction)。

在Weka中设置了几个类似置信度(confidence)的度量来衡量规则的关联程度,它们分别是:

a)Lift :P(A,B)/(P(A)P(B)) Lift=1时表示A和B独立。这个数越大(>1),越表明A和B存在于一个购物篮中不是偶然现象,有较强的关联度.

b)Leverage :P(A,B)-P(A)P(B)

Leverage=0时A和B独立,Leverage越大A和B的关系越密切

c)Conviction:P(A)P(!B)/P(A,!B) (!B表示B没有发生)Conviction也是用来衡量A和B 的独立性。从它和lift的关系(对B取反,代入Lift公式后求倒数)可以看出,这个值越大,

A、B越关联。

6.minMtric 度量的最小值。

7.numRules 要发现的规则数。

8.outputItemSets 如果设置为真,会在结果中输出项集。

9. removeAllMissingCols 移除全部为缺省值的列。

10. significanceLevel 重要程度。重要性测试(仅用于置信度)。

11.upperBoundMinSupport 最小支持度上界。从这个值开始迭代减小最小支持度。

12.verbose 如果设置为真,则算法会以冗余模式运行。

对数据集contact-lenses.arff进行Apriori关联规则挖掘的结果:

由输出:共进行16轮搜索,生成11个频繁1项集,21个频繁2项集,6个频繁3项集;产生10条(设置的)关联规则;

如第一条规则,tear-prod-rate=reduced ==>contact-lenses=none 的置信度为1,即在

tear-prod-rate=reduced 的条件下,contact-lenses=none的概率为1;

2.根据CarInfo.txt 和CarInfo Description.txt 两个文件将CarInfo.txt 转换成CarInfo.arff 文件,并进行Apriori 关联规则挖掘。要求同1

将txt文件数据复制到excel中并保存为CSV格式,在weka中打开CSV文件,并保存为arff文件即可。其他同1;

3.解释FPGrowth 算法;解释Weka 中关于FPGrowth 算法的参数;比较FPGrowth 和Apriori 算法的区别

FPGrowth 算法:

1、构造项头表:扫描数据库一遍,得到频繁项的集合F和每个频繁项的支持度。把F按支持度递降排序,记为L。

2、构造原始FPTree:把数据库中每个事物的频繁项按照L中的顺序进行重排。并按照重排之后的顺序把每个事物的每个频繁项插入以null为根的FPTree中。如果插入时频繁项节点已经存在了,则把该频繁项节点支持度加1;如果该节点不存在,则创建支持度为1的节点,并把该节点链接到项头表中。

3、对FP树挖掘:

由长度为1的叶子节点开始,构造它的条件模式基,然后构造它的条件FP树,并递归的在该树上进行挖掘,模式增长通过后缀模式与条件FP树昌盛的频繁模式连接实现。

FPGrowth 算法的参数:

1.delta:以此数值为迭代递减单位。不断减小支持度直至达到最小支持度或产生了满足数量要求的规则。

2.findAllRulesForSupportLevel:查找满足最小支持下限和最小度量约束的所有规则。打开此模式将禁用迭代支持减少过程,以查找指定数量的规则。

3.lowerBoundMinSupport:最小支持度下界

4.maxNumberOfItems:频繁项集中最多项的个数

5.metricType:度量类型。设置对规则进行排序的度量依据。可以是:置信度(类关联规则只能用置信度挖掘),提升度(lift),杠杆率(leverage),确信度(conviction)。

6.在Weka中设置了几个类似置信度(confidence)的度量来衡量规则的关联程度,它们分别是:

a)Lift :P(A,B)/(P(A)P(B)) Lift=1时表示A和B独立。这个数越大(>1),越表明A和B存在于一个购物篮中不是偶然现象,有较强的关联度.

b)Leverage :P(A,B)-P(A)P(B)

Leverage=0时A和B独立,Leverage越大A和B的关系越密切

相关文档
最新文档