关联规则分析基础
在数据挖掘领域,关联规则分析是一种发现变量之间有趣关系的技术。这种关系通常被描述为“如果...那么...”的模式,例如,“如果一个顾客购买了面包,那么他们也很可能会购买黄油”。Apriori算法是最著名的关联规则挖掘算法之一,广泛应用于市场篮子分析。本
事务库与项集
事务库是关联规则分析中的核心概念,它记录了用户行为的数据。例如,在购物篮分析中,事务库记录了顾客的购买行为。事务库中的每条记录称为一笔事务,而事务中的每样商品称为一个项,项的集合称为项集。
关联规则
关联规则是形如X → Y
的表达式,其中X
称为前件,Y
称为后件。这些项集代表了商品之间的购买关系。
支持度、置信度和提升度
- 支持度(Support):项集的支持度是指包含该项集的事务在所有事务中所占的比例。
- 频繁项集:支持度大于等于最小支持度的项集。
- 置信度(Confidence):表示在关联规则的前件
X
发生的条件下,后件Y
发生的概率。 - 提升度(Lift):表示先购买
X
对Y
的概率的提升作用,用来判断规则是否有实际价值。
Apriori算法
算法步骤
Apriori算法包括以下步骤:
- 设定最小支持度和最小置信度。
- 根据最小支持度找出所有的频繁项集。
- 根据最小置信度发现强关联规则。
核心思想
Apriori算法的核心思想是迭代判断:如果一个项集不是频繁的,那么包含它的任何更大的项集也不可能是频繁的。
Apyori库的应用
Apyori是一个Python库,实现了Apriori算法,可以方便地挖掘数据中的关联规则。
安装
可以通过pip命令安装Apyori库:
pip install apyori==1.1.2
代码实现
以下是使用Apyori库进行关联规则挖掘的示例代码:
from apyori import apriori
# 假设transactions是交易数据集
transactions = [
['A', 'B', 'C'],
['A', 'B'],
['B', 'C'],
['A', 'B', 'C', 'D'],
['B', 'C', 'D']
]
# 调用apriori函数,指定最小支持度和最小置信度
rules = apriori(transactions, min_support=0.4, min_confidence=0.8)
# 将生成器对象转化为列表
results = list(rules)
# 打印关联规则
for result in results:
for rule in result.ordered_statistics:
print(rule.items_base, '→', rule.items_add, 'Support:', rule.support,
'Confidence:', rule.ordered_statistics)
关联规则分析的应用场景
中医病症关联规则分析
通过关联规则分析,可以挖掘中医病症之间的关联关系,帮助医生更好地理解疾病的发展规律和诊疗特点。
金融产品交叉销售模型
在金融领域,关联规则分析可以帮助发现不同金融产品之间的潜在关联,实现交叉销售,提高销售效率。
关联规则分析作为一种强大的数据挖掘技术,能够帮助我们从大量数据中发现有价值的模式。Apriori算法及其实现库Apyori为我们提供了一种高效的方法来挖掘这些关联规则。随着数据科学领域的不断发展,关联规则分析将继续在各个行业中发挥重要作用。
标签:置信度,Apriori,项集,算法,规则,关联 From: https://www.cnblogs.com/xiaoyu-w/p/18263385