应用场景
关联分析应用在项不多的情况下,从整体数据中挖掘潜在关联。具体应用场景可分为如下几个:
基本概念
关联分析中,涉及到一些基本概念。假设有如下数据,则每行表示一个事务,每列表示一个项,包含k个项的集合称为k项集。
关联规则。关联规则是形如X->Y的表达式,如:{crime = y, immigration = no} -> {Democrat}。X称为前件,Y称为后件,X和Y不包含相同的项。
支持度(support)。支持度指X,Y中的项,同时出现的事务数占总事务数的比例。由于同时出现{crime = y, immigration = no}和{Democrat}的事务数为1,总事务数为4,所以规则的支持度为1/4=0.25。
置信度(confidence)。置信度指Y在包含X的事务中,出现占比。{crime = y, immigration = no}出现的事务数为2,因此规则的置信度为1/2=0.5。
支持度用来删除无意义的规则,置信度越高,表示Y在包含X的事务中出现的可能性越大。关联规则表示X,Y较容易同时出现,但是不代表有必然的因果关系。
关联规则挖掘。给定支持度阈值minsup,和置信度阈值minconf,关联规则挖掘指找到支持度>minsup,置信度>minconf的规则。
规则产生思路
规则产生的原始方法是计算每个可能规则的支持度和置信度。但是当项数增多时,可能的规则总数会以指数增长,带来巨大开销,且因阈值的限制,会导致很多开销是无用的,因此需要对规则产生思路进行优化。
通常采用的策略为拆分支持度和置信度要求。先找到满足支持度>minsup的所有项集,即频繁项集,再从频繁项集中找到满足置信度>minconf的规则。进行这样的任务分解,可以满足规则发现的原因在于,对于规则:
{crime = y, immigration = no} -> {Democrat}
{Democrat} -> {crime = y, immigration = no}
{Democrat, immigration = no} -> {crime = y}
{crime = y} -> {Democrat, immigration = no}
{Democrat, crime = y} -> {immigration = no}
{immigration = no} -> {Democrat, crime = y}
他们的支持度仅依赖于项集{Democrat, crime = y, immigration = n},如果此项集是非频繁的,则由此项集可以产生的上述6条规则,都将不满足minsup要求,因此不必再计算他们的置信度。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有