导航菜单

关联规则挖掘

关联规则基本概念

1. 基本定义

关联规则挖掘是数据挖掘中用于发现数据项之间有趣关系的方法。

# 基本概念
1. 项集(Itemset)
   - 一组项目的集合
   - 例如:{牛奶, 面包, 鸡蛋}

2. 事务(Transaction)
   - 包含多个项目的集合
   - 例如:一次购物记录

3. 支持度(Support)
   - 项集在所有事务中出现的频率
   - Support(X) = P(X)

4. 置信度(Confidence)
   - 规则的可信程度
   - Confidence(X→Y) = P(Y|X)

5. 提升度(Lift)
   - 规则的相关性强度
   - Lift(X→Y) = P(Y|X)/P(Y)

# 示例
事务数据库:
T1: {牛奶, 面包, 鸡蛋}
T2: {牛奶, 面包}
T3: {面包, 鸡蛋}
T4: {牛奶, 鸡蛋}

规则:牛奶 → 面包
- 支持度 = 2/4 = 0.5
- 置信度 = 2/3 = 0.67
- 提升度 = 0.67/0.75 = 0.89

2. 规则评估

关联规则的评估需要考虑多个指标。

# 规则评估指标
1. 最小支持度(Min Support)
   - 过滤低频项集
   - 通常设置为0.01-0.1

2. 最小置信度(Min Confidence)
   - 过滤不可靠规则
   - 通常设置为0.5-0.8

3. 最小提升度(Min Lift)
   - 过滤不相关规则
   - 通常设置为>1

4. 规则长度
   - 规则包含的项目数
   - 通常限制在2-3个

# 评估示例
规则:牛奶 → 面包
- 支持度 = 0.5 > 0.1 ✓
- 置信度 = 0.67 > 0.5 ✓
- 提升度 = 0.89 < 1 ✗
结论:规则不可靠

3. 规则类型

关联规则可以根据不同的特征进行分类。

# 规则类型
1. 基于规则形式
   - 单维规则:A → B
   - 多维规则:A,B → C
   - 分层规则:A → B → C

2. 基于规则方向
   - 单向规则:A → B
   - 双向规则:A ↔ B
   - 循环规则:A → B → C → A

3. 基于规则约束
   - 无约束规则
   - 时间约束规则
   - 空间约束规则

# 示例
1. 单维规则
   牛奶 → 面包

2. 多维规则
   牛奶,鸡蛋 → 面包

3. 时间约束规则
   牛奶 → 面包 (在早上)