《机器学习(第2版)》第1~6章 考前速记
按"高频考点"整理,覆盖定义、分类、公式、算法步骤与对比,适合考前快速过一遍。
第1章 机器学习基础
1.1 机器学习的定义与核心要素
- 机器学习定义(Tom Mitchell,1997):对某类任务 T 和性能度量 P,若一个计算机程序在 T 上以 P 度量的性能随着经验 E 而自我完善,就称这个程序在从经验 E 学习。
- 核心要素:数据、算法、模型。
- 理论基础:概率论、数理统计、线性代数、数学分析、数值逼近、最优化理论、计算复杂理论。
1.2 机器学习五大学派(高频)
| 学派 |
来源 |
核心方法/代表 |
| 符号主义 |
逻辑学、哲学 |
符号表示知识 + 规则推理;专家系统、知识工程 |
| 贝叶斯分类 |
概率论(贝叶斯定理) |
条件概率分类;情感分类、垃圾邮件过滤 |
| 联结主义 |
神经科学 |
神经网络;BP算法 |
| 进化计算 |
达尔文进化论 |
遗传算法、进化策略;基因编码+种群+交叉变异 |
| 行为主义 |
心理学(行为主义理论) |
强化学习;环境反馈→策略优化 |
1.3 机器学习、人工智能、数据挖掘的关系
- 数据挖掘:目标是处理真实业务数据促进决策;常见任务:异常检测、关联规则学习、聚类、分类、回归。
- 机器学习:让机器模仿人类学习获得知识,是AI的核心技术与实现手段,深度学习是机器学习的子集。
- 人工智能:借助机器学习和推理形成具体智能行为;分为计算智能、感知智能、认知智能三层次,目前处于"弱人工智能"阶段。
- 三者关系:机器学习是AI的一个分支;数据挖掘的很多算法来自机器学习与统计学,二者交集越来越大。
1.4 数据挖掘五大常见任务
- 异常检测:识别不符合预期模式的样本(又叫离群值、偏差、例外),用于入侵检测、欺诈检测、疾病检测。
- 关联规则学习:发现变量间的强规则(如购物篮分析 {面包,牛奶}→{酸奶})。
- 聚类:探索性分析,按相似性分簇。
- 分类:根据已知特征判断新样本类别。
- 回归:研究自变量与因变量关系,找误差最小的拟合函数。
1.5 机器学习三大学习方式
| 类型 |
特点 |
常见算法 |
| 有监督学习 |
从有标记数据学习模型 |
分类:逻辑回归、决策树、KNN、随机森林、SVM、朴素贝叶斯;数值预测:线性回归、KNN、GBDT、AdaBoost |
| 无监督学习 |
输入样本无标记,自动学习特征 |
聚类、关联分析;神经网络中的SOM、ART |
| 强化学习 |
观察动作-环境反馈学习策略 |
源于行为主义,目标最大化预期利益 |
"没有免费的午餐"原则:不存在在任何情况下都表现最优的算法,需用多种方法训练比较后选择最优。
1.6 五大分类算法概览(第3、6、7、8章详述)
- 决策树:叶节点=类别,非叶节点=属性测试,分支=属性取值结果。主要算法:ID3、C4.5、C5.0、CART、CHAID;集成:随机森林、GBDT、AdaBoost、XGBoost、LightGBM。
- SVM:低维线性不可分→高维线性可分;结构风险最小化找最宽分类边界;核函数避免维度灾难;适合小样本、二分类。
- KNN:基于向量空间模型,计算与新样本最近的k个样本,多数投票决定类别。常用距离:欧氏、曼哈顿、切比雪夫、闵可夫斯基、马氏、汉明、余弦、杰卡德、皮尔逊相关系数。
- 缺点:①类别不平衡时误差大;②需遍历全部训练集,效率低;③k值选择影响大;④无权重概念,特征同等权重易产生误差。
- 贝叶斯网络:基于贝叶斯定理的有向图模型,节点=变量,有向弧=概率关系,可双向推理;节点多时常退化为朴素贝叶斯降低复杂度。
- 神经网络:输入层-隐层-输出层;前向传播得输出,反向传播逐层修正权重和偏置;对训练集数量和质量敏感,需数据标准化、去重、去异常。
1.7 聚类算法五大类概览(第4章详述)
| 类型 |
思想 |
代表算法 |
| 基于划分 |
距离划分为k个簇,迭代至中心收敛 |
k-均值、k-medoids、k-prototype |
| 基于密度 |
密度大于阈值则合并为簇,可过滤噪声,簇可任意形状 |
DBSCAN、OPTICS |
| 基于层次 |
自底向上聚合或自顶向下分裂,B+树思想 |
BIRCH、CURE |
| 基于网格 |
划分网格单元后聚类,与样本量无关 |
STING、CLIQUE |
| 基于模型 |
假设数据满足某分布模型 |
GMM(统计)、SOM(神经网络) |
1.8 关联分析三大算法
- Apriori:先生成所有频繁项集,再构造满足最小置信度的规则;需多次扫描数据集,大数据下效率低。
- FP-growth:韩家炜提出,仅扫描两次、不用候选项集,按支持度构造FP树,比Apriori快约一个数量级。
- Eclat:深度优先、垂直数据表示,"倒排"思想(项目→事务ID),求交集计算支持度,但时间/空间复杂度高。
1.9 回归分析五种类型
| 类型 |
特点 |
| 线性回归 |
自变量连续,直线建模;对异常值敏感;多重共线性/自相关/异方差影响大;常用逐步回归(前进法/后退法)选变量 |
| 逻辑回归 |
输出概率值,Sigmoid映射到[0,1],用于分类 |
| 多项式回归 |
拟合曲线关系,易过拟合 |
| 岭回归 |
在最小二乘基础上加L2惩罚,舍弃无偏性换稳健性,适合共线性数据 |
| LASSO回归 |
加L1惩罚,同时做变量筛选与复杂度调整,擅长多重共线性/含噪数据 |
1.10 深度学习模型速览
- RBM(受限玻尔兹曼机):层间有连接、层内无连接,基于能量函数,随机神经元解释概率图模型。
- DBN(深度信念网络):辛顿2006年提出,由多个RBM堆叠,可见神经元接收输入、隐神经元提取特征。
- LSTM:RNN变体,"门"结构控制长短期记忆,缓解梯度衰减,适合NLP/翻译。
- CNN:卷积=数据与卷积核内积,提取特征并大幅降低计算量,图像识别/文本分类常用。
- 数据集划分经验比例:训练集:验证集:测试集 ≈ 6:2:2。
1.11 机器学习流程七步(高频简答)
- 明确目标任务——定性问题用分类,定量问题用回归;细分用聚类,找关联用关联分析。
- 收集数据——数据要有代表性、覆盖性,注意样本不平衡、数据量级评估。
- 数据预处理——归一化、离散化、缺失值处理、去共线性;数据探索发现噪声/分布问题。
- 数据建模——特征选择(相关系数、卡方检验、互信息、条件熵),划分训练集/测试集/验证集。
- 模型训练——调超参数,要求对算法原理理解深入。
- 模型评估——测试集评估泛化能力;过拟合→正则化/增加数据/降低复杂度;欠拟合→增加特征/提高复杂度;常用交叉验证、学习曲线。
- 模型应用——工程结果导向,关注准确度、时间复杂度、空间复杂度、稳定性。
第2章 机器学习基本方法
2.1 统计分析基础概念
- 总体/样本/推断/推断可靠性:总体=研究对象全体;样本=从总体随机抽取的子集;推断=用样本信息判断总体特征;推断可靠性=对推断结果的概率确认。
- 统计分析两大类:描述性统计(整理分析数据分布得结论)、推断性统计(参数估计 + 假设检验)。
- 输入空间/特征空间/输出空间:输入输出所有可能取值集合分别为输入/输出空间;特征向量构成的空间为特征空间。
- 假设空间:输入到输出的映射构成的集合,训练即从中选最优模型;监督学习模型分概率模型 p(y|x) 和非概率模型 y=f(x)。
- 均值/标准差/方差/协方差:
- 方差 = 标准差的平方;
- 协方差 Cov(x,y) 衡量两变量关系:正值→正相关,负值→负相关,0→统计独立;
- 协方差矩阵:对称矩阵,对角线为各维度方差。
- 超参数 vs 模型参数:超参数(如学习率、正则化因子)人工设定/启发式调整;模型参数(如线性回归系数)由训练数据拟合得到。
2.2 损失函数与风险函数(高频)
| 损失函数 |
公式要点 |
| 0-1损失 |
预测错=1,预测对=0;不考虑误差程度 |
| 平方损失 |
(y-f(x))²,非负、放大差值 |
| 绝对损失 |
|y-f(x)| |
| 对数损失 |
-log₂p(y|x),基于最大似然思想 |
- 经验风险:训练集上损失函数的均值;样本量趋于无穷时,经验风险→期望风险(大数定律)。
- 结构风险最小化(SRM):经验风险 + 正则化项 λJ(f),防止小样本下过拟合;J(f)越大模型越复杂;当损失函数为对数损失且模型复杂度由先验概率表示时,结构风险最小化 ⟺ 最大后验概率估计。
2.3 正则化与交叉验证(高频)
- L0正则化:限制非0元素个数,使参数稀疏;NP困难问题,常被L1/L2替代。
- L1正则化:参数绝对值之和(|w|),可产生稀疏解,是L0的最优凸近似,适合特征选择、大数据、样本不均衡。
- L2正则化:参数平方和,不产生稀疏解但参数趋近0,使损失函数变强凸,加快梯度下降收敛;准确度高但训练时间长。
交叉验证四种方式对比:
| 方法 |
做法 |
特点 |
| Holdout检验 |
随机分训练/测试两部分 |
简单,严格意义上不算交叉验证 |
| 简单交叉验证 |
随机分两部分,多条件训练选误差最小模型 |
|
| k折交叉验证 |
分k份,k-1份训练、1份测试,重复k次取平均 |
k越大偏误越小但计算量越大,常取k=10 |
| 留一交叉验证 |
k=N(样本数),每次留1个测试 |
结果可靠但计算成本极高 |
2.4 常见概率分布
| 分布 |
要点 |
| 均匀分布 |
概率等距分布,连续/离散两种 |
| 正态分布N(μ,σ²) |
集中性、对称性、变动性;μ决定中心,σ决定陡峭程度 |
| t分布 |
小样本、方差未知时估计均值;自由度越大越接近正态;改进了Z检验 |
| 卡方分布χ² |
k个独立标准正态变量平方和;用于拟合优度检验、独立性检验 |
| F分布 |
非对称、两个自由度,用于似然比检验 |
| 二项分布 |
n次伯努利试验成功次数;n=1时为0-1分布 |
| 0-1分布 |
单次试验,发生概率p、不发生1-p |
| 泊松分布 |
单位时间内随机事件发生次数(如服务器请求数) |
2.5 参数估计三方法对比(高频)
| 方法 |
思想 |
| 最大似然估计(MLE) |
找θ使p(X|θ)最大,不依赖先验知识,点估计,小样本不准确 |
| 贝叶斯估计 |
结合先验p(θ)与观测数据,求后验分布p(θ|X) |
| 最大后验估计(MAP) |
求使p(θ|X)最大的θ,等价于max{p(X|θ)p(θ)},比贝叶斯估计计算量小 |
先验概率p(θ)确定→用MAP或贝叶斯估计;无先验信心→用MLE。
2.6 假设检验
- 原假设H0 vs 备择假设H1:H0是检验对象(研究者认为可能成立的看法),H1是对立看法。
- 流程:提出H0、H1 → 确定显著性水平α → 选检验统计量并确定拒绝域 → 抽样计算统计量 → 落在拒绝域则拒绝H0。
- 显著性检验:基于"小概率反证法",偏离达到显著程度则拒绝H0,α称为显著性水平;也叫拟合优度检验。
2.7 线性回归评价指标(高频公式)
- SST(总偏差平方和)= Σ(yᵢ-ȳ)² ——反映因变量整体波动
- SSR(回归平方和)= Σ(ŷᵢ-ȳ)² ——回归方程能解释的波动
- SSE(残差平方和)= Σ(ŷᵢ-yᵢ)² ——回归方程不能解释的波动
- 关系:SST = SSR + SSE
- R² = SSR/SST = 1 - SSE/SST,取值[0,1],越接近1拟合越好
- 调整R²:对非显著变量给惩罚,比R²更适合多元回归评价
- 多元线性回归矩阵解:θ̂ = (XᵀX)⁻¹XᵀY
2.8 正则化回归对比(高频)
| 回归 |
损失函数惩罚项 |
退化关系 |
| 岭回归 |
λΣθⱼ² (L2) |
— |
| LASSO回归 |
λΣ|θⱼ| (L1) |
— |
| 弹性网络 |
λ₁Σθⱼ² + λ₂Σ|θⱼ| |
λ₂=0→岭回归;λ₁=0→LASSO |
非线性回归常见变量变换:y=x/(ax+b) → 令y₁=1/y, x₁=1/x 得 y₁=a+bx₁;y=axᵇ → 取对数 lny=lna+blnx。
2.9 逻辑回归(高频)
- 求解三步:①确定预测分类函数h(x);②构造损失函数L(θ);③用梯度下降求L(θ)最小值。
- Sigmoid函数:σ(z) = 1/(1+e⁻ᶻ),输出(0,1),>50%判为类别1。
- 损失函数:对数损失 L(ŷ,y) = -[y·log₂ŷ + (1-y)·log₂(1-ŷ)]
- 评估指标:AUC(曲线下面积)。
2.10 判别分析:LDA vs QDA(高频对比)
| 对比项 |
LDA |
QDA |
| 协方差矩阵假设 |
各类共用同一协方差矩阵 |
各类协方差矩阵不同 |
| 边界 |
线性边界 |
二次(非线性)边界 |
| 适用场景 |
协方差矩阵难估计准确(样本少);方差低 |
样本量大或类间协方差差异大;相对误差更低 |
LDA降维步骤:①计算各类样本均值向量;②计算类内散度矩阵Sw和类间散度矩阵Sb;③求Sw⁻¹Sb的特征值/特征向量;④按特征值排序选前k个构成投影矩阵U;⑤Y=XU得到新空间样本。
- PCA vs LDA:PCA无监督,降维数k<n任意选;LDA有监督,与类别数C相关,最多降到C-1维;LDA前常先做PCA保证Sw矩阵正定。
2.11 降维方法对比(高频)
| 方法 |
类型 |
要点 |
| PCA |
线性、无监督 |
求协方差矩阵特征值/特征向量,取最大k个对应方向投影;步骤:去均值→求协方差矩阵C=(1/m)XXᵀ→特征值分解→取前k个特征向量→Y=PX |
| SVD |
线性 |
A=USVᵀ,解决PCA在数据量大时协方差矩阵求解低效问题 |
| LDA |
线性、有监督 |
见2.10 |
| LLE(局部线性嵌入) |
非线性流形 |
假设数据是高维空间中嵌入的低维流形;步骤:①找k近邻②计算局部重建权重矩阵③由权重和近邻算输出值;不适用于封闭球面数据 |
| 拉普拉斯特征映射(LE) |
非线性、基于图 |
相似点在降维后空间也接近;步骤:①KNN构无向图②构权重矩阵③求Ly=λDy的最小m个非零特征值对应特征向量 |
2.12 特征工程三部分
- 特征构造:人工根据数据特点构造新特征(显式/隐式运算);文本/图像需转数值(词袋、独热编码、Word2Vec、GloVe、BERT等)。
- 特征选择:剔除冗余特征,常见方法——皮尔逊相关系数、卡方检验、方差选择法、互信息法(过滤法);递归特征消除法(封装法,贪心);基于树模型的特征选择(嵌入法,一次训练完成)。
- 特征提取:转换原特征生成新特征,如LSA(基于SVD探索词-文档话题关系)、深度学习逐层特征提取。
2.13 模型训练常见术语
- A/B测试:比较两种技术效果。
- 基准(Baseline):模型效果比较参考点。
- 批次(Batch)/批次数量(Batch Size)/周期(Epoch):一次迭代样本集合;批次内样本数;全部数据完整训练一次。
- 检查点(Checkpoint):定时保存模型,支持断点续训。
- 收敛(Convergence):损失不再明显变化。
- 凸函数/凸优化:U形,仅一个最低点(全局=局部);凸优化即用梯度下降等找凸函数极小值。
- 决策边界:分类模型各类别分界线。
- 泛化:模型对新数据正确预测的能力。
第3章 决策树与分类算法
3.1 决策树基本结构
决策树由决策节点(属性测试)、分支(划分输出)、叶节点(类别)组成;从根节点自顶向下,每个决策节点划分一次,最终落到叶节点完成分类。一般用贪心算法逐节点构建局部最优树。
3.2 四大决策树算法对比(最高频考点)
| 算法 |
分支属性度量 |
树结构 |
特点 |
| ID3 |
信息增益 Gain(S,A) |
多路划分 |
偏向选择取值多的属性;只能处理离散属性;信息增益越大说明该属性划分后纯度提升越多 |
| C4.5 |
信息增益率 Gain_ratio(A)=Gain(A)/分裂信息 |
多路划分 |
改进ID3偏向多值属性问题;内置连续属性离散化 |
| C5.0 |
信息增益率改进+Boosting |
— |
比C4.5构建更快、树更小;可设权重/错分成本;用提升法组合多棵树 |
| CART |
Gini指数 |
二叉树(二分递归分割) |
Gini(S)=1-Σpᵢ²;标称属性有q个取值时有2^(q-1)-1种二元划分方式 |
关键公式:
- 熵:Entropy(S) = -Σpᵢlog₂pᵢ (熵=0最纯,熵越大不确定性越高)
- 信息增益:Gain(S,A) = Entropy(S) - Σ(|Sᵢ|/|S|)·Entropy(Sᵢ)
- 信息增益率:Gain_ratio(A) = Gain(A) / [-Σ(|Sᵢ|/|S|)log₂(|Sᵢ|/|S|)]
- Gini指数:Gini(S) = 1 - Σpᵢ²;划分后 Gini(S|A) = (|S₁|/|S|)Gini(S₁) + (|S₂|/|S|)Gini(S₂)
3.3 连续属性离散化
- 离散属性类型:二元属性(是/否,无须特殊处理)、标称属性(多取值,ID3/C4.5多路划分,CART二元划分)、序数属性(有序,如S/M/L/XL)。
- 非监督离散化:等宽离散化(固定区间宽度)、等频离散化(每区间样本数相等)、聚类离散化。
- 监督离散化:基于熵/Gini判断区间是否合并。C4.5用熵作纯度度量、CART用Gini作纯度度量。
- C4.5连续属性处理:排序后取相邻值平均值(或不超过平均值的最大取值)作候选划分点,选信息增益率最高的;1996改进版先选信息增益最高再算增益率。
- CART连续属性处理:排序后取相邻值平均值为候选划分点,选Gini指数最低的。
3.4 过拟合与剪枝(高频)
- 训练误差 vs 泛化误差:欠拟合=训练误差高;过拟合=训练误差低但泛化误差高。
- 泛化误差估计三方法:①训练误差估计(再代入估计,偏向复杂树,效果不佳);②结合模型复杂度估计(奥卡姆剃刀原则、最小描述长度MDL);③使用检验集(如训练集:检验集=3:1)。
- 剪枝两类:
- 预剪枝:提前停止生长。方法:设层数阈值/节点样本数阈值/不纯度增益阈值/卡方检验独立性。阈值过高→欠拟合;过低→无法解决过拟合。
- 后剪枝:先生成完全树再剪。错误率降低剪枝(REP)——用测试集计算剪枝前后误差差,自底向上剪去误差不增的子树;效果好但需独立测试集,小数据集效果下降。
3.5 分类性能评价指标(极高频)
混淆矩阵四类:TP(真正类)、FN(假反类)、FP(假正类)、TN(真反类)
| 指标 |
公式 |
含义 |
| 准确率Accuracy |
(TP+TN)/(TP+FN+FP+TN) |
整体正确率 |
| 精确率Precision |
TP/(TP+FP) |
预测为正中实际为正的比例 |
| 召回率Recall |
TP/(TP+FN) |
实际为正中被正确预测的比例(查全率) |
| F值/F1 |
F1=2·Precision·Recall/(Precision+Recall) |
精确率与召回率的调和平均 |
- ROC曲线:纵轴TPR=TP/(TP+FN),横轴FPR=FP/(FP+TN);AUC越大模型预测准确性越高;正负样本分布变化时ROC保持稳定(优于Precision-Recall曲线)。
- 疾病预测等场景应优先看召回率而非精确率(漏诊代价高)。
3.6 模型评价方法对比
| 方法 |
做法 |
特点 |
| 保留法(Holdout) |
按比例(如7:3)分训练/检验集 |
简单但样本不够大时效果差 |
| 蒙特卡洛交叉验证 |
多次随机划分训练/检验取平均 |
也叫重复随机二次采样验证;样本可能重复或未被抽到 |
| k折交叉验证 |
分k份轮流做检验集 |
每个样本恰好作检验1次;常用10折 |
| 留一法 |
k=N,每次留1个测试 |
彻底交叉验证;方差高、计算量大 |
| 留p法 |
每次留p个测试,C(n,p)种划分 |
覆盖最全但计算复杂度极高 |
| 自助法(Bootstrap) |
有放回抽样构建训练集,未抽到的做检验集 |
对小数据集效果好 |
3.7 集成学习五大算法(极高频)
| 算法 |
核心思想 |
| 装袋法(Bagging) |
又称引导聚集(Bootstrap Aggregating);多次有放回采样得m个训练集,各训练一个模型,分类取多数投票/回归取平均;降低方差,不易过拟合 |
| 提升法(Boosting/AdaBoost) |
同一训练集但样本带权重,T轮迭代:分错样本权重增加、分对样本权重降低;最终模型按各弱分类器权重αⱼ加权投票:H(x)=sign(Σαⱼhⱼ(x));αⱼ=½ln((1-εⱼ)/εⱼ) |
| GBDT |
梯度提升决策树;用损失函数的负梯度近似残差,每棵树拟合前面所有树的残差;回归树节点取该节点样本均值 |
| XGBoost |
GBDT优化版:损失函数加正则项Ω(f)=γT+½λΣwⱼ²(T=叶节点数,w=叶节点权重);用泰勒二阶展开近似目标函数;贪心搜索最优分裂点;可处理缺失值(自动选择默认分支) |
| 随机森林 |
Bagging的扩展,专为决策树设计;每次从所有M个属性中随机选F个候选属性再选最优分支属性(F常取小于log₂(M+1)的最大整数);F=1→纯随机;F=M→退化为Bagging |
Bagging vs Boosting:Bagging并行训练、降方差;Boosting串行训练、调权重、降偏差。
极限随机森林(Extra Trees):在随机森林基础上,候选特征的分裂阈值也随机生成,方差更小,效果通常优于随机森林。
第4章 聚类分析
4.1 聚类算法五大类与良好聚类特征
- 五大类见1.7节表格。
- 良好聚类算法6特征:①良好可伸缩性(大数据集表现好);②处理不同类型数据能力;③处理噪声数据能力;④对样本顺序不敏感;⑤约束条件下表现好;⑥易解释性和易用性。
4.2 聚类评价指标(高频)
外部指标(基于4种关系SS/SD/DS/DD,a/b/c/d为对应数目,a+b+c+d=Cₙ²):
| 指标 |
公式 |
| Rand统计量 |
R=(a+d)/(a+b+c+d) |
| F值/F-Score |
P=a/(a+b), R=a/(a+c), F=(β²+1)PR/(β²P+R) |
| 杰卡德系数 |
J=a/(a+b+c) |
| FM指数 |
FM=√[(a/(a+b))·(a/(a+c))] |
以上4个指标值越大,聚类结果与参考模型越吻合,越好。
内部指标:
| 指标 |
含义 |
越大/越小越好 |
| 紧密度CP |
簇内样本到聚类中心的平均距离 |
越小越好(簇内相似度高) |
| 分隔度SP |
各簇中心两两间平均距离 |
越大说明簇间相似度低 |
| 戴维斯-堡丁指数DBI |
簇内距离之和与簇间距离之比的最大值 |
越小越好 |
| 邓恩指数DVI |
簇间最短距离 / 簇内最大距离 |
越大越好 |
4.3 距离度量公式(高频)
| 距离 |
公式(m维样本xᵢ,xⱼ) |
备注 |
| 欧氏距离 |
√Σ(xᵢₖ-xⱼₖ)² |
最常用 |
| 曼哈顿距离 |
Σ|xᵢₖ-xⱼₖ| |
城市街区距离 |
| 切比雪夫距离 |
max|xᵢₖ-xⱼₖ| |
国际象棋国王步数 |
| 闵可夫斯基距离 |
(Σ|xᵢₖ-xⱼₖ|ᵗ)^(1/t) |
t=1→曼哈顿;t=2→欧氏;t→∞→切比雪夫 |
4.4 基于划分的聚类(极高频)
k-均值算法步骤:①随机选k个初始质心;②每个样本归入最近质心的簇;③重新计算各簇质心;④重复②③直到划分不再变化(J(c,μ)=Σ‖x⁽ⁱ⁾-c⁽ⁱ⁾‖²最小,即SSE最小,贪心求解)。
- 优点:简单快速,时间复杂度O(nkt),适合大数据集、高维数据,结果易解释。
- 缺点:需指定k值;对离群点/噪声敏感;易局部收敛;初始中心影响大;不适合非凸(非球形)数据集。
- k-均值++:选距离已有中心越远的点,被选为新中心的概率越大(以d(x)²成比例的概率选取),缓解初始中心问题。
- k值选择:①与层次聚类结合先得大致数目;②基于系统演化(模拟伪热力学系统分裂合并)。
k-medoids:用真实样本点(非均值)作中心代表簇,对噪声更稳健但速度慢,不适合大数据。典型实现:PAM(围绕中心点划分)。
k-prototype:综合k-均值+k-众数,引入权重γ处理数值+分类混合型数据;数值属性按均值计算中心,分类属性按频率最大值计算中心。
4.5 基于密度的聚类(高频)
DBSCAN核心概念:
ε-邻域:以xᵢ为中心半径ε内的样本集合。
核心对象:ε-邻域内样本数 ≥ MinPts的对象。
直接密度可达:xⱼ在核心对象xᵢ的ε-邻域内。
密度可达:通过对象链传递的直接密度可达关系。
密度相连:xᵢ、xⱼ都从某个xₖ密度可达。
特点:可识别任意形状簇、可过滤噪声、对输入顺序不敏感、不需预先指定簇数;但参数(ε,MinPts)需人工调整且影响大;密度不均匀时效果差;大数据下空间复杂度高(可用KD树/球树改进)。
参数影响:ε增大→簇数减少(可能错误合并);ε减小→簇数增多(可能错误分裂);MinPts增大→核心对象变少、噪声点变多;MinPts减小→核心对象变多、噪声被纳入簇。
OPTICS:改进DBSCAN对参数敏感的问题,生成"增广簇排序"(线性表),可从排序中得到任意(ε,MinPts)下DBSCAN的结果;引入核心距离(使o成为核心对象的最小ε)和可达距离(max{核心距离(o), dist(o,q)});运行效率低于DBSCAN。
4.6 基于层次的聚类(高频)
- 分类:自底向上聚合(AGNES、BIRCH、ROCK)vs 自顶向下分裂(DIANA,应用较少)。
BIRCH(利用层次方法的平衡迭代归约和聚类):
- 核心:构建CF-Tree(聚类特征树),CF三元组 = (n, LS, SS)(样本数、线性和、平方和),满足线性可加性。
- 三个重要参数:枝平衡因子b(非叶节点最大CF数)、叶平衡因子l(叶节点最大CF数)、空间阈值T(叶节点CF对应簇的最大样本空间半径)。
- 优点:只需扫描一次数据集、速度快、可滤噪声、k值可选(默认不需指定)。
- 缺点:受b、l限制可能与实际类别数不一致;要求数据呈超球体(凸)分布,否则效果不佳。
CURE(使用代表点聚类):
- 用多个代表点(而非单点/中心)代表一个簇,对异常数据更稳健,可处理非球状簇。
- 步骤:①抽样n个样本;②分割为m个分区;③各分区局部凝聚聚类(合并到n/mq个簇);④去除异常值(簇增长缓慢或数目过小的簇);⑤合并代表点经收缩因子α(0<α<1)收缩后再做第二次CURE聚类。α越大簇越紧密,越小越能区分拉长等异形簇。
4.7 基于网格的聚类
- 思想:划分网格单元→统计每单元对象数→删除低密度单元→合并邻接高密度单元成簇。时间复杂度与样本量无关,只与网格数有关,速度快。
- STING:分层多分辨率,递归划分矩形单元。
- CLIQUE:综合密度+网格优点,可处理任意形状/高维数据,逐渐合并稠密低维单元成高维单元。
4.8 基于模型的聚类:GMM + EM算法(高频)
- 高斯混合模型(GMM):p(x|θ)=Σₖaₖf(x|θₖ),假设数据由若干高斯分布混合生成(中心极限定理支撑)。
- EM算法(最大期望算法):在概率模型中求含隐变量的最大似然估计,2006年ICDM十大经典算法之一。
- E步:基于当前参数计算隐变量(如类别C)的后验概率期望,Qᵢ(Cⱼ)=p(Cⱼ|xᵢ;θ)。
- M步:基于E步期望,用极大似然更新模型参数θ。
- 不断迭代E、M步直至收敛(依据琴生不等式,似然函数下界单调不减)。
- 缺点:受初始值影响大(不同初始化可能结果互换/不同);易陷入局部最优,可多次随机初始化。
- 应用:聚类、概率潜在语义分析(PLSA)等隐变量主题模型。
4.9 模糊聚类与SOM
- 模糊聚类:基于模糊集合论,样本对每个簇有不同隶属度(非硬性划分),典型代表:模糊c均值算法。
- SOM(自组织映射,又称Kohonen网络):竞争式学习、无监督;输入层+输出层(竞争层);"赢者通吃"——获胜神经元及邻域按距离调整权重;邻域调整函数:墨西哥草帽函数(有正有负)、大礼帽函数(恒定)、厨师帽函数(非负);执行流程:①初始化权重→②计算输入与各输出节点距离dⱼ→③找获胜单元j*(dⱼ*最小)→④调整获胜单元及邻域权重Δωᵢⱼ=η(xᵢ-ωᵢⱼ)→⑤收缩邻域半径、减小学习率,重复直至收敛。
第5章 文本分析
5.1 文本分析流程
文本获取 → 分词 → 文本特征提取与表示 → 特征选择 → 知识提取/信息挖掘 → 具体应用。
- 中文需分词(基于词典/统计/规则);英文只需词形归一化(词干化,如birds→bird)。
5.2 文本特征提取四方法(极高频)
| 方法 |
核心公式/思想 |
| TF-IDF |
tf(w,d)=count(w,d)/size(d);idf=log₂[n/docs(w,D)];TF-IDF=tf×idf。词在本文档高频且在语料库中低频→区分能力强 |
| 信息增益 |
引入特征前后信息熵之差,衡量特征带来的信息量;H(x)=-Σpᵢlog₂pᵢ |
| 互信息MI |
MI(t,Cᵢ)=p(t,Cᵢ)log₂[p(t,Cᵢ)/(p(t)p(Cᵢ))];点互信息PMI(x,y)=log₂[p(x,y)/(p(x)p(y))],用于词语相关性/情感分析/语言通顺度判断 |
| 卡方统计量χ² |
χ²=Σ(xᵢ-E)²/E;原假设"特征词t与类别c不相关",χ²越大越相关;缺点:"低频词缺陷",常与词频结合使用 |
卡方与互信息主要用于有监督文本分类;无监督文本分类一般用TF-IDF。
5.3 词嵌入与语言模型
- 独热表示缺点:存在"词汇鸿沟",词间无语义关联信息。
- Word2Vec:认为常共现词相似度高,三层网络+哈夫曼树预测。
- GloVe:基于共现矩阵降维实现,并行化处理有优势。
- 语言模型:n-gram(n-1阶马尔可夫模型);n=1/2/3对应unigram/bigram/trigram;常用bigram;评价指标:困惑度(Perplexity),越小语言质量越好。
5.4 向量空间模型VSM(高频)
- 又称"词袋模型",索尔顿提出;文档表示为n维向量 dⱼ=(wⱼ₁,...,wⱼₙ),权重常用TF-IDF。
- 四种相似度计算:内积、Dice系数、杰卡德系数、余弦相似度(最常用)。
- 优点:简化为向量计算、降低复杂度、支持快速检索排序。
- 缺点:不考虑词序;文档量大时构建慢;TF-IDF在短文档中效果较差。
5.5 知识图谱(高频)
基本概念:
- 本体:概念及其关系的形式化描述(类似数据库表结构),常用RDF、OWL语言描述。
- 知识库:管理知识的数据库(本体知识、关联性知识、规则库、案例知识)。
- 链接数据:2006年伯纳斯-李提出,强调数据间链接关系。
- 语义网络:1968年Quillian提出,节点=事物/属性,边=关系;区别于"语义网"(对网页内容语义扩展)。
存储方式对比:
| 方式 |
特点 |
| 三元组表 |
简单易懂,但表庞大、查询效率低,大型系统少用 |
| 类型表 |
按类型分表(学生表/课程表),结构清晰但冗余多、空字段多 |
| 图结构(如Neo4j) |
实体为节点、关系为边,符合现实逻辑,支持图查询;Neo4j优点是图查询语言完善,缺点是分布式存储代价高 |
知识图谱挖掘算法:
- Dijkstra算法:单源最短路径,从起点向外扩展。
- Floyd算法:动态规划,求所有顶点对的最短路径,dᵢⱼ⁽ᵏ⁾=min{dᵢⱼ⁽ᵏ⁻¹⁾, dᵢₖ⁽ᵏ⁻¹⁾+dₖⱼ⁽ᵏ⁻¹⁾}。
- PageRank:网页被越多优质网页指向,其优质度越高;PR(epᵢ)=(1-d)/N + d·Σ[PR(epⱼ)/L(epⱼ)],d常取0.85;用于知识图谱权威节点(如企业关联风险)分析。
知识图谱构建三阶段:①信息抽取(命名实体识别、关系抽取、属性抽取);②知识融合(实体链接、知识合并,统一为XML/RDF/OWL);③知识加工(评估后入库)。
- 逻辑结构分数据层(数据存储)和模式层(本体库管理的提炼知识)。
- 构建方式:自顶向下(专家手动)vs 自底向上(自动抽取+人工审核)。
5.6 词法分析
中文分词三方法:
| 方法 |
代表 |
特点 |
| 基于词典 |
正向最大匹配MM、反向最大匹配RMM |
简单高效,但无法识别"词中词"、依赖词典质量,maxLen难估计 |
| 基于统计 |
HMM、N-gram |
全切分+统计模型选最优;可发现新词,是目前主流;时空复杂度高 |
| 基于规则 |
— |
依赖语言学规则,仍处实验阶段 |
英文分词"3S步骤":拆分单词(Split)→ 去除停用词(Stop Word)→ 提取词干(Stemming,如Porter Stemming)。
命名实体识别(NER):主流基于统计——ME、SVM、HMM、CRF;HMM速度快适合实时场景,CRF引入上下文信息识别未知词;中英文通用NER的F1值可达90%以上。
**词义消歧(WSD)**三类方法:基于词典(覆盖度计算,依赖WordNet/HowNet,粒度粗)、有监督(词汇/句法/语义特征)、无监督和半监督(依赖大规模未标注语料+句法分析)。
5.7 句法分析与语义分析
- 依存句法分析:核心词(Head)+依存词(Dependent),转为树形结构;常见关系:主谓关系SBV、定中关系ATT、并列关系COO、动宾关系VOB、状中关系ADV。基于图 vs 基于转移两种主流方法。
- 短语结构句法分析:基于上下文无关文法CFG,扩展为概率上下文无关文法PCFG(引入概率值,选最大概率句法树)。
- 语义角色标注(SRL):标注谓词相关的施事/受事角色,是浅层语义分析;句法分析是其基础。
- 语义依存分析:处理论元(Argument)及其关系,可脱离句法结构,关注语言单元间语义关系(施事Governor、受事Dependent)。
5.8 文本分析五大应用
| 应用 |
要点 |
| 文本分类 |
基于规则(决策树)/基于机器学习(贝叶斯、SVM、ME)/基于神经网络(CNN保留词序提取特征、RNN/LSTM处理长距离依赖) |
| 信息抽取 |
关系抽取输出三元组(实体A,关系,实体B);事件抽取含事件类型+元素 |
| 问答系统 |
流程:问题理解(事实型/交互型/枚举型分类)→文本信息抽取→知识推理;三类:检索式(如IBM Watson)、社区问答(UGC)、知识库问答("实体-关系-实体") |
| 情感分析 |
基于词典(情感词+程度词+否定词,需窗口分析)、基于机器学习(LSA+SVM/CNN+Softmax,如SnowNLP)、概念级技术(知识本体+语义网络) |
| 自动摘要 |
抽取式(主流,按权重选句子组合)、抽象式(理解语义生成,少用)、生成式(seq2seq+注意力机制等) |
第6章 神经网络
6.1 神经网络三大分类
| 类型 |
特点 |
代表 |
| 前馈神经网络 |
信号单向传递,BP算法反向传播误差调权重 |
感知机、BP神经网络、RBF网络 |
| 反馈神经网络 |
内部神经元间有反馈,可用无向完全图表示 |
Hopfield网络、BAM、Elman网络 |
| 自组织神经网络 |
无监督竞争学习,自动产生不同响应 |
SOM/Kohonen网络(详见4.9节) |
6.2 感知机与BP神经网络(极高频)
- 感知机:y=f(xwᵗ+b);单层感知机可解决AND/OR问题,不能解决XOR问题(线性不可分)。
- BP神经网络结构:输入层-隐层-输出层;激活函数需处处可导(如Sigmoid)。
- 训练目标:损失函数 J(W,b)=½‖y-f_{W,b}(x)‖²=½‖y-ŷ‖²,求使其极小的参数θ*。
- BP算法核心(误差反向传播):
- 前向传播:逐层计算各层激活值a⁽ˡ⁾。
- 输出层误差:δ^(nl) = -(y-a^(nl)) ⊙ f'(Z^(nl))。
- 逐层向前递推:δ^(l) = (W^(l))ᵀδ^(l+1) ⊙ f'(Z^(l)) (由后层误差推前层误差)。
- 梯度:∇_{W^(l)}J = δ^(l+1)(a^(l))ᵀ;∇_{b^(l)}J = δ^(l+1)。
- 梯度下降更新权重:W ← W - α·∂J/∂W。
- BP神经网络训练步骤:①随机初始化权重和阈值;②前向传播计算输出;③后向传播修正权重wᵢⱼ;反复迭代至误差满足要求。
- BP神经网络对训练样本数量/质量敏感,需数据标准化、去重、去异常处理。
6.3 RBF网络
- 径向基函数网络:单隐层前馈网络,隐层激活函数为RBF(如高斯函数 φ(x)=e^(-b‖x-c‖²)),输出层为隐层输出的线性组合:y=Σωᵢφ(x,cᵢ)。
- 隐层神经元足够多时可任意精度拟合任意连续函数。
- 与BP网络相比:只需一层隐层、权重更少、训练/推理速度快、泛化好、收敛快。
- 训练两步:①确定RBF中心点(随机采样/k-均值聚类/梯度下降);②用BP算法训练隐层权重ωᵢ和扩展常数b。
6.4 反馈神经网络:Hopfield/BAM/Elman
- Hopfield神经网络:基于Hebb学习规则(同时兴奋的神经元连接增强);通过能量函数判断稳定性,稳定点势能低;分DHNN(离散型)/CHNN(连续型);训练过程=存储(权重矩阵)→验证(迭代到稳定)→回忆(收敛到稳定状态)。
- 缺点:①假记忆问题(状态相似时易收敛错误记忆);②存储容量受极小点数量限制;③局部最优问题。
- BAM(双向联想记忆):无条件稳定网络,有输入输出节点,无须预处理编解码;同样存在假记忆、容量限制、局部最优问题。
- Elman神经网络:一种RNN,新增"承接层"接收隐层输出反馈,与输入一起作下一时刻输入;结构其余部分与BP网络相似(隐层常用Sigmoid);擅长处理时序性/时变数据。
6.5 激活函数对比(高频)
| 函数 |
值域 |
主要优点 |
主要缺点 |
| Sigmoid |
(0,1) |
可表示概率,导数易计算 |
两端梯度消失,值域不对称 |
| Tanh |
(-1,1) |
零中心、可微、反对称 |
仍有梯度消失 |
| ReLU |
[0,+∞) |
收敛快、计算简单、无梯度消失 |
x<0时输出0,可能"死亡神经元";需设较小学习率 |
| Leaky ReLU |
(-∞,+∞) |
解决死亡神经元(负区给小斜率γ≈0.01) |
效果不稳定 |
| PReLU |
— |
γ通过训练学习得到 |
— |
| ELU |
— |
负值区软饱和,激活均值接近0,抗噪 |
计算稍复杂 |
| Softmax |
(0,1),和为1 |
多分类输出概率分布 |
仅用于输出层 |
| Maxout |
— |
拟合任意凸函数,无梯度消失 |
参数量k倍增加,计算慢 |
激活函数性质:非线性、可微性(影响反向传播)、单调性(影响收敛)、f(x)≈x(小值时训练更快更稳定)、输出有界性、计算简单性、归一化。
选择建议:二分类输出层用Sigmoid;隐层通用ReLU(注意学习率,出现死亡神经元可换Leaky ReLU/PReLU/RReLU/Maxout);尽量避免Sigmoid,Tanh效果通常不如ReLU/Maxout。
6.6 损失函数对比(高频)
| 损失函数 |
公式/要点 |
适用场景 |
| 交叉熵(Softmax形式) |
L=-Σyₙln ŷₙ |
多分类,常与Softmax结合避免数值不稳定 |
| 交叉熵(Sigmoid形式) |
L=-(1/N)Σ[yₙlogŷₙ+(1-yₙ)log(1-ŷₙ)] |
二分类;结合Sigmoid求导可消去Sigmoid导数项,缓解学习缓慢;缺点是可能梯度爆炸 |
| MAE(平均绝对误差/L1损失) |
(1/n)Σ|ŷᵢ-yᵢ| |
假设误差服从拉普拉斯分布;对离群点不敏感 |
| MSE(均方误差/L2损失) |
(1/2n)Σ(ŷᵢ-yᵢ)² |
假设误差服从正态分布;用于线性回归;对离群点敏感、收敛更快 |
| Huber损失 |
|y-ŷ|≤δ时为平方项,否则为线性项 |
MAE与MSE折中,δ→0近似MAE,δ→∞近似MSE |
6.7 学习率与优化算法(高频)
- 学习率太大:在极值点两端振荡/发散;太小:收敛太慢。理想:初期大、接近最优值时逐渐减小。
- 调整策略:
- 固定学习率:根据训练情况手动调小。
- 均匀分步降低:learning_rate = base_lr × gamma^(iter/stepsize)。
- 指数级衰减:learning_rate = base_lr × e^(-decay_rate×global_step)。
- 逆时衰减:learning_rate = base_lr / (1+decay_rate×global_step)。
- 多项式调整:learning_rate = base_lr × (1-iter/maxiter)^power。
自适应优化算法对比:
| 算法 |
核心思想 |
| AdaGrad |
按参数历史梯度平方和调整学习率,更新频率低的参数步长大;缺点:分母累加趋于0导致训练提前结束 |
| AdaDelta |
改进AdaGrad,用滑动平均E[g²]代替累加和,避免学习率过早趋0 |
| Momentum(动量法) |
vₜ=γvₜ₋₁+η∇J(θ),θₜ=θₜ₋₁-vₜ;模拟惯性,加速一致方向、抑制振荡 |
| RMSProp |
辛顿提出,对AdaGrad改进,引入衰减系数β(常取0.9)做移动平均 |
| Adam |
结合一阶矩(动量)和二阶矩(RMSProp)估计,并做偏差修正;β₁常取0.9,β₂常取0.999;适合稀疏梯度和非稳态问题 |
梯度下降三种训练方式对比:
| 方式 |
每次用样本数 |
特点 |
| BGD(批量梯度下降) |
全部n个 |
方向正确但慢、内存消耗大 |
| SGD(随机梯度下降) |
1个 |
快但波动大,可能跳出局部极小 |
| MBGD(小批量梯度下降) |
K个(1<K<n) |
折中方案,常用,Batch Size常50~256 |
6.8 过拟合与正则化(高频)
| 方法 |
要点 |
| L1/L2参数范数惩罚 |
L1产生稀疏解,L2产生较小解;J(w)=J₀(w)+λ·(范数项) |
| 数据增强 |
增加/平衡样本,如图像平移、缩放、翻转 |
| 提前终止 |
验证集准确率下降时停止训练 |
| 权重衰减 |
wₜ₊₁=(1-λ)wₜ-ηgₜ;标准SGD下与L2正则化效果相近 |
| Bagging等集成 |
训练多个模型表决结果(模型平均) |
| Dropout |
按概率p保留神经元(伯努利分布),训练时随机丢弃部分神经元,相当于多模型集成;前向传播激活值需除以p放大 |
| 批标准化(BN) |
解决**内部协方差偏移(ICS)**问题;对每层输入按批次归一化为均值0方差1的分布,再引入可学习参数γ、β恢复表达能力;提升训练速度、加快收敛、可用更大学习率;batch size过小则统计量不准确 |
6.9 数据预处理
- 标准化(Z-Score):x_stan=(x-μ)/σ,转为均值0方差1的标准正态分布。
- 归一化(min-max):x_norm=(x-min)/(max-min),缩放到[0,1];易受异常值影响。
- 白化:降低特征间相关性、保证各特征方差一致;PCA白化、ZCA白化。
6.10 权重初始化方法(高频)
| 方法 |
适用场景 |
要点 |
| 高斯初始化 |
通用 |
固定均值(如0)和方差(如0.01)的高斯分布 |
| Xavier初始化 |
Tanh激活 |
Var(Wⁱ)=2/(nᵢ+nᵢ₊₁),保持多层后输出分布良好 |
| He初始化 |
ReLU/Leaky ReLU激活 |
W~N(0, 2/n̂ᵢ),n̂ᵢ=hᵢ×widᵢ×dᵢ(卷积层高×宽×核数) |
同层权重初始化为相同常数或全0 → 网络无法正常训练(梯度恒为0)。
6.11 训练中常见问题(高频)
- 梯度消失/梯度爆炸:
- 原因:①网络层数太深,链式法则导致多次连乘(连乘<1→消失,>1→爆炸);②激活函数导数值与权重乘积持续<1或>1。
- 解决方法:①重新设计网络模型;②使用ReLU激活函数;③使用LSTM;④梯度截断(Gradient Clipping,按L2范数比例缩小超阈值梯度);⑤权重正则化。
- 局部极小值 vs 全局极小值 vs 鞍点:损失曲面三种关键点;可通过SGD/MBGD(采样随机性)、动量法/Adam等自适应学习率方法帮助跳出局部极小值或鞍点。
- 超参数优化——网格搜索(Grid Search):穷举各超参数取值组合,结合交叉验证评估,选最优组合;缺点是参数多时组合数指数级增长,计算量大。
- 训练过程可视化:TensorBoard可视化损失、准确率、计算图等,便于及时发现梯度消失/爆炸等问题。
6.12 网络模型效果评价
- 分类任务:准确率、精确率、召回率、F1值,辅以ROC/AUC(同第3章)。
- 聚类任务(无标记):按聚类评价标准(同第4章)。
速查:跨章节高频对比清单
- 三种判别分析/降维:PCA(无监督,最大方差方向)vs LDA(有监督,类内小类间大)vs LLE/LE(非线性流形)。
- 三种树:ID3(信息增益,多路,离散)→ C4.5(信息增益率,连续离散化)→ CART(Gini,二叉树)。
- 集成学习两大思路:Bagging(并行+投票,降方差,如随机森林)vs Boosting(串行+权重调整,降偏差,如AdaBoost/GBDT/XGBoost)。
- 聚类五大类:划分(k-均值系)/密度(DBSCAN/OPTICS)/层次(BIRCH/CURE)/网格(STING/CLIQUE)/模型(GMM-EM/SOM)。
- 正则化L1 vs L2:L1产生稀疏解(特征选择);L2产生小值解(抗扰、强凸加速收敛)。
- 激活函数迭代关系:Sigmoid/Tanh(梯度消失)→ ReLU(死亡神经元)→ Leaky ReLU/PReLU/ELU(改进负区)→ Maxout(分段线性,计算量大)。
- 优化器迭代关系:SGD → Momentum(动量)→ AdaGrad(自适应学习率)→ AdaDelta/RMSProp(滑动平均改进)→ Adam(一阶+二阶矩结合)。