关联规则 -- 简介\n 关联规则挖掘是一种基于规则的机器学习算法,该算法可以在大数据库中发现感兴趣的关系。它的目的是利用一些度量指标来分辨数据库中存在的强规则。也即是说关联规则挖掘是用于知识发现,而非预测,所以是属于无监督的机器学习方法。\n Apriori算法是一种挖掘关联规则的频繁项集算法,其核心思想是通过候选集生成和情节的向下封闭检测两个阶段来挖掘频繁项集。\n 关联规则的一般步骤:\n 1、找到频繁集;\n 2、在频繁集中通过可信度筛选获得关联规则。\n 关联规则应用:\n 1、Apriori算法应用广泛,可用于消费市场价格分析,猜测顾客的消费习惯,比如较有名的“尿布和啤酒”的故事;\n 2、网络安全领域中的入侵检测技术;\n 3、可用在用于高校管理中,根据挖掘规则可以有效地辅助学校管理部门有针对性的开展贫困助学工作;\n 4、也可用在移动通信领域中,指导运营商的业务运营和辅助业务提供商的决策制定。\n 关联规则算法的主要应用是购物篮分析,是为了从大量的订单中发现商品潜在的关联。其中常用的一个算法叫Apriori先验算法。\n关联规则 -- 概念\n 关联分析(Association Analysis):在大规模数据集中寻找有趣的关系。\n 频繁项集(Frequent Item Sets):经常出现在一块的物品的集合,即包含0个或者多个项的集合称为项集。\n 支持度(Support):数据集中包含该项集的记录所占的比例,是针对项集来说的。\n 置信度(Confidence):出现某些物品时,另外一些物品必定出现的概率,针对规则而言。\n 关联规则(Association Rules):暗示两个物品之间可能存在很强的关系。形如A->B的表达式,规则A->B的度量包括支持度和置信度\n 项集支持度:一个项集出现的次数与数据集所有事物数的百分比称为项集的支持度\n\n 支持度反映了A和B同时出现的概率,关联规则的支持度等于频繁集的支持度。\n 项集置信度:包含A的数据集中包含B的百分比\n\n 置信度反映了如果交易中包含A,则交易包含B的概率。也可以称为在A发生的条件下,发生B的概率,成为条件概率。\n 只有支持度和置信度(可信度)较高的关联规则才是用户感兴趣的。\n关联规则 --支持度和置信度\n1、支持度(Support)\n 支持度揭示了A与B同时出现的概率。如果A与B同时出现的概率小,说明A与B的关系不大;如果A与B同时出现的非常频繁,则说明A与B总是相关的。\n 支持度: P(A∪B),即A和B这两个项集在事务集D中同时出现的概率。\n\n\n2、可信度(Confidence)\n 置信度揭示了A出现时,B是否也会出现或有多大概率出现。如果置信度度为100%,则A和B可以捆绑销售了。如果置信度太低,则说明A的出现与B是否出现关系不大。\n 置信度: P(B|A),即在出现项集A的事务集D中,项集B也同时出现的概率。\n\n\n3、设定合理的支持度和置信度\n 对于某条规则:((support=30%,confident=60%);其中support=30%表示在所有的数据记录中,同时出现A=a和B=b的概率为30%;confident=60%表示在所有的数据记录中,在出现A=a的情况下出现B=b的概率为60%,也就是条件概率。支持度揭示了A=a和B=b同时出现的概率,置信度揭示了当A=a出现时,B=b是否会一定出现的概率。\n (1)如果支持度和置信度闭值设置的过高,虽然可以减少挖掘时间,但是容易造成一些隐含在数据中非频繁特征项被忽略掉,难以发现足够有用的规则;\n (2)如果支持度和置信度闭值设置的过低,又有可能产生过多的规则,甚至产生大量冗余和无效的规则,同时由于算法存在的固有问题,会导致高负荷的计算量,大大增加挖掘时间。\n关联规则 -- Apriori算法\nApriori算法简介\nApriori算法:使用候选项集找频繁项集\n Apriori算法是一种最有影响的挖掘布尔关联规则频繁项集的算法。其核心是基于两阶段频集思想的递推算法。该关联规则在分类上属于单维、单层、布尔关联规则。在这里,所有支持度大于最小支持度的项集称为频繁项集,简称频集。\nApriori原理:如果某个项集是频繁的,那么它的所有子集也是频繁的。该定理的逆反定理为:如果某一个项集是非频繁的,那么它的所有超集(包含该集合的集合)也是非频繁的。Apriori原理的出现,可以在得知某些项集是非频繁之后,不需要计算该集合的超集,有效地避免项集数目的指数增长,从而在合理时间内计算出频繁项集。