【数据挖掘】关联规则挖掘 Apriori 算法 ( 关联规则简介 | 数据集 与 事物 Transaction 概念 | 项 Item 概念 | 项集 Item Set | 频繁项集 | 示例解析 )

简介: 【数据挖掘】关联规则挖掘 Apriori 算法 ( 关联规则简介 | 数据集 与 事物 Transaction 概念 | 项 Item 概念 | 项集 Item Set | 频繁项集 | 示例解析 )

文章目录

一、 关联规则挖掘简介

二、 数据集 与 事物 ( Transaction ) 概念

三、项 ( Item ) 概念

四、项集 ( Item Set ) 概念

五、频繁项集

六、数据集、事物、项、项集合、项集 示例





一、 关联规则挖掘简介


Apriori 算法 是 关联规则 挖掘算法 ,


关联规则 反映了 对象之间 相互依赖关系 ,


可以通过 一个对象 的行为或属性 预测 其它对象的行为或属性 ;



关联规则 不是 因果关系 , 有可能有因果关系 , 有可能没有 ;


如 : 购买商品时 , 啤酒 与 尿布 就有关联关系 , 这两个之间肯定没有因果关系 , 有一种未知的关联关系 ;



关联规则挖掘步骤 :


① 步骤一 : 找出 支持度 ≥ \geq≥ 最小支持度阈值 的 频繁项集 ;


② 步骤二 : 根据 频繁模式 生成 满足 可信度阈值 的 关联规则 ;






二、 数据集 与 事物 ( Transaction ) 概念


数据集 与 事物 ( Transaction ) 概念 :


数据挖掘 数据集 由 事物 构成 ;


数据集 记做 D DD ;


使用事物表示 数据集 , 表示为 D = { t 1 , t 2 , ⋯   , t n } D = \{ t_1 , t_2 , \cdots , t_n \}D={t

1


,t

2


,⋯,t

n


} ,


其中 t k ,   ( k = 1 , 2 , ⋯   , n ) t_k , \ ( k = 1, 2, \cdots, n )t

k


, (k=1,2,⋯,n) 称为事物 ;


每个事物可以使用 唯一的标识符 表示 事物编号 ( TID ) ;






三、项 ( Item ) 概念


项 ( Item ) 概念 :


每个 事物 ( Transaction ) 由多个 项 ( Item ) 组成 ;


项 记做 i ii ;


表示为 t k = { i 1 , i 2 , ⋯   , i n } t_k = \{ i_1 , i_2 , \cdots , i_n \}t

k


={i

1


,i

2


,⋯,i

n


} ;


数据集 D DD 是所有 项 i ii 的集合 是 I II 集合 ;






四、项集 ( Item Set ) 概念


项集 ( Item Set ) 概念 :


I II 中的 任意子集 X XX , 称为 数据集 D DD 的 项集 ( Item Set ) ;


如果 项集 ( Item Set ) 中 项 ( Item ) 个数为 k kk ,


则称该 项集 ( Item Set ) 为 k kk 项集 ( k-itemset ) ;






五、频繁项集


频繁项集 : 频繁项集指的是出现次数较多的项集 ;






六、数据集、事物、项、项集合、项集 示例


事物编号 事物 ( 商品 )

001 001001 奶粉 , 莴苣

002 002002 莴苣 , 尿布 , 啤酒 , 甜菜

003 003003 奶粉 , 尿布 , 啤酒 , 橙汁

004 004004 奶粉 , 莴苣 , 尿布 , 啤酒

005 005005 奶粉 , 莴苣 , 尿布 , 橙汁


整个 数据集 D DD , 由 5 55 个事物 构成 ;



数据集 : D = { t 1 , t 2 , t 3 , t 4 , t 5 } D = \{ t_1 , t_2 , t_3 , t_4, t_5 \}D={t

1


,t

2


,t

3


,t

4


,t

5


}



事物 1 11 : t 1 = { 奶 粉 , 莴 苣 } t_1 = \{ 奶粉 , 莴苣 \}t

1


={奶粉,莴苣}


事物 2 22 : t 2 = { 莴 苣 , 尿 布 , 啤 酒 , 甜 菜 } t_2 = \{ 莴苣 , 尿布 , 啤酒 , 甜菜 \}t

2


={莴苣,尿布,啤酒,甜菜}


事物 3 33 : t 3 = { 奶 粉 , 尿 布 , 啤 酒 , 橙 汁 } t_3 = \{ 奶粉 , 尿布 , 啤酒 , 橙汁 \}t

3


={奶粉,尿布,啤酒,橙汁}


事物 4 44 : t 4 = { 奶 粉 , 莴 苣 , 尿 布 , 啤 酒 } t_4 = \{ 奶粉 , 莴苣 , 尿布 , 啤酒 \}t

4


={奶粉,莴苣,尿布,啤酒}


事物 5 55 : t 5 = { 奶 粉 , 莴 苣 , 尿 布 , 橙 汁 } t_5 = \{ 奶粉 , 莴苣 , 尿布 , 橙汁 \}t

5


={奶粉,莴苣,尿布,橙汁}



上述 事物 集合中的元素 i ii 都称为项 , 奶 粉 , 莴 苣 , 尿 布 , 啤 酒 , 甜 菜 , 橙 汁 奶粉 , 莴苣 , 尿布 , 啤酒 , 甜菜 , 橙汁奶粉,莴苣,尿布,啤酒,甜菜,橙汁 都是 项 ;



I = { 奶 粉 , 莴 苣 , 尿 布 , 啤 酒 , 甜 菜 , 橙 汁 } I = \{ 奶粉 , 莴苣 , 尿布 , 啤酒 , 甜菜 , 橙汁 \}I={奶粉,莴苣,尿布,啤酒,甜菜,橙汁}



项集 : 任意不相同的项组成的集合就称为项集 , 上述 6 66 个元素的集合有 2 6 2^62

6

 个项集 ; 参考集合幂集个数


{ 奶 粉 } \{ 奶粉 \}{奶粉} 是 1 11 项集 ;


{ 尿 布 , 啤 酒 } \{ 尿布 , 啤酒 \}{尿布,啤酒} 是 2 22 项集 ;


{ 莴 苣 , 尿 布 , 啤 酒 } \{ 莴苣 , 尿布 , 啤酒 \}{莴苣,尿布,啤酒} 是 3 33 项集 ;


{ 奶 粉 , 莴 苣 , 尿 布 , 啤 酒 } \{ 奶粉 , 莴苣 , 尿布 , 啤酒 \}{奶粉,莴苣,尿布,啤酒} 是 4 44 项集 ;


{ 奶 粉 , 莴 苣 , 尿 布 , 啤 酒 , 甜 菜 } \{ 奶粉 , 莴苣 , 尿布 , 啤酒 , 甜菜 \}{奶粉,莴苣,尿布,啤酒,甜菜} 是 5 55 项集 ;


{ 奶 粉 , 莴 苣 , 尿 布 , 啤 酒 , 甜 菜 , 橙 汁 } \{ 奶粉 , 莴苣 , 尿布 , 啤酒 , 甜菜 , 橙汁 \}{奶粉,莴苣,尿布,啤酒,甜菜,橙汁} 是 6 66 项集 ;


目录
相关文章
|
机器学习/深度学习 运维 算法
从算法菜鸟到挖掘达人:数据挖掘的算法大冒险
从算法菜鸟到挖掘达人:数据挖掘的算法大冒险
480 18
|
算法 测试技术 C语言
深入理解HTTP/2:nghttp2库源码解析及客户端实现示例
通过解析nghttp2库的源码和实现一个简单的HTTP/2客户端示例,本文详细介绍了HTTP/2的关键特性和nghttp2的核心实现。了解这些内容可以帮助开发者更好地理解HTTP/2协议,提高Web应用的性能和用户体验。对于实际开发中的应用,可以根据需要进一步优化和扩展代码,以满足具体需求。
1522 29
|
人工智能 文字识别 自然语言处理
保单AI识别技术及代码示例解析
车险保单包含基础信息、车辆信息、人员信息、保险条款及特别约定等关键内容。AI识别技术通过OCR、文档结构化解析和数据校验,实现对保单信息的精准提取。然而,版式多样性、信息复杂性、图像质量和法律术语解析是主要挑战。Python代码示例展示了如何使用PaddleOCR进行保单信息抽取,并提出了定制化训练、版式分析等优化方向。典型应用场景包括智能录入、快速核保、理赔自动化等。未来将向多模态融合、自适应学习和跨区域兼容性发展。
1205 29
分享一些提高二叉树遍历算法效率的代码示例
这只是简单的示例代码,实际应用中可能还需要根据具体需求进行更多的优化和处理。你可以根据自己的需求对代码进行修改和扩展。
464 64
|
JSON 前端开发 搜索推荐
关于商品详情 API 接口 JSON 格式返回数据解析的示例
本文介绍商品详情API接口返回的JSON数据解析。最外层为`product`对象,包含商品基本信息(如id、name、price)、分类信息(category)、图片(images)、属性(attributes)、用户评价(reviews)、库存(stock)和卖家信息(seller)。每个字段详细描述了商品的不同方面,帮助开发者准确提取和展示数据。具体结构和字段含义需结合实际业务需求和API文档理解。
1012 37
|
JSON 缓存 API
解析电商商品详情API接口系列,json数据示例参考
电商商品详情API接口是电商平台的重要组成部分,提供了商品的详细信息,支持用户进行商品浏览和购买决策。通过合理的API设计和优化,可以提升系统性能和用户体验。希望本文的解析和示例能够为开发者提供参考,帮助构建高效、可靠的电商系统。
739 12
|
安全 编译器 Linux
深入解析与防范:基于缓冲区溢出的FTP服务器攻击及调用计算器示例
本文深入解析了利用缓冲区溢出漏洞对FTP服务器进行远程攻击的技术,通过分析FreeFlow FTP 1.75版本的漏洞,展示了如何通过构造过长的用户名触发缓冲区溢出并调用计算器(`calc.exe`)。文章详细介绍了攻击原理、关键代码组件及其实现步骤,并提出了有效的防范措施,如输入验证、编译器保护和安全编程语言的选择,以保障系统的安全性。环境搭建基于Windows XP SP3和Kali Linux,使用Metasploit Framework进行攻击演示。请注意,此内容仅用于教育和研究目的。
677 4
|
存储 算法 Java
Java Set深度解析:为何它能成为“无重复”的代名词?
Java的集合框架中,Set接口以其“无重复”特性著称。本文解析了Set的实现原理,包括HashSet和TreeSet的不同数据结构和算法,以及如何通过示例代码实现最佳实践。选择合适的Set实现类和正确实现自定义对象的hashCode()和equals()方法是关键。
258 4
|
存储 算法 Java
Java Set深度解析:为何它能成为“无重复”的代名词?
Java Set深度解析:为何它能成为“无重复”的代名词?本文详解Set接口及其主要实现类(HashSet、TreeSet、LinkedHashSet)的“无重复”特性,探讨其内部数据结构和算法实现,并通过示例代码展示最佳实践。
182 3
|
存储 搜索推荐 数据库
运用LangChain赋能企业规章制度制定:深入解析Retrieval-Augmented Generation(RAG)技术如何革新内部管理文件起草流程,实现高效合规与个性化定制的完美结合——实战指南与代码示例全面呈现
【10月更文挑战第3天】构建公司规章制度时,需融合业务实际与管理理论,制定合规且促发展的规则体系。尤其在数字化转型背景下,利用LangChain框架中的RAG技术,可提升规章制定效率与质量。通过Chroma向量数据库存储规章制度文本,并使用OpenAI Embeddings处理文本向量化,将现有文档转换后插入数据库。基于此,构建RAG生成器,根据输入问题检索信息并生成规章制度草案,加快更新速度并确保内容准确,灵活应对法律与业务变化,提高管理效率。此方法结合了先进的人工智能技术,展现了未来规章制度制定的新方向。
894 3

热门文章

最新文章

推荐镜像

更多
  • DNS