关联规则――基于 Python 的 Apriori 算法实现
Apriori 核心思想: 通过连接产生候选项与其支持度,然后通过剪枝生成频繁项集。 关键概念: 项集:项的集合。包含 k 个项的项集称为 k 项集,如{a,s,d}是一个3项集。 支持度:项集A、B同时发生的概率。 最小支持度 :项集在统计意义上的最低重要性。 置信度:项集A发生,则项集B发生的概率。 最小置信度 :关联规则的最低可靠性。 同时满足最小支持度阈值和最小置信度阈值的规则称作 强规则。 项集的支持度计数(绝对支持度):项集的出现频率,即所有包含项集的事务计数。 频繁项集:项集的相对支持度满足预定义的最小支持度阈值 实现步骤: 主要思想:找出存在于事务数据集中的最大的频繁项集,再利用得到的最大频繁项集与预先设定的最小置信度阈值生成强关联规则。 Apriori的性质:频繁项集的所有非空子集也必须是频繁项集。 步骤: 找出所有频繁项集(支持度必须大于等于给定的最小支持度阈值),将连接步和剪枝步互相融合, 最终得到最大频繁项集LK 连接步 :找到 K 项集。 剪枝步 :紧接着连接步,在产生候选项 Ck 的过程中起到减小搜索空间的目的 由频繁项集产生强关联规则 :过程1已 剔除那些 未超过预定的最小支持度阈值的项集 。如果剩下这些规则又 满足了预定的最小置信度阈值 ,那么就挖掘出了强关联规则。 示例: Apriori 算法: #-*- coding: utf-8 -*-