简介:本资源是西安电子科技大学(XDU)《模式识别》课程期末复习专用知识点串联笔记,面向人工智能、智能科学与技术等专业本科生,聚焦考前系统梳理与重点突破。内容覆盖贝叶斯决策理论、线性与非线性判别方法(Fisher判别、感知机、广义线性判别、KNN、决策树)、无监督学习核心算法(高斯混合模型、EM算法、K-means、FCM、层次聚类)及特征选择策略(Filter/Wrapper框架、可分性判据与搜索方法),并包含SVM与组合分类器等拓展考点,结构清晰、公式推导与例题结合紧密。资源为1个PDF文件,共1.4MB,排版紧凑、重点加粗、逻辑连贯,适合作为冲刺阶段的提纲式复习材料。目前已有713人学习下载,内容源自真实课堂笔记整理,涵盖西电该课程高频必考模块,助力考生高效串联零散知识点、把握命题脉络与解题范式。
1. 模式识别到底是什么:不是“认脸”,而是让机器学会“看懂规律”的整套思维工具箱
你有没有试过教一个完全没接触过猫的人,怎么一眼认出猫?
不是靠背“猫有胡须、四条腿、会喵喵叫”——因为狗也有四条腿,老鼠也有胡须,录音里的喵喵声更可能来自AI合成。真正管用的,是你指着十张图说:“这五张是猫,这五张不是;你找找,它们之间最稳定、最不容易错的差别在哪?”
模式识别,就是干这个事的:它不教机器死记硬背“什么样子叫猫”,而是教它从一堆杂乱数据(图像、声音、传感器读数、交易记录……)里,自动发现可复现、可泛化、能抗干扰的统计规律,再用这套规律去判断新来的数据属于哪一类、落在哪个簇、该走哪条路。
它不是某个具体算法(比如人脸识别App),而是一整套“认知操作系统”:从“怎么定义‘像’”(贝叶斯概率)、“怎么画分界线”(判别函数与决策面)、“怎么降维抓重点”(LDA/PCA)、“怎么在没标签时自己分组”(K-means/EM),到“怎么挑出真正有用的线索”(特征选择)、“怎么把多个弱判断合成强结论”(集成学习)……全都在这个框架里。
西电这门课之所以被学生称为“期末玄学现场”,正因为它不考你会不会调库,而考你能不能在考场上,面对一道题,瞬间判断:“这该用贝叶斯最小错误率?还是该上SVM核技巧?抑或其实是无监督场景,得先跑个EM估计隐变量?”——这种问题归类能力+方法匹配直觉,才是模式识别真正的内功。这份《XDU模式识别期末知识点串联》,就是把散落各章的“招式”,按实战逻辑重新串成一条清晰的“内功心法脉络”。
2. 为什么必须从贝叶斯开始:所有分类决策的“底层宪法”,不是公式,而是思维方式
模式识别里所有“分类器”,本质上都在回答同一个问题:当看到一个新样本x,它最可能属于哪一类ωᵢ?
贝叶斯理论,就是给这个问题立下的第一份、也是最根本的“宪法”。它不提供速成答案,而是规定:任何靠谱的决策,都必须基于三个要素的理性权衡——你对各类别的先验信任度(P(ωᵢ))、这个样本在各类别下出现的似然程度(P(x|ωᵢ)),以及这个样本本身出现的总体概率(P(x))。三者组合,就导出了那个看似简单、实则重若千钧的公式:
$$ P(\omega_i|x) = \frac{P(x|\omega_i) P(\omega_i)}{P(x)} $$
提示:P(x) 是归一化常数,实际比较时可忽略。真正驱动决策的是分子 $P(x|\omega_i) P(\omega_i)$ —— 它把“客观证据”和“主观经验”拧成一股绳。
2.1 最小错误率决策:最朴素的“求生本能”
假设你是个医生,面对一个化验指标x,要判断病人得的是病A还是健康B。
- 如果只看P(x|A),发现x在A患者中很常见(比如发烧),但忘了健康人也可能低烧(P(x|B)也不小);
- 如果只看P(A),听说这病发病率99%,就武断判A,却无视这个x在健康人中几乎从不出现……
这两种都可能致命。
最小错误率贝叶斯决策,强制你算清:
P(A|x) 和 P(B|x) 哪个更大?
也就是比较 $P(x|A)P(A)$ 与 $P(x|B)P(B)$。
通俗地说:它不问“x像不像A”,而问“在所有像x的人里,有多少比例真得了A?”——这才是临床诊断的黄金标准。考试里所有“已知先验和类条件概率,求后验并决策”的题,都是在训练你建立这个条件概率思维。
2.2 最小风险决策:给错误“标价”,让机器学会权衡代价
现实从不只有“对”或“错”。
- 把健康人误诊为癌症(假阳性):多做检查,焦虑,但可补救;
- 把癌症患者漏诊为健康(假阴性):错过黄金治疗期,后果严重。
最小风险贝叶斯决策,在贝叶斯框架上加了一层“代价矩阵λ”:
$$ R(\alpha_i|x) = \sum_{j=1}^{c} \lambda(\alpha_i|\omega_j) P(\omega_j|x) $$
其中 $\lambda(\alpha_i|\omega_j)$ 表示“真实是ωⱼ,却判为αᵢ”的损失。
决策规则变成:选使期望风险R最小的那个动作αᵢ。
这就是为什么医疗AI、金融风控系统必须用最小风险——它让模型明白:“宁可多审十个可疑交易,也不能漏掉一个洗钱。”考试中若出现“误判代价不同”的情景题,立刻锁定这里。
2.3 判别函数与决策面:把概率计算,翻译成几何操作
直接算后验概率太慢?贝叶斯给你留了后门:
只要定义判别函数 $g_i(x) = \ln P(x|\omega_i) + \ln P(\omega_i)$,那么“选使 $g_i(x)$ 最大的i”就等价于最小错误率决策!
更妙的是,当两类问题(ω₁ vs ω₂)时,决策面就是 $g_1(x) = g_2(x)$ 的解集——在二维空间里,它是一条直线;三维里是一个平面;高维里就是一个超平面。
打个比方:贝叶斯是“法官”,判别函数是“法槌”,决策面就是“法庭上那条无形的分界线”。后续所有线性/非线性分类器(感知机、SVM、Fisher),本质都是在用不同方式,去拟合这条最优分界线。考试画决策面、写判别函数表达式,核心就在这里。
2.4 正态分布下的特例:为什么协方差矩阵决定一切?
当P(x|ωᵢ)服从正态分布 $N(\mu_i, \Sigma_i)$,贝叶斯判别函数能大幅简化:
$$ g_i(x) = -\frac{1}{2}(x-\mu_i)^T \Sigma_i^{-1}(x-\mu_i) - \frac{1}{2}\ln|\Sigma_i| + \ln P(\omega_i) $$
此时决策面形状,完全由协方差矩阵Σᵢ决定:
- 若所有Σᵢ相等(Σ₁=Σ₂=…=Σ)→ 决策面是超平面(线性);
- 若Σᵢ对角且相等(各特征独立同方差)→ 决策面是超平面+平移(最近邻);
- 若Σᵢ任意 → 决策面是二次曲面(抛物面、椭球面等)。
这就是为什么考题总强调“协方差矩阵情况”。它不是数学炫技,而是告诉你:数据的“形状”(相关性、尺度)直接决定了分类边界该画成直线还是曲线。忽略这点,强行用线性分类器切一个椭球分布的数据,翻车是必然的。
3. 线性判别 vs 非线性判别:不是“谁更高级”,而是“谁更适合当前数据的骨骼”
很多同学以为“非线性一定比线性强”,结果在考场上看到一道题,条件写着“两类协方差相等”,还硬往上套SVM核函数——这就像给自行车装涡轮增压。线性与非线性判别,本质是对数据内在结构的不同建模策略,选错就像用锤子拧螺丝。
3.1 Fisher线性判别(LDA):降维界的“老中医”,专治“类内缠绕、类间模糊”
Fisher的核心思想极朴素:投影后,让同类样本挤得更紧(类内散度小),不同类样本离得更远(类间散度大)。
它不假设数据分布,只关心“方向”。数学上,就是找一个投影向量w,最大化目标函数:
$$ J(w) = \frac{w^T S_B w}{w^T S_W w} $$
其中 $S_B$ 是类间散度矩阵,$S_W$ 是类内散度矩阵。
打个比方:LDA像一位老中医,不纠结你血压、血糖具体数值(分布细节),而是摸你“脉象是否有力、节奏是否均匀”(整体离散趋势),然后给你开一副调理全身气血的方子(投影方向)。考试中若给出均值向量和协方差矩阵,让你求最佳投影方向,基本就是LDA。
3.2 感知机:线性可分的“守门员”,梯度下降是它的“训练日志”
感知机是历史上第一个可证明收敛的线性分类器。它假设:存在一条直线(超平面),能完美分开所有训练样本。
其判别函数是 $g(x) = w^T x + b$,决策规则:$g(x)>0$ 判ω₁,否则判ω₂。
训练过程就是不断调整w和b,直到所有样本都被正确分类。核心是感知准则函数:
$$ J(w) = -\sum_{x_i \in \mathcal{X}} w^T x_i \quad (\text{对所有错分样本求和}) $$
梯度下降更新:$w \leftarrow w + \eta x_i$(η为学习率)。
注意:感知机只保证在线性可分时收敛,且解不唯一(解区)。考试若出现“证明某数据集线性可分”或“写出感知机迭代步骤”,重点就在理解这个“错分样本驱动更新”的机制。
3.3 广义线性判别:给线性模型“戴眼镜”,让它看清弯曲的关系
当数据本身是曲线分布(如圆环形两类点),线性模型再努力也画不出好分界线。广义线性判别不做非线性映射,而是把原始特征做非线性变换,再在线性空间里处理。
例如,对二维点(x₁,x₂),构造新特征:$\phi(x) = [x_1, x_2, x_1^2, x_2^2, x_1x_2]$。
此时,在5维φ空间里,原本弯曲的边界可能变成超平面。
通俗地说:它不改变世界,而是给自己配一副“变形眼镜”(特征变换),让扭曲的世界看起来变直了。考试中若看到“用x², xy等构造新特征”,这就是广义线性的典型信号。
3.4 KNN:懒人的“邻居投票制”,强大在无需训练,脆弱在依赖距离定义
KNN堪称最“懒”的分类器:它不学任何模型,存储所有训练样本。预测时,只做两件事:
- 计算新样本x到所有训练样本的距离(欧氏、曼哈顿、马氏…);
- 取距离最近的K个邻居,按多数投票决定x的类别。
关键参数K是玄学核心:K太小(如K=1),易受噪声点影响(“邻居里混进一个坏蛋,全队带偏”);K太大(如K=N),变成全局平均,失去局部判别力。考试必考“K如何影响错误率曲线”,答案永远是:“先降后升,存在最优K”。
3.5 决策树(ID3/C4.5):人类专家的“思维导图”,信息增益是它的“提问逻辑”
决策树模拟人类专家诊断过程:不断用属性提问,缩小可能性范围。
- ID3(处理离散属性):每次选信息增益最大的属性分裂。信息增益 = 分裂前熵 - 分裂后期望熵。熵越小,纯度越高。
- C4.5(处理连续属性):改用信息增益率(增益/属性固有熵),避免偏向取值多的属性。
剪枝是防过拟合的关键:预剪枝(设深度/样本数阈值)快但可能欠拟合;后剪枝(先长成大树,再自底向上剪)更准但计算贵。
考试画树、算信息增益,本质是在训练你“像专家一样思考:哪个问题能最快排除最多错误选项?”
4. 监督学习 vs 无监督学习:不是“有无标签”,而是“问题性质”的根本分水岭
初学者常混淆:K-means和EM算法都“分组”,为啥一个叫无监督,一个又和贝叶斯扯上关系?关键不在有没有标签,而在于问题的数学本质是否依赖类别标签的显式定义。
4.1 无监督学习的三大支柱:聚类的本质是“找结构”,不是“贴标签”
无监督学习面对的是没有类别标记(y)的数据集{x₁,x₂,…,xₙ}。它的目标不是预测y,而是发现数据内在的组织结构。三大主流方法,解决三类不同结构:
K-means:假设数据由K个球状簇组成,每个簇有明确中心。目标是最小化簇内平方误差:
$$\min \sum_{i=1}^K \sum_{x \in C_i} |x - \mu_i|^2$$
它快速、直观,但要求簇是凸的、大小相近、密度均匀。考试若给坐标点让你手算两轮迭代,就是在考你理解“分配→更新”循环。FCM(模糊C均值):承认现实世界的模糊性。一个点可以部分属于多个簇,用隶属度uᵢⱼ∈[0,1]表示。目标函数加入模糊指数m:
$$\min \sum_{i=1}^K \sum_{j=1}^n u_{ij}^m |x_j - \mu_i|^2$$这就像说“这个人70%像程序员,30%像设计师”,比K-means的“非此即彼”更符合人文场景。考试中若出现“隶属度”“模糊划分”,必是FCM。
层次聚类:不预设簇数K,而是构建一棵嵌套的簇结构树(树状图)。
- 自下而上(凝聚):每步合并距离最近的两个簇;
- 自上而下(分裂):每步将一个簇拆成两个。
距离度量是灵魂:单链接(最近点距)易得链状簇;全链接(最远点距)倾向紧凑球状;平均链接折中。考试画树状图,核心是理解“距离怎么算”。
4.2 高斯混合模型(GMM)与EM算法:概率版的“软聚类”,EM是它的“自我修正引擎”
GMM认为:数据是K个高斯分布按权重πₖ混合生成的。每个高斯由均值μₖ、协方差Σₖ、权重πₖ定义。
难点在于:我们不知道每个样本xⱼ来自哪个高斯分量(隐变量zⱼ)。
EM算法就是为此而生:
- E步(Expectation):用当前参数θ⁽ᵗ⁾,计算每个xⱼ属于第k个分量的后验概率γ(zⱼₖ) = P(zⱼₖ=1|xⱼ; θ⁽ᵗ⁾);
- M步(Maximization):用E步得到的“软标签”γ,重新估计参数θ⁽ᵗ⁺¹⁾,使对数似然增大。
EM不是黑匣子,它是“猜-验-改”的循环:先猜分量参数→算每个点“像谁”→用这些“像谁”的程度重新算参数→再猜……直到稳定。考试若出现“写出E步M步公式”,就是在考你理解这个迭代逻辑。
4.3 常见误区:监督/无监督的边界,远比想象中模糊
| 易混点 | 为什么混 | 怎么区分 |
|---|---|---|
| K-means和SVM都用“距离”,是不是一回事? | 都涉及距离计算,但目的天壤之别。K-means用距离定义簇内紧密度(目标函数);SVM用距离定义间隔最大化(约束条件)。前者是聚类目标,后者是分类约束。 | 看任务:输出是“分几组”(无监督)还是“判哪一类”(监督)? |
| EM算法只用于GMM? | EM是通用框架,GMM只是其最著名应用。只要问题含隐变量、且对数似然难直接最大化,EM都可用(如HMM训练、缺失值填充)。 | 看结构:是否有无法观测的隐变量z?能否写出P(x,z |
| PCA是监督还是无监督? | PCA只用x,不涉及y,纯粹分析x的方差结构,是典型的无监督降维。但LDA(Fisher)虽也降维,却必须用y来计算类间/类内散度,是监督的。 | 看输入:PCA吃{x},LDA吃{x,y}。考试若问“哪种降维需要标签”,答LDA。 |
| 半监督学习是“半个监督”? | 半监督不是“一半数据有标签”,而是少量标注数据+大量未标注数据共同训练。它利用未标注数据的“流形结构”(如聚类假设、光滑性假设)提升性能。 | 看数据构成:标注样本极少(如1%),未标注海量(99%),且模型设计必须显式利用未标注数据。 |
5. 特征选择 vs 特征提取:不是“删列”和“造列”的区别,而是“保留原意”和“重塑意义”的哲学分野
面对1000维的基因数据,是该删掉900个不重要的基因(特征选择),还是该把1000个基因揉成10个“综合健康指数”(特征提取)?这是模式识别中影响模型成败的“第一道闸门”。
5.1 Filter方法:独立于分类器的“体检报告”,快但可能“误诊”
Filter方法像一位严谨的体检医生:它只看特征本身和标签y的关系,完全不运行任何分类器。常用指标:
- 基于距离:计算类内散度 $S_W$ 与类间散度 $S_B$ 的比值(类似LDA思想),比值越大,特征区分力越强;
- 基于熵:计算特征x与标签y的互信息 $I(x;y) = H(y) - H(y|x)$。互信息越大,x对y的“解释力”越强;
- 相关系数:对连续特征,用皮尔逊相关系数衡量与y的线性相关性。
优势:计算极快,可并行;劣势:忽略特征间的协同效应(如单个基因A、B都不显著,但A+B组合是强标志物)。考试若给一堆特征,让你按“信息增益”排序,就是Filter。
5.2 Wrapper方法:以终为始的“实战演练”,准但昂贵如高考集训
Wrapper方法像一位严苛的教练:它把特征子集S当作“考生”,用真实分类器(如SVM、决策树)在验证集上跑一遍,用分类准确率作为S的得分。搜索策略决定效率:
- 穷举:遍历所有2ⁿ个子集(n小时可行);
- 序列前进(SFS):从空集开始,每次加一个使准确率提升最大的特征;
- 序列后退(SBS):从全集开始,每次删一个使准确率下降最小的特征;
- 增L减R:一步中加L个、删R个,平衡探索与开发。
优势:结果最贴近真实性能;劣势:计算成本爆炸(每次评估都要训一次模型)。考试若说“用交叉验证评估特征子集”,基本就是Wrapper。
5.3 特征子集搜索策略:贪心不是懒,而是对计算资源的诚实
所有搜索策略,本质是在效果与时间间做trade-off:
- 单独最优(Individual Ranking):对每个特征单独计算评分(如卡方检验),排个序。最快,但完全忽略交互;
- 顺序前进(SFS):贪心但高效,适合n中等;
- 遗传算法(GA):模拟进化,用“交叉”“变异”在特征空间里智能游走,适合n极大且存在复杂交互的场景。
西电考题偏好SFS/SBS,因为它们逻辑清晰、步骤可手算。记住口诀:“前进是加优,后退是删劣”。
5.4 特征选择的终极陷阱:数据泄露,比模型错误更致命
最隐蔽、最致命的错误,不是选错指标,而是在特征选择前,没做数据分割。
错误做法:用全部数据(含测试集)计算互信息,选出Top-K特征,再用这K个特征训模型、测测试集。
后果:测试集信息已悄悄流入特征选择过程,导致严重高估性能(就像考试前偷看了答案)。
正确姿势:必须严格遵循“分割→在训练集上选特征→用选出的特征在训练集训模型→在测试集上评估”。考试若出现“特征选择在交叉验证内还是外”,答案永远是“内”。
6. SVM与集成学习:当单个模型遇到瓶颈,如何用“结构化协作”突破极限
单个模型再强,也有天花板:线性模型搞不定弯曲边界,决策树容易过拟合,KNN对高维数据失效……SVM和集成学习,代表了两种截然不同的“破壁”思路:一个靠数学升维,一个靠群体智慧。
6.1 SVM:小样本时代的“几何圣杯”,间隔最大化是它的信仰
SVM的核心信仰是:最好的分类面,不是离所有点都近的,而是离最近的点(支持向量)最远的。这个“间隔”越大,模型鲁棒性越强。
数学上,它求解一个带约束的优化问题:
$$ \min \frac{1}{2}|w|^2 \quad \text{s.t.} \quad y_i(w^T x_i + b) \geq 1, \forall i $$
解出的w和b,只由那些恰好满足 $y_i(w^T x_i + b) = 1$ 的点(支持向量)决定。
这就是为什么SVM对高维稀疏数据(如文本)友好:它不关心所有维度,只锚定最关键的几个“边界战士”。考试若问“支持向量的定义”,答:“使分类间隔达到约束边界的那些训练样本”。
6.2 核技巧:不用真的升维,就能享受高维红利的“魔法透镜”
当数据线性不可分(如圆圈内一类、圆圈外一类),SVM不放弃,而是请来“核函数”这位魔法师:
- 它不显式计算高维映射φ(x)(计算量爆炸),而是直接计算高维空间中两点的内积:$K(x_i,x_j) = \phi(x_i)^T \phi(x_j)$;
- 常用核:线性核($x_i^T x_j$)、多项式核($(x_i^T x_j + c)^d$)、RBF核($\exp(-\gamma|x_i-x_j|^2)$)。
RBF核是万能钥匙:γ越大,模型越关注局部细节(易过拟合);γ越小,越平滑(易欠拟合)。考试必考“RBF核中γ的作用”,答案就是“控制模型复杂度”。
6.3 Bagging与Boosting:群体智慧的两种范式,一个求稳,一个求精
集成学习不造新模型,而是组合多个基学习器。Bagging和Boosting,是两条平行宇宙:
Bagging(如Random Forest):
- 思想:自助采样(Bootstrap) + 并行训练 + 投票/平均;
- 关键:每次从训练集随机抽样(放回),约63.2%样本被选中,36.8%成为“袋外(OOB)”样本,天然可用于验证;
- 效果:降低方差,对高方差模型(如深决策树)效果显著。
Boosting(如AdaBoost):
- 思想:顺序训练 + 关注错误 + 加权组合;
- 关键:每轮训练后,加大被错分样本的权重,迫使下一轮基学习器聚焦“难点”;最终按准确率加权投票;
- 效果:降低偏差,对高偏差模型(如浅决策树)效果好。
考试辨析:Bagging各模型独立,可并行;Boosting模型强依赖,必须串行。若题干说“每轮调整样本权重”,必是Boosting。
6.4 什么时候该用SVM?什么时候该用集成?——一张表划清战场
| 场景 | 推荐方法 | 原因 | 西电考题信号 |
|---|---|---|---|
| 小样本(<1000)、高维(>100)、线性不可分 | SVM + RBF核 | SVM在小样本上不易过拟合,RBF核能处理非线性,核技巧规避高维计算灾难 | 题干强调“样本少”“维度高”“非线性” |
| 中等样本(1000~10000)、特征有强交互、需可解释性 | 随机森林(Bagging) | 树模型天然处理交互,OOB误差提供可靠评估,特征重要性可输出 | 题干给特征名(如“年龄”“收入”“学历”),问“哪个最重要” |
| 样本有明显难易区分、现有模型偏差大 | AdaBoost | Boosting专治偏差,通过聚焦错例,快速提升弱学习器 | 题干说“当前分类器在某类上错误率很高” |
| 实时预测要求毫秒级、内存受限 | 线性SVM或浅层决策树 | SVM预测只需计算 $w^T x + b$,极快;树预测是路径查找,也快 | 题干提“嵌入式设备”“实时响应” |
| 数据含大量噪声、异常值 | Bagging | 对异常值鲁棒(投票平均削弱单点影响) | 题干说“传感器数据有毛刺”“存在离群点” |
从那以后我每次做分类项目,都强制走一遍“数据探查→问题归类(监督/无监督?线性/非线性?小样本/大样本?)→方法初筛→参数敏感性分析”的流程。哪怕只是考试前默写一遍贝叶斯公式,我也要问自己:“如果P(x|ωᵢ)不是正态,这个公式还能用吗?哪里会崩?”——因为模式识别的终点,从来不是记住多少算法,而是培养一种对数据结构保持敬畏、对方法边界保持清醒的工程直觉。希望帮到你。
本文还有配套的精品资源,点击获取