第11章 使用Apriori算法进行关联分析

从大规模数据集中寻找物品间的隐含关系被称作关联分析或者关联规则分析。这里主要问题在于找到物品的所有组合十分耗时,所以本章介绍Apriori来用更智能的方法解决这个问题。

11.1关联分析

关联分析是一种在大规模数据集中寻找有趣关系的任务,这种关系可以有两种形式:频繁项集或者关联规则。频繁项集是经常出现在一起的物品的集合。关联规则暗示两种物品之间可能存在很强的关系。

对“频繁”需要有量化标准。于是,有了支持度和可信度的概念。一个项集的支持度,是指数据集中包含该项集的记录所占的比例。可信度或者置信度,是针对“A—>B”的关联规则定义的。它被定义为“支持度{A,B}/支持度{A}”,若得到是值是x%,即表明对于包含A的所有记录,我们的规则对其中x%都适用。

11.2  Apriori原理

一个集合的支持度是指由多少比例的交易记录包含该集合。而随着物品数目的增加,遍历次数会急剧增长,计算会十分费时。

为解决这个问题,研究人员提出了Apriori原理。Apriori原理就是说如果某个项集是频繁的,那么它的所有子集都是频繁的,反之,如果某个项集是非频繁的,那么它的所有超集都是非频繁的。这样,当我们计算出某个项集是非频繁的,就不用再计算其超集。这样可以避免项集数目的指数增长,从而在合理时间内算出频繁项集。

11.3  使用Apriori算法来发现频繁集

Apriori算法是发现频繁集的一种方法。其大概思路是:首先生成所有单个物品的项集列表。接着扫描交易记录查看哪些项集满足最小支持度要求,哪些不满足最小支持度要求的集合会被去掉。然后,对剩下的集合进行组合以生成包含两个元素的项集。接下来,再重新扫描交易记录,去掉不满足最小支持度的项集。该过程重复进行直到所有项集被去掉。

11.3.1  生成候选项集

先构建辅助函数,扫描交易记录,过滤后得到包含一个元素的满足最小支持度的项集。此处,L1就是包含一个元素的满足最小支持度的项集,suppData0是候选项集及其支持度组成的字典。

11.3.2  组织完整的Apriori算法

这里我们用aprioriGen函数来对候选项集进行组合得到多种不重复的候选项集。用apriori函数来得到满足最小支持度的项集组成的列表L和一个候选项集及其支持度组成的字典suppData。

11.4  从频繁项集中挖掘关联规则

上一节介绍如何利用Apriori算法来发现频繁项集,现在要解决的问题的如何找出关联规则。关联规则的量化指标是可信度。规则P->H的可信度定义为support(p | H)/support(p)。所以计算可信度需要用到上一节计算出的支持度。

为了找出感兴趣的规则,我们需要生成所有可能的规则,然后测试每一条规则的可信度,如果不满足最小可信度,则去掉该规则。同时我们注意到,如果某条规则不满足最小可信度要求,那么该规则的所有子集也不会满足最小可信度要求。

该算法返回的rules是满足最小可信度的关联规则,即(前件、后件、可信度)元祖组成的列表

11.5  本章小结

关联分析是发现大数据集中元素之间有趣关系的一个工具集,可以采用两种方式来量化这些有趣的关系。第一种是频繁项集,第二种是关联规则。

费选哪个元素项间的不同组合是十分耗时的任务,因此Apriori原理就是如果一个元素是不频繁的,那么包含该元素的超集也是不频繁的。

每次增加频繁项集的大小,Apriori算法会重新扫描整个数据集。当数据集很大时,会显著降低频繁项集发现的速度。和Apriori算法相比,下一章要介绍的FP-growth算法只需要对数据库进行两次遍历,能够显著加快发现频繁项集的速度。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,271评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,275评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,151评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,550评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,553评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,559评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,924评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,580评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,826评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,578评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,661评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,363评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,940评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,926评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,156评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,872评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,391评论 2 342

推荐阅读更多精彩内容