实验三 Apriori算法的频繁项集产生

源码-公众号云上成理回复大数据实验三  自动获取

 

一.实验目的

1.能够使用简单的的Apriori算法的统计性能指标,理解大数据的关联算法。

2.掌握常用的Apriori算法原理,了解Apriori算法的特点。

3.能够进行实验学会简单应用。

二.实验内容

1.探索准备数据(对汽车评估进行关联分析)。

2.对数据处理,用算法描述。

3.数据的结果分析。

三.实验原理

1. Apriori算法

Apriori使用一种称为逐层搜索的迭代方法,k项集用于探索(k+1)项集。首先,通过扫描数据库,累计每个项的计数,并搜集满足最小支持度的项,找出频繁1项集的集合。该集合记作L1。然后,L1用于找频繁2项集的集合L2,L2用于找L3,如此下去,直到不能找到频繁k项集。找每个Lk需要依次数据库全扫描。

  1. 提高频繁项集逐层产生的效率

Apriori性质:频繁项集所有非空子集也必须是频繁的。

  • 实验内容和步骤
  1. 实验内容
  • 探索准备数据(对汽车评估进行关联分析)

图一

 

图一是加载数据集,也就是汽车数据的函数。这几维度分别为:(销售价格buying,维护价格maint,门的数量door,座位数量persons,后备箱大小lug_boot,安全系数safety,类值Class Values)。

通过记事本打开car.data文件,也就是图二所示。

q buying:取值范围是vhigh、high、med、low;

q maint:取值范围是vhigh、high、med、low;

q doors:取值范围是2、3、4、5等;

q persons:取值范围是2、4等;

q lug_boot:取值范围是small、med、big;

q safety:取值范围是low、med、high。

  Class Values: 取值范围是unacc、acc、good、vgood.四类

数据示例:vhigh,vhigh,2,2,small,low,unacc

图二

  • 对数据处理,用算法描述

Apriori算法主要包括以下几个重要步骤,上图一就是导入数据,图三主要就是生成所有频繁项目集。频繁项目集(大于或等于最小支持度的非空子集)。

 图三

图四是从频繁项目集中生成大的规则,最终返回一个包含所有规则的列表。

 图四

图五就是Apriori算法的主函数了。

图五

  • 数据的结果分析

图六

先通过以下例子介绍一下置信度,因为上图结果中表现形式为置信度。

 

{苹果—>啤酒}的置信度=(支持度{苹果,啤酒}/支持度{苹果})3/4,即75%。

置信度有一个缺点,那就是它可能会错估某个关联规则的重要性。只考虑了苹果的购买频率,而并未考虑啤酒的购买频率。如果啤酒也很受欢迎(支持度很高),那苹果的交易显然很有可能也包含啤酒,这会抬高置信度指标。

通过图六,图七,图八,可以看到,提高最小支持度,和提高最小置信度,频繁项集的数目会减少,甚至不出现频繁3项集。

最后通过观察关联准则

通过这个图可以看见置信度为1,为最大值,说明({'safety: low'})和({'Class Values: unacc'})的数据关联性很高,因为安全度不高,同时人们的满意度也不高。

上图可以看出置信度为0.37左右,说明({'Class Values: unacc'})和({'lug_boot: small'})之间的相关性不高,后备箱的大小和人们的满意度没有太大的关系

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

云上成理

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值