Apriori算法通俗详解_fpgrowth2_关联分析评估
20220317
https://blog.csdn.net/a790439710/article/details/103080674
支持度,置信度各指标再理解
条件模式基:在某元素比如y出现的前提下,其所有对应路径父节点构成的树
条件fp数:在某元素比如y出现的前提下,筛选所有对应路径上所有满足最小值支持度的父节点
规则就是筛选出的所有满足父节点和条件节点的随意Cm取n的任意组合?
结果数据,可用于购物车当用户把前项商品加入购物车之后,给其推荐所有的后项
加入20%的同类目?的新品比例,比例可调 首先新产品怎么定义推荐什么样策略的新产品
推荐生意参谋里面价格低的商品?
20220312
药店订单和处方不一样,每次订单之间的药应该是比较随机的,应该是比较依赖于库存
而不是药之间的联系
按用户类型对订单分类进行规则抽取的时候,如果定同一套阈值对某些类别会显的过小(跑不出)
反之,有些则显得过大 不仅仅是要 A–B这种规则,ABC-D也需要
最后运用的时候 按前项groupby 再按后项排序 尽量把前项和后项所有的都展示到一起
总的规则条数最好占原本总记录的80%
https://blog.csdn.net/qq_23860475/article/details/90748080
pyspark-fpgrowth
最小支持度
用户或专家定义的衡量支持度的一个阈值,表示项集在统计意义上的最低重要性
一般5%,10%,20%? 一对商品同时出现的频次占总购买记录的比率
平均每天客户数的20%,也就是总的 20% 取0.2?
FP-growth算法比Apriori算法快一个数量级,在空间复杂度方面也比Apriori也有数量级级别的优化。但是对于海量数据,FP-growth的时空复杂度仍然很高,可以采用的改进方法包括数据库划分,数据采样等等。
20220307
最小支持度默认最小为2,也就是至少要出现两次
20220215
python fpgrowth只有支持度的筛选
kulc的计算涉及到 P(B|A)和P(A|B)
P(B|A) = P(A,B)/P(A)
P(A|B) = P(A,B)/P(B)
最终牵扯到 count(A),count(B) 和 count(ab)
因为分子分母两个概率都有共同的分母,所以可以用绝对值代替
不平衡比的计算也是最终牵扯 最终牵扯到 count(A),count(B) 和 count(ab)
最终的评估标准 ###########################
1.kluc不等于0.5的时候且大于0.8的时候规则保留
2.kluc不等于0.5的时候且小于0.8的时候规则舍弃
3.当kluc等于0.5的时候且平衡比等于0的时候可以不要这个规则(舍弃)表明二者关系中性
4.当kluc等于0.5的时候且平衡比不等于0的时候,取支持度大的那个值 也就是max( confidence(ab),confidence(ba))中大的那个
最终只剩下 x–>y x–>z 这种至于 x -->y,z 这种就加上看 y–>z 是否成立
对于x的所有结果就按所有结果的confidence大小从高到低排序
kluc和不平衡比结合使用的方法
##############
https://blog.csdn.net/songbinxu/article/details/80411388
https://github.com/SongDark/FPgrowth
FP-growth 算法与Python实现 主要参考代码 重点
https://www.cnblogs.com/datahunter/p/3903413.html
关联分析:FP-Growth算法
置信度
kulc和IR在支持度筛选过后就可以开始计算了
这两个指标和置信度一起对规则进行筛选
置信度是在频繁项集的基础上进行筛选
20220214
分子是同时出现
分母是每个元素单独出现概率的乘积
可以立即为因为x的出现使得y出现概率的变化的情况
sup(Y)是没有x的影响,conf(XUY)是由于x出现对y出现的影响
一般在数据挖掘中当提升度大于 3 时,我们才承认挖掘出的关联规则是有价值的。
他可以用来评估一个出现提升另外一个出现的程度。
https://mp.weixin.qq.com/s/Iauw1KbCHVX5PiKY_BAaJQ
各指标的计算 重点
事务即购买记录,每天的订单购买记录
支持度,置信度,kulc,不平衡的案例计算
支持度是概率,置信度是两个概率的比值并不是绝对值?
分子分母中的分数都去掉分母,结果就是绝对值
https://www.cnblogs.com/fengfenggirl/p/associate_measure.html
各指标的计算
数据挖掘概念与技术
关联规则推荐评估
https://mp.weixin.qq.com/s/1SxQLVXu66tZhOwTenFuDw
各指标的计算 重点
提升度计算
20211116
https://blog.csdn.net/baixiangxue/article/details/80335469
FP-growth算法理解和实现
https://blog.csdn.net/weixin_38636668/article/details/90265533
fpgowth流程步骤
条件模式基问题视频
20210906
https://blog.csdn.net/TechFlow/article/details/106116139
fp-growth python代码实现
E:\BiliDown\下载保存目录\哔哩哔哩视频\shangguigu\哔哩哔哩视频\空城计算器\数据挖掘期末必考计算题之FP growth,看这个就过了
1.每一行都去重
2.全部扫描 所有元素按频次从高到低排序
3.fp-list 按频次从高到低从左往右排序,且每一行的元素按频次高低的元素顺序排序
4.每一行 取出不满足最小支持度的元素
5.在4的基础上画出fp树 头结点连接每个元素第一次出现的位置
6. 第一行 K E M O Y 从上往下第一条线
第二行 K E O Y 元素O没有连上之前的M 从开一条线
依次类推
7. 在不同分支上的同种元素 虚线连接
8. 按频次倒序排序 求出每个元素的 条件模式基 就是求其各条线上 其所有父节点练成的线 并包括每个父节点的频次 并剔除不满足最小支持度的项目 最后条件模式基里面的元素再分别
和 项 组成 频繁二项,三项,… n项集等
9.支持度和置信度的计算同apriori
条件模式基:当前节点之前的所有节点
算法实现:
/**
- FPGrowth算法的主要思想:
- 构造频繁1项集:遍历初始数据集构造频繁1项集,并作为项头表,建立将指向fpTree节点对应元素的引用
- 构造FPTree:再次遍历初始数据集,对于每一条事务中的元素,根据频繁1项集中元素的顺序排序,
- 由此建立FPTree,记录每条事务的节点在同一条路径上出再的节点次数;
- 逆序遍历在步骤1中构造的项头表,根据其提供的引用指针,找出fpTree中由该节点到根节点的路径,
- 即生成每个频繁元素的条件模式基
- 4. 根据每个频繁元素对应的条件模式基,生成其对应的条件fpTree,并删除树中节点记数不满足给定的最小支持度的节点
- 5. 对于每一颗条件fpTree,生成所有的从根节点到叶子节点的路径,由路径中的集合生成其所有非空子集
- 所有这些非空子集和每一个频繁1项集中的元素共同构成了原始数据集中的频繁集
*/
20210817
频繁k项集不满足要求 其k+1项集 肯定不满足要求
k+1项集是频繁项集 那么其 所有的k项集都一定是频繁项集
https://blog.csdn.net/lbweiwan/article/details/82725466
Apriori算法
支持度: 分子为同时出现的计数 分母为总的记录条数
置信度 分子为同时出现的计数 分母为 其中一部分出现的总的计算
最后的规则为 只需要再重新计算 每条规则的置信度就可以了
Apriori算法通俗详解_fpgrowth2_关联分析评估相关推荐
- Apriori算法通俗详解_fpgrowth_关联
20210817 频繁集:满足频率阈值的项集合 支持度:就是阈值 https://blog.csdn.net/u014407826/article/details/53375274 Apriori算法 ...
- openCV中的findHomography函数分析以及RANSAC算法的详解(源代码分析)
本文将openCV中的RANSAC代码全部挑选出来,进行分析和讲解,以便大家更好的理解RANSAC算法.代码我都试过,可以直接运行. 在计算机视觉和图像处理等很多领域,都需要用到RANSAC算法.op ...
- EMD算法之Hilbert-Huang Transform原理详解和案例分析
目录 Hilbert-Huang Transform 希尔伯特-黄变换 Section I 人物简介 Section II Hilbert-Huang的应用领域 Section III Hilbert ...
- 【实用算法教学】——Apriori算法,教你使用亲和性分析方法推荐电影
本文学习如何用亲和性分析方法找出在什么情况下两个对象经常一起出现.通俗来讲,这也 叫"购物篮分析",因为曾有人用它找出哪些商品经常一起出售. 前一篇文章关注的对象为球队,并用特征描 ...
- CRF(条件随机场)与Viterbi(维特比)算法原理详解
摘自:https://mp.weixin.qq.com/s/GXbFxlExDtjtQe-OPwfokA https://www.cnblogs.com/zhibei/p/9391014.html C ...
- 【JY】YJK前处理参数详解及常见问题分析(五):风荷载信息
点击蓝字 求求关注 [风荷载信息详解] 一.基本参数 A区参数详解 1.执行规范 选择所执行的规范. 2.地面粗糙度类别 分为A.B.C.D四类. 3.修正后的基本风压 这里所说的修正后的基本风压, ...
- TOPSIS(逼近理想解)算法原理详解与代码实现
写在前面: 个人理解:针对存在多项指标,多个方案的方案评价分析方法,也就是根据已存在的一份数据,判断数据中各个方案的优劣.中心思想是首先确定各项指标的最优理想值(正理想值)和最劣理想值(负理想解),所 ...
- JavaScript数据结构与算法——列表详解(上)
列表是一组有序的数据,每个数组中的数据项称为元素.数组相关知识不够了解的伙伴可以阅读本人上篇博客在JavaScript中,列表的元素可以是任意数据类型.列表中可以保存不定数量的元素,实际使用时元素的数 ...
- [转]数据结构KMP算法配图详解(超详细)
KMP算法配图详解 前言 KMP算法是我们数据结构串中最难也是最重要的算法.难是因为KMP算法的代码很优美简洁干练,但里面包含着非常深的思维.真正理解代码的人可以说对KMP算法的了解已经相当深入了.而 ...
最新文章
- 观点 | 哈哈,TensorFlow被吐槽了吧
- 大数据flume日志采集系统详解
- 在Servlet中处理表单提交的数据
- Java 技术之垃圾回收机制
- 新基建来了!5G边缘计算如何展现勃勃生机?
- php 10进制位数保持,php 任意进制的数转换成10进制功能实例
- 机智云产品、功能、服务一览表
- C语言霍夫曼编码压缩,数据结构大作业——哈夫曼编码压缩BMP格式文件
- 影响摄像头移动侦测灵敏度因素
- opencv 实现等值线_绘制等值线
- python代码错误有哪些_Python常见十六个错误集合,你知道那些?
- h5底部输入框被键盘遮挡_总结几个移动端H5软键盘的大坑【实践】
- 嵌入式Linux:移植USB接口的RTL8188EUS、RTL8188ETV WIFI模块
- 基于android的线上教育app
- 做自媒体1年投资4百W亏损370W,自媒体的水太深
- 音频标准AES的一点理解
- python画e指数函数_python实现画出e指数函数的图像
- 统一用户权限管理系统
- 测量学计算机,顾孝烈测量学第4版课后习题答案解析
- 【SQL触发器】Inserted和deleted详解