- 机器学习基础
- ML - 首页
- ML - 简介
- ML - 快速入门
- ML - 基本概念
- ML - 生态系统
- ML - Python 库
- ML - 应用
- ML - 生命周期
- ML - 所需技能
- ML - 实现
- ML - 挑战与常见问题
- ML - 限制
- ML - 真实案例
- ML - 数据结构
- ML - 数学基础
- ML - 人工智能
- ML - 神经网络
- ML - 深度学习
- ML - 获取数据集
- ML - 分类数据
- ML - 数据加载
- ML - 数据理解
- ML - 数据准备
- ML - 模型
- ML - 监督学习
- ML - 无监督学习
- ML - 半监督学习
- ML - 强化学习
- ML - 监督学习 vs. 无监督学习
- 机器学习数据可视化
- ML - 数据可视化
- ML - 直方图
- ML - 密度图
- ML - 箱线图
- ML - 相关矩阵图
- ML - 散点矩阵图
- 机器学习统计学
- ML - 统计学
- ML - 均值、中位数、众数
- ML - 标准差
- ML - 百分位数
- ML - 数据分布
- ML - 偏度和峰度
- ML - 偏差和方差
- ML - 假设
- 机器学习中的回归分析
- ML - 回归分析
- ML - 线性回归
- ML - 简单线性回归
- ML - 多元线性回归
- ML - 多项式回归
- 机器学习中的分类算法
- ML - 分类算法
- ML - 逻辑回归
- ML - K近邻算法 (KNN)
- ML - 朴素贝叶斯算法
- ML - 决策树算法
- ML - 支持向量机
- ML - 随机森林
- ML - 混淆矩阵
- ML - 随机梯度下降
- 机器学习中的聚类算法
- ML - 聚类算法
- ML - 基于质心的聚类
- ML - K均值聚类
- ML - K中心点聚类
- ML - 均值漂移聚类
- ML - 层次聚类
- ML - 基于密度的聚类
- ML - DBSCAN 聚类
- ML - OPTICS 聚类
- ML - HDBSCAN 聚类
- ML - BIRCH 聚类
- ML - 亲和传播
- ML - 基于分布的聚类
- ML - 凝聚层次聚类
- 机器学习中的降维
- ML - 降维
- ML - 特征选择
- ML - 特征提取
- ML - 向后剔除法
- ML - 向前特征构造
- ML - 高相关性过滤
- ML - 低方差过滤
- ML - 缺失值比率
- ML - 主成分分析
- 强化学习
- ML - 强化学习算法
- ML - 利用与探索
- ML - Q学习
- ML - REINFORCE 算法
- ML - SARSA 强化学习
- ML - 演员-评论家方法
- 深度强化学习
- ML - 深度强化学习
- 量子机器学习
- ML - 量子机器学习
- ML - 使用 Python 的量子机器学习
- 机器学习杂项
- ML - 性能指标
- ML - 自动工作流程
- ML - 提升模型性能
- ML - 梯度提升
- ML - 自举汇聚 (Bagging)
- ML - 交叉验证
- ML - AUC-ROC 曲线
- ML - 网格搜索
- ML - 数据缩放
- ML - 训练和测试
- ML - 关联规则
- ML - Apriori 算法
- ML - 高斯判别分析
- ML - 成本函数
- ML - 贝叶斯定理
- ML - 精度和召回率
- ML - 对抗性
- ML - 堆叠
- ML - 纪元
- ML - 感知器
- ML - 正则化
- ML - 过拟合
- ML - P值
- ML - 熵
- ML - MLOps
- ML - 数据泄漏
- ML - 机器学习的货币化
- ML - 数据类型
- 机器学习 - 资源
- ML - 快速指南
- ML - 速查表
- ML - 面试问题
- ML - 有用资源
- ML - 讨论
机器学习 - 关联规则
关联规则挖掘是一种用于机器学习的技术,用于在大数据集中发现有趣的模式。这些模式以关联规则的形式表达,表示数据集中不同项目或属性之间的关系。关联规则挖掘最常见的应用是市场购物篮分析,其目标是识别经常一起购买的产品。
关联规则表示为一组前件和一组后件。前件表示规则适用的条件或项目,而后件表示可能与前件相关的结果或项目。关联规则的强度由两个指标衡量:支持度和置信度。支持度是数据集中包含前件和后件的交易比例,而置信度是在包含前件的交易中也包含后件的交易比例。
示例
在 Python 中,mlxtend 库提供了几个用于关联规则挖掘的函数。以下是使用 mlxtend 的 apriori 函数在 Python 中实现关联规则挖掘的示例:
import pandas as pd from mlxtend.preprocessing import TransactionEncoder from mlxtend.frequent_patterns import apriori, association_rules # Create a sample dataset data = [['milk', 'bread', 'butter'], ['milk', 'bread'], ['milk', 'butter'], ['bread', 'butter'], ['milk', 'bread', 'butter', 'cheese'], ['milk', 'cheese']] # Encode the dataset te = TransactionEncoder() te_ary = te.fit(data).transform(data) df = pd.DataFrame(te_ary, columns=te.columns_) # Find frequent itemsets using Apriori algorithm frequent_itemsets = apriori(df, min_support=0.5, use_colnames=True) # Generate association rules rules = association_rules(frequent_itemsets, metric="confidence", min_threshold=0.5) # Print the results print("Frequent Itemsets:") print(frequent_itemsets) print("\nAssociation Rules:") print(rules)
在这个例子中,我们创建了一个购物交易的示例数据集,并使用 mlxtend 的 TransactionEncoder 对其进行编码。然后,我们使用 apriori 函数找到最小支持度为 0.5 的频繁项集。最后,我们使用 association_rules 函数生成最小置信度为 0.5 的关联规则。
apriori 函数有两个参数:编码后的数据集和最小支持度阈值。use_colnames 参数设置为 True 以使用原始项目名称而不是布尔值。association_rules 函数有两个参数:频繁项集以及用于生成关联规则的度量和最小阈值。在这个例子中,我们使用置信度度量,最小阈值为 0.5。
输出
这段代码的输出将显示频繁项集和生成的关联规则。频繁项集表示数据集中经常一起出现的一组项目,而关联规则表示频繁项集中的项目之间的关系。
Frequent Itemsets: support itemsets 0 0.666667 (bread) 1 0.666667 (butter) 2 0.833333 (milk) 3 0.500000 (bread, butter) 4 0.500000 (bread, milk) 5 0.500000 (butter, milk) Association Rules: antecedents consequents antecedent support consequent support support \ 0 (bread) (butter) 0.666667 0.666667 0.5 1 (butter) (bread) 0.666667 0.666667 0.5 2 (bread) (milk) 0.666667 0.833333 0.5 3 (milk) (bread) 0.833333 0.666667 0.5 4 (butter) (milk) 0.666667 0.833333 0.5 5 (milk) (butter) 0.833333 0.666667 0.5 confidence lift leverage conviction zhangs_metric 0 0.75 1.125 0.055556 1.333333 0.333333 1 0.75 1.125 0.055556 1.333333 0.333333 2 0.75 0.900 -0.055556 0.666667 -0.250000 3 0.60 0.900 -0.055556 0.833333 -0.400000 4 0.75 0.900 -0.055556 0.666667 -0.250000 5 0.60 0.900 -0.055556 0.833333 -0.400000
关联规则挖掘是一种强大的技术,可以应用于许多不同类型的数据集。它通常用于市场购物篮分析以识别经常一起购买的产品,但它也可以应用于其他领域,例如医疗保健、金融和社交媒体。借助 mlxtend 等 Python 库,可以轻松实现关联规则挖掘并从大型数据集中生成有价值的见解。