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

数据挖掘6-AI总结

0. 章节导览

  • 本章覆盖:决策树贝叶斯/朴素贝叶斯惰性学习(kNN/CBR/局部回归)线性/逻辑回归模型评估与选择提升精度(集成/不平衡学习)
  • Lazy vs. Eager:惰性学习几乎不训练、预测时计算量大;急切学习先拟合一个全局假设、预测快。
  • 下面按“概念 → 公式/伪码 → 何时使用 → 计算示例”展开;所有数值算例均为自造数据,用于练手。

1. 决策树(ID3 / C4.5 / CART)

1.1 核心思想

  • 递归选择“最能提升纯度”的属性切分数据,直至叶子几乎纯净或满足停止条件(深度/最小样本/最小增益等)。

  • 常用指标:

    • 熵:H(Y)=−∑ipilog⁡2piH(Y)=-\sum_i p_i\log_2 p_iH(Y)=ipilog2pi
    • 信息增益:Gain(X)=H(Y)−∑v∣Sv∣∣S∣H(Y∣X=v)\mathrm{Gain}(X)=H(Y)-\sum_v \frac{|S_v|}{|S|}H(Y\mid X=v)Gain(X)=H(Y)vSSvH(YX=v)
    • 基尼:Gini(Y)=1−∑ipi2\mathrm{Gini}(Y)=1-\sum_i p_i^2Gini(Y)=1ipi2

连续特征:枚举候选阈值 ttt(通常在相邻有序值中点),选最优切分。
防过拟合:预剪枝(深度/叶子样本)或后剪枝(代价复杂度剪枝)。

1.2 何时使用

  • 表格型/混合型特征,需要可解释性;对尺度/缺失较稳健。
  • 若单树不稳或总体泛化差:优先随机森林/梯度提升树

1.3 计算示例:信息增益(自造)

  • 总体 10 样本:正6、负4
    H(Y)=−0.6log⁡20.6−0.4log⁡20.4=0.97095H(Y)=-0.6\log_2 0.6-0.4\log_2 0.4=0.97095H(Y)=0.6log20.60.4log20.4=0.97095
  • 候选属性 BBB 两组各5:
    组1(4正1负) H1=0.72193H_1=0.72193H1=0.72193;组2(2正3负) H2=0.97095H_2=0.97095H2=0.97095
    加权条件熵:0.5×0.72193+0.5×0.97095=0.846440.5\times0.72193+0.5\times0.97095=0.846440.5×0.72193+0.5×0.97095=0.84644
    信息增益:0.97095−0.84644=0.124510.97095-0.84644=0.124510.970950.84644=0.12451(若属性 AAA 的增益只有 0.046440.046440.04644,则选 BBB)。

2. 贝叶斯 & 朴素贝叶斯(Naïve Bayes, NB)

2.1 核心公式

  • 贝叶斯:P(y∣x)∝P(y)P(x∣y)P(y\mid x)\propto P(y)P(x\mid y)P(yx)P(y)P(xy)
  • 朴素假设(条件独立):P(x∣y)=∏jP(xj∣y)P(x\mid y)=\prod_j P(x_j\mid y)P(xy)=jP(xjy)
  • 拉普拉斯平滑(避免零概率):P(v)=count(v)+1N+KP(v)=\dfrac{\text{count}(v)+1}{N+K}P(v)=N+Kcount(v)+1KKK 为类别/取值数)

2.2 何时使用

  • 训练/预测极快、可在线增量;文本分类强基线。
  • 特征强相关时独立假设偏差增大,可做特征选择或用更复杂的贝叶斯网络。

2.3 计算示例

示例A:后验对比(自造)
先验:P(正)=0.6, P(负)=0.4P(\text{正})=0.6,\ P(\text{负})=0.4P()=0.6, P()=0.4
条件:P(晴∣正)=0.5, P(高∣正)=0.6P(\text{晴}\mid\text{正})=0.5,\ P(\text{高}\mid\text{正})=0.6P()=0.5, P()=0.6
P(晴∣负)=0.2, P(高∣负)=0.3P(\text{晴}\mid\text{负})=0.2,\ P(\text{高}\mid\text{负})=0.3P()=0.2, P()=0.3
样本 x=(晴,高)x=(\text{晴},\text{高})x=(,)
正分=0.6⋅0.5⋅0.6=0.18\text{正分}=0.6\cdot0.5\cdot0.6=0.18正分=0.60.50.6=0.18负分=0.4⋅0.2⋅0.3=0.024\text{负分}=0.4\cdot0.2\cdot0.3=0.024负分=0.40.20.3=0.024 → 判“正”。

示例B:拉普拉斯平滑(自造)
1000 条记录:low(0)、medium(990)、high(10)。
P(low)=(0+1)/(1000+3)=1/1003≈0.0010P(\text{low})=(0+1)/(1000+3)=1/1003\approx0.0010P(low)=(0+1)/(1000+3)=1/10030.0010
P(medium)=(990+1)/1003≈0.9880P(\text{medium})=(990+1)/1003\approx0.9880P(medium)=(990+1)/10030.9880
P(high)=(10+1)/1003≈0.0110P(\text{high})=(10+1)/1003\approx0.0110P(high)=(10+1)/10030.0110


3. 惰性学习:kNN / 局部加权回归 / CBR

3.1 kNN 要点

  • 度量:欧氏/余弦/马氏;可距离加权(如 wi=1/(di+ε)w_i=1/(d_i+\varepsilon)wi=1/(di+ε))减小远邻影响。
  • kkk 的偏差-方差权衡:小 kkk → 低偏差高方差;大 kkk → 高偏差低方差。
  • 高维问题:距离集中/维度灾难,需标准化、特征选择/降维、度量学习或ANN索引。

“小范围可靠,大范围不可靠”:kNN依赖局部平滑假设。邻域扩得过大时会跨越不同簇/机制,混入异质样本导致偏差飙升。

3.2 何时使用

  • 非平稳/强局部结构;小样本;或作为召回/冷启动模块。
  • 大规模低延迟线上服务通常更偏向 Eager 模型(树/逻辑回归/GBDT)。

3.3 计算示例(自造)

训练点:(1,1)+(1,1)+(1,1)+, (2,2)+(2,2)+(2,2)+, (3,3)−(3,3)-(3,3), (6,6)−(6,6)-(6,6), (7,7)−(7,7)-(7,7)
查询 q=(2.5,2.5)q=(2.5,2.5)q=(2.5,2.5)

  • (2,2)(2,2)(2,2)(3,3)(3,3)(3,3) 距离均 ≈0.7071\approx0.70710.7071;与 (1,1)(1,1)(1,1) 距离 ≈2.1213\approx2.12132.1213
  • k=3k=3k=3 多数投票:邻居标签 +,−,++,-,++,,+ → 判 +++
  • 距离加权(w=1/(d+ε)w=1/(d+\varepsilon)w=1/(d+ε))同样判 +++

3.4 CBR(案例推理)

  • 符号/结构化案例库,强调检索适配;关键在相似度与索引设计(知识密集领域常见,如客服/法律)。

4. 线性/逻辑回归

4.1 模型与目标

  • 逻辑回归:
    p^(y=1∣x)=σ(z),z=w⊤x+b,σ(t)=11+e−t \hat{p}(y=1\mid x)=\sigma(z),\quad z=w^\top x+b,\quad \sigma(t)=\frac1{1+e^{-t}} p^(y=1x)=σ(z),z=wx+b,σ(t)=1+et1
  • 目标:最大化对数似然(等价最小化交叉熵);用(批/小批/随机)梯度下降及其变体优化;配合 L1/L2L_1/L_2L1/L2 正则抑制过拟合。

4.2 何时使用

  • 概率输出可解释、适配大规模稀疏特征(配合正则与特征工程)。
  • 非线性强时可加特征交叉、核方法或改用树/GBDT/深度模型。

4.3 计算示例:一次更新(自造)

单样本 (x=2,y=1)(x=2, y=1)(x=2,y=1),初始 w=0,b=0w=0, b=0w=0,b=0,学习率 η=0.1\eta=0.1η=0.1
p^=σ(0)=0.5\hat{p}=\sigma(0)=0.5p^=σ(0)=0.5
∂ℓ∂w=(p^−y)x=(0.5−1)⋅2=−1\frac{\partial \ell}{\partial w}=(\hat{p}-y)x=(0.5-1)\cdot2=-1w=(p^y)x=(0.51)2=1
∂ℓ∂b=p^−y=−0.5\frac{\partial \ell}{\partial b}=\hat{p}-y=-0.5b=p^y=0.5
更新:w←0−0.1(−1)=0.1,b←0−0.1(−0.5)=0.05w\leftarrow0-0.1(-1)=0.1,\quad b\leftarrow0-0.1(-0.5)=0.05w00.1(1)=0.1,b00.1(0.5)=0.05


5. 模型评估与选择

5.1 指标与工具

  • 混淆矩阵(二分类):
预测 +预测 −
真实 +TPFN
真实 −FPTN
  • Accuracy、Precision、Recall、F1、Specificity(特异度)、ROC-AUC/PR-AUC。
  • 数据切分:Holdout、分层 k 折交叉验证、Bootstrap。

5.2 计算示例:由混淆矩阵到指标(自造)

设 TP=45、FP=5、FN=15、TN=35(总计 100):

  • Accuracy = (45+35)/100=0.80(45+35)/100=0.80(45+35)/100=0.80
  • Precision = 45/(45+5)=0.9045/(45+5)=0.9045/(45+5)=0.90
  • Recall = 45/(45+15)=0.7545/(45+15)=0.7545/(45+15)=0.75
  • F1 = 2⋅0.90⋅0.75/(0.90+0.75)=0.8182\cdot0.90\cdot0.75/(0.90+0.75)=0.81820.900.75/(0.90+0.75)=0.818
  • Specificity = 35/(35+5)=0.87535/(35+5)=0.87535/(35+5)=0.875

6. 提升精度:集成学习 & 不平衡学习

6.1 随机森林(RF)

  • Bagging(自助采样) + 特征子采样(结点随机子集);全树生长、投票决策。
  • 主要降方差、抗噪稳健、默认强基线(表格数据)。

6.2 梯度提升树(GBDT / XGBoost)

  • 加性模型,逐步拟合残差/梯度;带正则、可并行、对稀疏/缺失友好。
  • 重要超参:树深、叶子最小样本、学习率、树数、列/行采样。

6.3 不平衡学习

  • 采样:上采样少数类、下采样多数类、合成少数类(如 SMOTE 思想)。
  • 算法层:类别权重/代价敏感、阈值平移、与集成结合。
  • 评估:更关注 PR-AUC/Recall/F1/ROC-AUC,不要盲信 Accuracy。

6.4 代价敏感的最优阈值(自造)

若误报成本 cFPc_{FP}cFP、漏报成本 cFNc_{FN}cFN,当
p^(y=1∣x)>cFPcFP+cFN \hat{p}(y=1\mid x)>\frac{c_{FP}}{c_{FP}+c_{FN}} p^(y=1x)>cFP+cFNcFP
时判为正可最小化期望代价。
cFN=5, cFP=1⇒t∗=1/6≈0.167c_{FN}=5,\ c_{FP}=1\Rightarrow t^*=1/6\approx0.167cFN=5, cFP=1t=1/60.167(显著降低阈值以提升召回)。


7. Lazy vs. Eager 的工程抉择

  • Lazy(kNN/CBR/局部回归):训练几乎零成本、预测慢;以大量局部模型形成隐式全局近似,假设空间更丰富。
  • Eager(树/NB/逻辑回归/集成):先学习一个全局假设,预测快、易部署。
  • 常见流水线召回用 Lazy(近邻/相似检索),重排用 Eager(GBDT/LogReg/NN)。

8. 复习清单(按题型速记)

概念题

  • 解释树的分裂准则(熵/信息增益/基尼)与剪枝必要性。
  • 说明朴素贝叶斯的独立性假设利弊与平滑的作用。
  • 比较 Lazy/Eager 在训练/预测开销与假设空间上的差异。

计算题

  • 手算熵/信息增益(见 §1.3)。
  • 手算 NB 后验与判别(见 §2.3A)。
  • 给定点集与查询点,算 kNN 距离/投票(见 §3.3)。
  • 由混淆矩阵算 Precision/Recall/F1/Specificity(见 §5.2)。
  • 代价敏感最优阈值 t∗=cFP/(cFP+cFN)t^*=c_{FP}/(c_{FP}+c_{FN})t=cFP/(cFP+cFN)(见 §6.4)。

9. 常见坑 & 实战建议

  • kNN:特征标准化是硬性要求;高维做特征选择/降维/度量学习;用距离加权自适应邻域减少远邻污染。
  • NB:极度不平衡时先验/平滑/阈值影响大;文本任务常很强。
  • 树/森林/提升:优先调树深、叶子最小样本、列/行采样、学习率和树数;用 OOB/交叉验证防过拟合。
  • 评估:不平衡任务更看 PR/Recall/F1/ROC-AUC;必要时阈值调优类别权重

附:练习题(自造,含答案)

1)信息增益(12 样本,正7负5;属性 X 二分:组1(5:4正1负),组2(7:3正4负))

  • H(Y)H(Y)H(Y);② Gain(X)\mathrm{Gain}(X)Gain(X)
    答案H(Y)=0.9799H(Y)=0.9799H(Y)=0.9799H(Y∣X)=0.9183H(Y\mid X)=0.9183H(YX)=0.9183Gain(X)=0.0616\mathrm{Gain}(X)=0.0616Gain(X)=0.0616

2)朴素贝叶斯(先验 P(正)=0.4P(\text{正})=0.4P()=0.4P(A=1∣正)=0.7, P(B=1∣正)=0.6P(A{=}1\mid\text{正})=0.7,\ P(B{=}1\mid\text{正})=0.6P(A=1)=0.7, P(B=1)=0.6P(A=1∣负)=0.2, P(B=1∣负)=0.3P(A{=}1\mid\text{负})=0.2,\ P(B{=}1\mid\text{负})=0.3P(A=1)=0.2, P(B=1)=0.3;样本 A=1,B=1A{=}1,B{=}1A=1,B=1
答案:正分 =0.4⋅0.7⋅0.6=0.168=0.4\cdot0.7\cdot0.6=0.168=0.40.70.6=0.168;负分 =0.6⋅0.2⋅0.3=0.036=0.6\cdot0.2\cdot0.3=0.036=0.60.20.3=0.036 → 判正。

3)kNN(点集:(0,0)+,(1,0)+,(0,1)+,(3,3)−,(4,3)−,(3,4)−(0,0)+,(1,0)+,(0,1)+,(3,3)-,(4,3)-,(3,4)-(0,0)+,(1,0)+,(0,1)+,(3,3),(4,3),(3,4);查询 q=(1.2,0.9)q=(1.2,0.9)q=(1.2,0.9)k=3k=3k=3
答案:最近三个近似为 (1,0)(1,0)(1,0)(0,1)(0,1)(0,1)(0,0)(0,0)(0,0)(全为 +)→ 判 +++

4)混淆矩阵指标(TP=50, FP=10, FN=20, TN=20)
答案:Accuracy=0.70;Precision=0.833;Recall=0.714;F1=0.769;Specificity=0.667。

5)代价敏感阈值cFN=8, cFP=1c_{FN}=8,\ c_{FP}=1cFN=8, cFP=1
答案t∗=1/(1+8)=1/9≈0.111t^*=1/(1+8)=1/9\approx0.111t=1/(1+8)=1/90.111;更低阈值→召回↑、精度↓,适合漏报代价高场景。

http://www.dtcms.com/a/569283.html

相关文章:

  • 网站首页域名如何设置访问快宿迁沭阳网站建设
  • 数据结构 —— 栈
  • 微信小程序开发案例 | 个人相册小程序(下)
  • 网站域名账号网址申请注册
  • 电商 API 数据交互最佳实践:JSON 格式优化、数据校验与异常处理
  • 重庆网站建设 沛宣织梦cms 官方网站
  • 零基础新手小白快速了解掌握服务集群与自动化运维(十七)ELK日志分析模块--Elasticsearch介绍与配置
  • 如何使用elasticdump进行elasticsearch数据还原
  • 【运维记录】Centos 7 基础命令缺失
  • 手写 RPC 框架
  • etcd 高可用分布式键值存储
  • 【ETCD】ETCD单节点二进制部署(TLS)
  • 小网站 收入请简述网站制作流程
  • 抗辐照MCU芯片在无人叉车领域的性能评估与选型建议
  • 什么是LLM?
  • Java/PHP源码解析:一站式上门维修服务系统的全栈实现
  • MPU6050 DMP 移植中 mpu_run_self_test () 自检失败的原因与解决方法
  • 系统端实现看门狗功能
  • 算法--二分查找(二)
  • 没有网站备案可以做诚信认证嘛商城网站大概多少钱
  • 保定市场产品投放策略分析
  • Linux网络——连接、TCP全连接队列TCPdump抓包
  • Firefox 浏览器:引领网络浏览新时代
  • 【个人成长笔记】解决在Linux/Windows系统中 git pull 之后提示有未提交的更改错误信息(亲测有效)
  • 分布式训练一站式入门:DP,DDP,DeepSpeed Zero Stage1/2/3(数据并行篇)
  • 优化网站的目的佛山标书设计制作
  • Slurm:高性能计算集群的调度利器
  • Qt 开发终极坑点手册图表版本
  • 2019阿里java面试题(一)
  • 云手机与云服务器之间的关系