Weka数据挖掘_K-means与Apriror结合获得的的强关联算法
The author: Tim DONG
From:Staffordshire University
Email:d033889g@student.staffs.ac.uk
背景
本节使用Weka环境中的各种算法。预测汽车属性对人们购买汽车的影响。首先利用k-means算法进行数据预处理,得到事务数据集,然后利用Weka平台下的Apriori算法进行相关分析。最后,根据给定的最小支持度和最小置信度,筛选出相关的强关联规则。这些强关联规则用于预测。该方法是通过文献“Educational Data Mining Application for Estimating Students Performance in Weka Environment”(Gowri et.al, 2017)和“Data mining: practical machine learning tools and techniques”(Witten I。H, 2017)所总结得出。
实现算法原理
- k - means
从文献“K -means: A”(ZHAOWANLEI, 2018)可以总结出以下理论:K -means method根据一定的距离函数和准则函数将空间中的N个样本点划分为K个簇。
如果原始数据集中每列数据的值大小相似,连续性强,分化程度不够,不利于使用Apriori算法对数据进行分析。因此,应该采用k-means聚类算法对数据集进行离散化。一些特殊样品被淘汰。然后做一个基本的预测。 - Apriror
原则:“All non-empty subsets in any frequent item set must also be frequent. ”(Pechenizkiy, 2018)它主要分为两个过程:生成频繁项集和生成强关联规则。
A.生成频繁项目集:需要两个步骤:
1)通过将频繁项集L(k-1) ,生成一组候选的k项集,记为Ck。
2) Ck是Lk的超集,根据是否满足最小支持数min_sup,对Ck中的项进行分析和删除。删除后得到的项目集为频繁项目集。
B.生成关联规则:
1)对于每个频繁项集Lk,生成Lk的所有非空子集;
2)对于Lk的每个非空子集s,如果,则输出规则s (L -S),其中sup port_count (s) min_conf为最小置信阈值。
数据集
- 建立原始数据集
首先,使用WEKA工具转换数据集,并将CSV格式转换为Arff格式。
数据集的属性:buying, maint, doors, persons, lug_boot, safty
每个属性代表什么:
以下是子属性:
- k - means
首先,在Weka上使用K-Means算法。设K为3,将连续样本数据离散成3个簇。得到以下结果:
如图所示,它包含1728个实例。7个属性。此时,错误的数据已被消除。
如图所示,出现了三个集群。k-means检验样本数为1728个,三个聚类分别占样本总数的841个(49%)、525个(30%)和362个(21%)。
这三个集群代表了消费者购买汽车的典型例子。
预测:
1.消费者不会购买价格高、门多、乘客少、轮胎小、安全性低的汽车。
2.价格适中,维修方便,载客量大,车轮大,安全性能好。消费者乐于购买。
3.消费者不愿意购买价格高、乘客数量适中、轮胎小、安全性低的汽车。
使用可视化。根据图表分析,大多数人愿意购买中等价位或稍高价位的汽车。
聚类3(红色)也证明是分析性的。可以得出结论,消费者注意安全。
群集1(蓝色)也证明了预测。大量的样品选择“不接受”。
实现
- 使用Apriror的算法
打开Arff文件,然后单击“Associate”以设置参数。参数如图所示,点击start。获得关联规则如下图所示:
利用Apriori算法,我们得到了10条强关联规则。可以做出更准确的数据分析。
分析如下:
-
消费者不接受车内空间小的汽车(根据人数)
-
基于强管理规则2.9.10。消费者不接受低安全性车辆(对于576个低安全性样本,576人选择拒绝 lev:(0.1))
3.基于3-8点的强关联规则,空间小的车型,无论其他属性如何,大多数消费者选择不接受。 -
预测的例子
结合k-means和Apriori算法进行数据挖掘,得到一个粗略的聚类分类,并获得准确的强关联规则。这样就可以预测未来的数据。
消费者更喜欢价格合理、维修方便、安全系数高的汽车。汽车制造商可以根据数据挖掘结果制定合理的发展计划。
结论
随着相关数据的逐渐增多,通过使用K-Means聚类算法,这些数据的离散化程度差别将会更加明显。