matlab实现apriori算法源代码

matlab实现apriori算法源代码

ID:47645431

大小:300.00 KB

页数:7页

时间:2020-01-31

matlab实现apriori算法源代码_第1页
matlab实现apriori算法源代码_第2页
matlab实现apriori算法源代码_第3页
matlab实现apriori算法源代码_第4页
matlab实现apriori算法源代码_第5页
资源描述:

《matlab实现apriori算法源代码》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、.word可编辑.matlab实现apriori算法源代码一、实验目的通过实验,加深数据挖掘中一个重要方法——关联分析的认识,其经典算法为apriori算法,了解影响apriori算法性能的因素,掌握基于apriori算法理论的关联分析的原理和方法。二、实验内容对一数据集用apriori算法做关联分析,用matlab实现。三、方法手段关联规则挖掘的一个典型例子是购物篮分析。市场分析员要从大量的数据中发现顾客放入其购物篮中的不同商品之间的关系。如果顾客买牛奶,他也购买面包的可能性有多大?什么商品组或集合顾客多半

2、会在一次购物时同时购买?例如,买牛奶的顾客有80%也同时买面包,或买铁锤的顾客中有70%的人同时也买铁钉,这就是从购物篮数据中提取的关联规则。分析结果可以帮助经理设计不同的商店布局。一种策略是:经常一块购买的商品可以放近一些,以便进一步刺激这些商品一起销售,例如,如果顾客购买计算机又倾向于同时购买财务软件,那么将硬件摆放离软件陈列近一点,可能有助于增加两者的销售。另一种策略是:将硬件和软件放在商店的两端,可能诱发购买这些商品的顾客一路挑选其他商品。关联规则是描述数据库中数据项之间存在的潜在关系的规则,形式为,

3、其中,是数据库中的数据项.数据项之间的关联规则即根据一个事务中某些项的出现,可推导出另一些项在同一事务中也出现。四、Apriori算法1.算法描述Apriori算法的第一步是简单统计所有含一个元素的项集出现的频率,来决定最大的一维项目集。在第k步,分两个阶段,首先用一函数sc_candidate(候选),通过第(k-1).专业.专注..word可编辑.步中生成的最大项目集Lk-1来生成侯选项目集Ck。然后搜索数据库计算侯选项目集Ck的支持度.为了更快速地计算Ck中项目的支持度,文中使用函数count_supp

4、ort计算支持度。Apriori算法描述如下:(1)C1={candidate1-itemsets};(2)L1={c∈C1

5、c.count≥minsupport};(3)for(k=2,Lk-1≠Φ,k++)  //直到不能再生成最大项目集为止(4)Ck=sc_candidate(Lk-1); //生成含k个元素的侯选项目集(5)foralltransactionst∈D//办理处理(6)Ct=count_support(Ck,t); //包含在事务t中的侯选项目集(7)forallcandidatesc∈

6、Ct(8)c.count=c.count+1;(9)next(10)Lk={c∈Ck

7、c.count≥minsupport};(11)next(12)resultset=resultset∪Lk其中,D表示数据库;minsupport表示给定的最小支持度;resultset表示所有最大项目集。Sc_candidate函数该函数的参数为Lk-1,即:所有最大k-1维项目集,结果返回含有k个项目的侯选项目集Ck。事实上,Ck是k维最大项目集的超集,通过函数count_support计算项目的支持度,然后生成Lk。

8、该函数是如何完成这些功能的,详细说明如下:首先,通过对Lk-1自连接操作生成Ck,称join(连接)步,该步可表述为:.专业.专注..word可编辑.insertintoCk selectP.item1,P.item2,...,P.itemk-1,Q.itemk-1fromLk-1P,Lk-1Q whereP.item1=Q.item1,...,P.itemk-2=Q.itemk-2,P.itemk-1

9、X,X'∈Lk-1,

10、X∩X'

11、=k-2}然后,是pru

12、ne(修剪)步,即对任意的c,c∈Ck,删除Ck中所有那些(k-1)维子集不在Lk-1中的项目集,得到侯选项目集Ck。表述为:forallitemset c∈Ck  forall(k-1)维子集sofc if(s不属于Lk-1)thendeletecfromCk;用集合表示:Ck={X∈Ck

13、X的所有k-1维子集在Lk-1中}2.Apriori算法的举例示例说明Apriori算法运作过程,有一数据库D,其中有四个事务记录,分别表示为TIDItemsT1I1,I3,I4T2I2,I3,I5T3I1,I2,I3,

14、I5T4I2,I5在Apriori算法中每一步创建该步的侯选集。统计每个侯选项目集的支持度,并和预定义的最小支持度比较,来确定该步的最大项目集。首先统计出一维项目集,即C1.这里预定义最小支持度minsupport=2,侯选项目集中满足最小支持度要求的项目集组合成最大的1-itemsets。为生成最大的2-itemsets,使用了.专业.专注..word可编辑.sc_candidate函数中join

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。