当前位置: 首页 > news >正文

Apriori 原理:快速筛选频繁出现的症状组合

先明确一个前提:什么是 “频繁项集”?

比如医生想找 “经常一起出现的症状”,假设我们规定 “至少在 2 个病人身上出现才算频繁”(这就是 “最小支持度”)。

  1. 单个症状 “发烧” 在 3 个病人身上出现 → 算 “频繁 1 项集”;
  2. 症状组合 “发烧 + 咳嗽” 在 2 个病人身上出现 → 算 “频繁 2 项集”;
  3. 如果 “发烧 + 咳嗽 + 腹泻” 只在 1 个病人身上出现 → 不算频繁。

Apriori 原理:用 “小规则” 排除 “大麻烦”

Apriori 原理就一句话:

如果一个组合不频繁,那么包含它的所有更大组合也一定不频繁”

咱们拆成两句大白话理解:

1. 先看 “反例”:不频繁的组合,它的 “放大版” 也不频繁

比如我们发现 “咳嗽 + 腹泻” 这个组合只在 1 个病人身上出现(不频繁),那么:

  1. 包含它的 “发烧 + 咳嗽 + 腹泻” → 肯定也不频繁(因为 “咳嗽 + 腹泻” 本身就少,再加上 “发烧” 只会更少);
  2. 包含它的 “咳嗽 + 腹泻 + 头痛” → 也一定不频繁。

作用:遇到 “咳嗽 + 腹泻” 这种不频繁的组合,直接把所有包含它的更大组合(3 个症状、4 个症状...)全部排除,不用再计算它们的支持度,省了很多功夫。

2. 再看 “正例”:频繁的组合,它的 “缩小版” 也一定频繁

反过来,如果 “发烧 + 咳嗽” 是频繁组合(在 2 个病人身上出现),那么它的所有 “小组合”:

  1. “发烧”(单个症状) → 一定频繁;
  2. “咳嗽”(单个症状) → 一定频繁。

作用:如果一个组合是频繁的,那它拆分后的小组合肯定也频繁,不用怀疑。

举个例子:用 Apriori 原理快速筛选项集

假设我们有 5 个症状:发烧(A)、咳嗽(B)、嗓子痛(C)、头痛(D)、腹泻(E),最小支持度是 2 次。

  1. 先找 “频繁 1 项集”:

算出单个症状的出现次数,发现 “腹泻(E)” 只出现 1 次(不频繁)→ 排除。

剩下的频繁 1 项集:{A, B, C, D}。

  1. 再找 “频繁 2 项集”:

只需要用剩下的 A、B、C、D 两两组合(比如 A+B、A+C...),计算它们的出现次数。

假设发现 “B+D”(咳嗽 + 头痛)只出现 1 次(不频繁)→ 根据 Apriori 原理,所有包含 “B+D” 的 3 项集(比如 A+B+D、B+C+D)都可以直接排除,不用计算。

  1. 继续找 “频繁 3 项集”:

只用上一步筛选出的频繁 2 项集(比如 A+B、A+C)来组合,那些包含 “不频繁 2 项集” 的 3 项集,早就被排除了,计算量大大减少。

为什么要学这个原理?

因为它能帮我们 “少做无用功”。如果没有 Apriori 原理,我们可能要计算所有可能的组合(比如 5 个症状有 31 种组合),但用这个原理,能提前排除掉大部分肯定不频繁的组合,让计算效率翻倍。

这就是 Apriori 算法的核心秘密 —— 靠这个原理 “剪枝”,从海量数据中快速挖出频繁项集,再生成有用的关联规则(比如 “发烧 + 咳嗽→感冒”)。


文章转载自:
http://bathypelagic.wjrtg.cn
http://bummer.wjrtg.cn
http://balloon.wjrtg.cn
http://afternoon.wjrtg.cn
http://boracite.wjrtg.cn
http://areometry.wjrtg.cn
http://assheaded.wjrtg.cn
http://agamy.wjrtg.cn
http://alkyl.wjrtg.cn
http://beware.wjrtg.cn
http://abdication.wjrtg.cn
http://bail.wjrtg.cn
http://acridity.wjrtg.cn
http://alphabetic.wjrtg.cn
http://cavort.wjrtg.cn
http://briticization.wjrtg.cn
http://aspirate.wjrtg.cn
http://agleam.wjrtg.cn
http://abeyance.wjrtg.cn
http://chauffeur.wjrtg.cn
http://cancelation.wjrtg.cn
http://callisection.wjrtg.cn
http://apprehensible.wjrtg.cn
http://cardiologist.wjrtg.cn
http://bedworthy.wjrtg.cn
http://appendent.wjrtg.cn
http://camping.wjrtg.cn
http://accouter.wjrtg.cn
http://argute.wjrtg.cn
http://christmassy.wjrtg.cn
http://www.dtcms.com/a/280549.html

相关文章:

  • B/S架构系统角色与对应协议详解
  • 《C++模板高阶机制解析:非类型参数、特化设计与分离编译实践》
  • CG--类比推理
  • IPsec:网络层的加密盾牌与HTTPS的差异解析
  • 尚庭公寓-----day1----逻辑删除功能
  • URL 转静态 HTML 文件 API 数据接口
  • GaussDB 数据库字符编码与兼容模式
  • 华大单片机HC32L110烧录程序方法
  • QT链接ACCESS数据库
  • Oracle 索引实战教程
  • Rust基础[part4]_基本类型,所有权
  • 编译原理第一到三章(知识点学习/期末复习/笔试/面试)
  • 正则表达式使用示例
  • 【canal+mysql+example+数据验证测试】
  • 从 0 到 1 掌握 自研企业级分布式 ID 发号器
  • C 语言(二)
  • GaussDB 数据库架构师修炼(三) 集群管理概览
  • Kafka 4.0 技术深度解析
  • 现代CSS实战:用变量与嵌套重构可维护的前端样式
  • Go 错误处理全解析:从 error 到 panic
  • Go 包管理工具详解:安装与使用指南
  • 【轨物方案】当补贴退潮,光伏电站如何回归价值本质?
  • 上公网-从内网到公网
  • 李宏毅《生成式人工智能导论》 | 第9讲 AI Agent
  • 本地电脑安装Dify|内网穿透到公网
  • 1.1 前端-vue3项目的创建
  • JS基础知识(下)
  • docker容器、宿主机、cpu核数关系
  • c# sqlsugar 主子表明细 查询
  • C语言操作符补充