关联规则挖掘

关联规则挖掘是一种发现数据集中事物间共现关系和规则模式的数据挖掘技术,常用于购物篮分析、产品推荐、行为序列分析等领域。

基本概念

  • 项集(Itemset):一组项的集合,如一次购物中的多个商品
  • 支持度(Support):项集在所有交易中出现的频率,反映规则的普遍性
  • 置信度(Confidence):条件概率P(B|A),表示含有A的交易中同时含有B的比例
  • 提升度(Lift):反映A与B相关性的程度,lift > 1表示正相关
  • 频繁项集:支持度大于最小支持度阈值的项集

常用算法

Apriori算法

  • 原理:基于”频繁项集的所有子集也是频繁的”的先验知识
  • 步骤
    1. 生成候选1项集,计算支持度,筛选频繁1项集
    2. 根据频繁k-1项集生成候选k项集
    3. 计算候选项集支持度,筛选出频繁k项集
    4. 重复步骤2-3,直到无法生成新的频繁项集
    5. 从频繁项集生成关联规则,用置信度筛选
  • 优缺点
    • 优点:原理简单,易于实现和理解
    • 缺点:多次扫描数据集,性能较低;生成大量候选项集

FP-Growth算法

  • 原理:基于频繁模式树(FP-Tree)的压缩数据结构
  • 步骤
    1. 扫描数据集,确定频繁1项集及其支持度
    2. 按支持度降序排列项,构建FP-Tree
    3. 对每个频繁项,构建条件模式基和条件FP-Tree
    4. 递归挖掘条件FP-Tree,生成频繁项集
  • 优缺点
    • 优点:只需扫描数据集两次,效率高;无需生成候选项集
    • 缺点:构建FP-Tree的内存消耗较大

评估指标

  • 支持度(Support):规则覆盖的交易比例
    • Support(A→B) = P(A∩B)
  • 置信度(Confidence):规则的准确性
    • Confidence(A→B) = P(B|A) = P(A∩B)/P(A)
  • 提升度(Lift):衡量规则的相关性
    • Lift(A→B) = P(B|A)/P(B) = P(A∩B)/(P(A)×P(B))
  • 杠杆率(Leverage):实际共现概率与独立情况下的期望差异
    • Leverage(A→B) = P(A∩B) - P(A)×P(B)
  • 确信度(Conviction):衡量规则的不确定性
    • Conviction(A→B) = P(A)×P(¬B)/P(A∩¬B)

应用场景

商品推荐

  • 关联商品推荐:基于”购买了A的用户也购买了B”的规则
  • 捆绑销售策略:发现高关联度的商品组合,设计促销活动
  • 商品陈列优化:根据商品关联关系优化商品陈列布局

内容推荐

  • 相关内容推荐:分析用户内容消费的关联模式
  • 内容组合推荐:发现内容之间的关联关系,推荐相关内容
  • 兴趣扩展:基于已知兴趣点扩展潜在兴趣领域

行为序列分析

  • 行为路径优化:分析用户行为序列中的关联模式
  • 转化漏斗优化:发现影响转化的关键行为关联
  • 异常行为检测:识别与正常关联模式偏离的行为序列

实施流程

  1. 业务理解:明确分析目标和规则应用场景
  2. 数据准备:收集和预处理交易数据
  3. 参数设置:确定最小支持度、置信度等阈值
  4. 规则挖掘:执行关联规则挖掘算法
  5. 规则筛选:根据业务需求筛选有价值的规则
  6. 规则应用:将规则应用于推荐系统或业务决策
  7. 效果评估:评估规则应用效果,优化调整参数

与其他方法的关联

关联规则挖掘是行为关联与偏好挖掘的核心方法,可以: