关联规则挖掘算法Aprior和FPGrowth对比与改进
Aprior算法和FPGrowth算法同属于关联规则挖掘算法,但Aprior是基于广度优先的,而FPGrowth是基于深度优先的,即Aprior算法需要建立K项集,然后扫描数据库;而FPGrowth算法则是扫描数据库,然后查找频繁项集。 Aprior算法Aprior算法的原理和实现参见http://www.voidcn.com/article/p-wqkmvgsj-sy.html和http://www.tuicool.com/m/articles/MFZnuuA FPGrowthFPGrowth算法的原理和具体实现参见http://www.cnblogs.com/fengfenggirl/p/associate_fpgowth.html,FPGrowth算法只需扫描两次数据库即可。FPGrowth的并行化运算参见http://www.voidcn.com/article/p-wohrntce-gq.html 关联规则评价有时候,强规则(即同时满足支持度和自信度)并不能成功过滤掉我们并不感兴趣的规则,所以需要新的评价标准 如果lift(A,B)>1表示A、B呈正相关,lift(A,B)<1表示A、B呈负相关,lift(A,B)=1表示A、B不相关(独立)。实际运用中,正相关和负相关都是我们需要关注的,而独立往往是我们不需要的 2.全自信度 3.最大自信度 4.Kulc 5.cosine(A,B) 6.卡方系数 上面表格的括号中表示的是期望值,(买影片,买游戏)的期望值E=6000*(7500/10000)=4500,总体记录中有75%的人买影片,而买游戏的有6000人,于是我们期望这6000人中有75%(即4500)的人买影片. 卡方系数需要查表才能确定值的意义,基于置信水平和自由度(r-1) (c-1)=(行数-1)(列数-1)=1,查表得到自信度为(1-0.001)的值为6.63,555.6大于6.63,因此拒绝A、B独立的假设,即认为A、B是相关的,而expected(买影片,买游戏)=4500>4000,因此认为A、B呈负相关。 在以上几种方法中,全自信度、最大自信度、Kulc、cosine,Leverage是不受空值影响的,这在处理大数据集是优势更加明显。推荐使用kulc准则和不平衡因子结合的方法 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |