数据挖掘十大算法之Apriori算法
文章目录
- 1. “啤酒与尿布”的案例
- 2. Aprior算法核心术语
- 事物集
- 记录(事务)
- 项目(项)
- 项目集(项集)
- K项集
- 支持度(Support)
- 置信度(Confidence)
- 最小支持度(min_support)
- 最小置信度(min_confidence)
- 提升度
- 频繁K项(目)集
- 候选K项(目)集
- 3. Aprior算法的三大性质(关联规则的三大性质)
- 4. Aprior算法实现过程
- 5. 数据挖掘
- 5.1 寻找关联属性
- 5.2 生成关联规则
- 5.3 更加严谨的栗子
- 6. Aprior算法的优缺点
- 6.1 改进Aprior算法
- 6.2 FP-growth算法
- 6.3 FP-growth算法实例
- 6.4 FP-growth算法优缺点
国际权威的学术组织the IEEE International Conference on Data Mining (ICDM) 2006年12月评选出了数据挖掘领域的十大经典算法:C4.5
, k-Means
, SVM
, Apriori
, EM
, PageRank
, AdaBoost
, kNN
, Naive Bayes
, CART
这十个算法涵盖了分类、聚类、统计学习、关联分析和链接分析等重要的数据挖掘研究和发展主题
本节主要研究Apriori
算法
1. “啤酒与尿布”的案例
“啤酒与尿布”
的故事产生于20世纪90年代的美国沃尔玛超市中,沃尔玛的超市管理人员分析销售数据时发现了一个令人难于理解的现象:在某些特定的情况下,“啤酒”
与“尿布”
两件看上去毫无关系的商品会经常出现在同一个购物篮中,这种独特的销售现象引起了管理人员的注意,经过后续调查发现,这种现象出现在年轻的父亲身上。
在美国有婴儿的家庭中,一般是母亲在家中照看婴儿,年轻的父亲前去超市购买尿布。父亲在购买尿布的同时,往往会顺便为自己购买啤酒,这样就会出现啤酒与尿布这两件看上去不相干的商品经常会出现在同一个购物篮的现象。如果这个年轻的父亲在卖场只能买到两件商品之一,则他很有可能会放弃购物而到另一家商店,直到可以一次同时买到啤酒与尿布为止。沃尔玛发现了这一独特的现象,开始在卖场尝试将啤酒与尿布摆放在相同的区域,让年轻的父亲可以同时找到这两件商品,并很快地完成购物;而沃尔玛超市也可以让这些客户一次购买两件商品、而不是一件,从而获得了很好的商品销售收入,这就是“啤酒与尿布”故事的由来。
当然“啤酒与尿布”的故事必须具有技术方面的支持。1993年美国学者Agrawal
提出通过分析购物篮中的商品集合,从而找出商品之间关联关系的关联算法,并根据商品之间的关系,找出客户的购买行为。艾格拉沃从数学及计算机算法角度提出了商品关联关系的计算方法——Aprior算法
。沃尔玛从上个世纪90年代尝试将Aprior算法
引入到POS
机数据分析中,并获得了成功,于是产生了“啤酒与尿布”的故事。
什么是关联规则挖掘?
简单的来讲关联规则挖掘
就是用于发现数据库中属性之间的有趣联系。
如:顾客在购买牛奶时,是否也可能同时购买面包?
根据关联规则,我们能够做什么?
例如上面的栗子,我们可以得出结论购买牛奶的人一定会购买面包,所以我们可以:
- 帮助商家进行有针对性的促销
- 进行合理的货架摆放
2. Aprior算法核心术语
“啤酒与尿布”
是通过人工观察并发现事物规律的典型栗子,这也引出数据挖掘十大算法之一的Aprior算法
——关联规则挖掘算法
,这个算法其实并不像其他算法这么难,甚至算法本身也并没有提出什么新的概念
我们先规定一个商品表单,用来理解下面出现的一些术语
单号 | 商品 |
---|---|
1 | ABCD |
2 | ABCE |
3 | BDEF |
4 | BCDE |
5 | ACDF |
6 | ABC |
7 | ABE |
事物集
如上面的表格,{ABCD,ABCE,BDEF….},所有的流水记录构成的集合
记录(事务)
如上面的表格,我们把ABCD叫做一条记录(事物)
项目(项)
一条记录中A、B、C … 叫做一个项目(项)
项目集(项集)
由项组成的集合,如{A,B,E,F},{A,B,C}就是一个项集
K项集
项集中元素的个数为K,如{A,B,E,F}就是4项集
支持度(Support)
sup(x) = 某个项集X在事物集中出现的次数 / 事物集中记录的总个数
如X = {A,C} 则Sup(X)= 4 / 7 = 0.57
置信度(Confidence)
置信度其实就是某个项集的条件概率。Con(x=>y) = sup(xy) / sup(x) , 对应条件概率的算法:P(y | x) = P(xy) / p(x)
例如:X = {A}, Y = {C} 则Con(X=>Y)= Sup(
数据挖掘十大算法之Apriori算法相关推荐
- 数据挖掘十大经典算法之——Apriori 算法
数据挖掘十大经典算法系列,点击链接直接跳转: 数据挖掘简介及十大经典算法(大纲索引) 1. 数据挖掘十大经典算法之--C4.5 算法 2. 数据挖掘十大经典算法之--K-Means 算法 3. 数据挖 ...
- 数据挖掘十大经典算法之apriori算法源代码
数据挖掘十大经典算法 国际权威的学术组织the IEEE International Conference on Data Mining (ICDM) 2006年12月评选出了数据挖掘领域的十大经典算 ...
- 数据挖掘十大算法--Apriori算法
一.Apriori 算法概述 Apriori 算法是一种最有影响力的挖掘布尔关联规则的频繁项集的 算法,它是由Rakesh Agrawal 和RamakrishnanSkrikant 提出的.它使用一 ...
- 数据挖掘十大经典算法之——EM 算法
数据挖掘十大经典算法系列,点击链接直接跳转: 数据挖掘简介及十大经典算法(大纲索引) 1. 数据挖掘十大经典算法之--C4.5 算法 2. 数据挖掘十大经典算法之--K-Means 算法 3. 数据挖 ...
- 数据挖掘十大经典算法之——PageRank 算法
数据挖掘十大经典算法系列,点击链接直接跳转: 数据挖掘简介及十大经典算法(大纲索引) 1. 数据挖掘十大经典算法之--C4.5 算法 2. 数据挖掘十大经典算法之--K-Means 算法 3. 数据挖 ...
- 数据挖掘十大经典算法之——Naive Bayes 算法
数据挖掘十大经典算法系列,点击链接直接跳转: 数据挖掘简介及十大经典算法(大纲索引) 1. 数据挖掘十大经典算法之--C4.5 算法 2. 数据挖掘十大经典算法之--K-Means 算法 3. 数据挖 ...
- 数据挖掘十大经典算法之——KNN 算法
数据挖掘十大经典算法系列,点击链接直接跳转: 数据挖掘简介及十大经典算法(大纲索引) 1. 数据挖掘十大经典算法之--C4.5 算法 2. 数据挖掘十大经典算法之--K-Means 算法 3. 数据挖 ...
- 数据挖掘十大经典算法之——AdaBoost 算法
数据挖掘十大经典算法系列,点击链接直接跳转: 数据挖掘简介及十大经典算法(大纲索引) 1. 数据挖掘十大经典算法之--C4.5 算法 2. 数据挖掘十大经典算法之--K-Means 算法 3. 数据挖 ...
- 数据挖掘十大经典算法之——K-Means 算法
数据挖掘十大经典算法系列,点击链接直接跳转: 数据挖掘简介及十大经典算法(大纲索引) 1. 数据挖掘十大经典算法之--C4.5 算法 2. 数据挖掘十大经典算法之--K-Means 算法 3. 数据挖 ...
- 数据挖掘十大经典算法之——C4.5 算法
数据挖掘十大经典算法系列,点击链接直接跳转: 数据挖掘简介及十大经典算法(大纲索引) 1. 数据挖掘十大经典算法之--C4.5 算法 2. 数据挖掘十大经典算法之--K-Means 算法 3. 数据挖 ...
最新文章
- 陪孩子一起学python第二季_陪伴作文开头和结尾
- .NET小笔记之程序集
- 我是如何在阿里巴巴面试中壮烈牺牲的?(内含面试题)
- 如何使用阿里云容器服务保障容器的内存资源质量
- Web 四种常见的POST提交数据方式
- P5641 【CSGRound2】开拓者的卓识(多项式)
- [HNOI2011]XOR和路径
- linux 下i2c读写命令,S3C2440 Linux下的I2C驱动以及I2C体系下对EEPROM进行读写操作
- Service之bindService
- 【Flink】This YARN version does not support getSchedulerResourceTypes
- 编写函数实现员工信息录入和输出_Excel---最牛的员工档案模板,非常智能化
- oracle8i substr,Oracle中的INSTR,NVL和SUBSTR函数的用法详解
- jq 中each的用法 (share)
- 好用的Android抓包神器 VNET
- 全球及中国网络教育行业商业模式与运行前景分析报告2022版
- nc数据处理,掩膜,经纬度定位格点
- 打印驱动的安装和卸载
- DRL-FlappyBird
- typedef和define
- 二进制逆向实验——寻找flag
热门文章
- 打开服务器文件的asp代码,asp文件用什么打开
- 甘肃教师学苑2020文章代码_【重磅通知】甘肃省电化教育中心 关于聘任教育信息化研究员的通知...
- android+抓取直播源,直播rtmp源地址抓取软件
- Java集合框架——collections工具类
- sqlite3数据库报错:“打不开数据库文件”
- 自动控制理论 第一章 思维导图
- iapp退出软件按钮代码_推荐几款安卓手机开发的编程软件!
- Android 时间选择器 PickerView,的详细使用
- 使用R语言中的spgwr包进行GWR模型的相关运算
- shp格式文件出带审图号的地图