机器学习基础整理(第2章) - 模式分类
文章目录
- 什么是模式识别/分类器?
- 基础模型 - 模式分类器
- 监督和非监督分类器
- 贝叶斯决策规则
- 最小误差 (Minimum Error)
- 最小风险 (Minimum Risk)
- 最小损失和最小风险的关系
- Neyman-Pearson决策规则
- 判别函数 (Discriminant Function)
- 线性判别函数 (Linear Discriminant Functions)
- 线性机
- 分段线性判别函数 (Piecewise Linear Discriminant Functions)
什么是模式识别/分类器?
我们理所当然地认为我们能够在我们的世界中走动并认识到:
汽车,人类,动物,一般对象,尽管它们的形式和存在多种多样。
在这些任务中,什么特征帮助我们识别?
在模式识别中,
- 我们研究如何设计能够辨认或分类"事物"的机器。
- 我们研究能描述"事物"的特征的统计。
- 我们研究如何衡量模式识别系统的性能 以及 选择表现好的系统。
基础模型 - 模式分类器
模式 (pattern) 是一组 能代表一个 ppp 维向量的 数字或值,
x=[x1,x2,...,xp]tx=[x_1, x_2, ..., x_p]^tx=[x1,x2,...,xp]t
其中 ttt (有时候也可以是 TTT ) 代表了向量转置。
模式的例子:
- 图片中的像素
- 股票在股票市场上的收盘价
- 语音信号的录音
- 天气变量的测量
- 一组关于房产的测量值
- 一组关于人的行为和生活方式的测量
- 等等
假设存在 CCC 种类别,其被表示为:
ω1,...,ωC\omega_1, ..., \omega_Cω1,...,ωC
存在一个变量 zzz, 其代表一个模式 xxx 属于 哪个类别 ωi\omega_iωi,也就是:
若 z=iz=iz=i,则模式 xxx 属于 类别 ωi\omega_iωi, i∈{1,...,C}i \in \{1, ..., C\}i∈{1,...,C}
现在我们的问题就是如何设计模式分类器。
设计一个模式分类器意味着,我们需要指定分类器模型参数,以及确保其指定模式的响应 (response) 是最优的。
设计流程: 我们拥有一组已知类别的模式 {(xi,zi)}\{(x_i, z_i)\}{(xi,zi)},其被称为训练或设计集,被用来设计分类器。评估以及设置最佳操作参数 (optimal operating parameters) 。
一旦我们拥有已设计好的分类器,我们就可以估计 未知模式 的类别所属。
通常,我们假设用于 训练的样本 来自与 测试样本 和 操作样本 (operational samples) 相同的概率分布。
对于一个分类器,我们得知:
- 表示模式 (representation pattern) 是我们从传感器中获得的原始数据 (raw data),如,图片或视频像素,股票价格等。
- 特征模式 (feature pattern) 是一小组 从一些 转换 获取的变量,如根据特征选择或提取。
- 训练好的分类器使用特征模式对其输入处所呈现的模式做出决定。
此外,还有一些需要注意的:
- 我们要解决的问题: 给定一组 已知类别模式 的训练集,我们寻求设计一个对 预期操作条件 最佳的分类器。
- 给定的 训练模式集 (training patterns) 是有限的。
- 分类器模型不能过于复杂,它不能拥有太多参数,否则可能会导致过拟合。
- 在 训练集 上达到 最优性能 并不重要。
- 达到最优的泛化性能非常重要。( 这代表的是 真实操作条件的数据 的预期性能 - 指的是 能提取出训练集 的无限集 infinite set)
监督和非监督分类器
主要有两种类别的分类器:
- 监督型: 分类器设计流程拥有一组带标签 (类别) 的数据样本,这就是示例或训练集。
- 非监督型: 给定的数据是没被标注的,我们要从 能区分各组的数据和特征中去寻找组别。
- 半监督型: 标注的和未标注的数据都被用于训练。
使用尽可能简单的模型来描述系统的原则在 “Occan’s razor” 中得到了体现,即对那些不必要复杂的事物进行更简单的解释。该原理是非常流行的稀疏表示方法 (sparse representation) 的基础。
贝叶斯决策规则
最小误差 (Minimum Error)
这种分类方法 (也被称为判别 discrimination) 假设了我们完全了解每个类别的概率密度函数。
使 CCC个类别拥有已知的先验概率 (priori probabilities),P(ω1),...,P(ωC)P(\omega_1), ..., P(\omega_C)P(ω1),...,P(ωC)。我们使用 测量向量 (measurement vector) xxx将 xxx 分配给 CCC 个类别之一。
制定一个能通过 使 让给定观测 xxx 分配 类别 ωj\omega_jωj 时 在 ω1,...,ωC\omega_1, ..., \omega_Cω1,...,ωC 中 拥有最高概率 (如,P(ωj∣x)P(\omega_j|x)P(ωj∣x),后验概率 posterior probability),接着将 xxx 分配给 类别 ωj\omega_jωj 的决策规则。
我们可以使用贝叶斯定理根据 先验概率 和 类条件密度函数 (class-conditional density functions) p(x∣ωi)p(x|\omega_i)p(x∣ωi) 来表达后验概率 P(ωj∣x)P(\omega_j|x)P(ωj∣x)
其中
注: 根据统计或者经验得到的概率值,被称为先验概率。而事情已经发生,要得到这件事情发生的原因是由某个因素引起的可能性大小则被称为后验经验,也可以说,通过贝叶斯定理和先验概率计算出来的结果就是后验概率。
根据类条件密度,我们可以将决策规则写为,若要将 xxx 分配给 ωj\omega_jωj,则:
p(x∣ωj)P(ωj)>p(x∣ωk)P(ωk),k=1,...,C,k≠jp(x|\omega_j)P(\omega_j) \gt p(x|\omega_k)P(\omega_k), k = 1, ..., C, k \ne jp(x∣ωj)P(ωj)>p(x∣ωk)P(ωk),k=1,...,C,k=j
这就是贝叶斯最小误差规则 (Bayes’ rule for minimum error)。
注: 贝叶斯误差是在给定特征记得情况下,假定数据无限且准确,依靠统计所能得到的最小误差。(假设真实世界中90%长头发的人为女性,10%为男性 (这是已知的真实分布);此时已知一个人头发长,预测该同学性别。由于只能预测男/女。此时即使你知道真实分布,预测为女,也会有10%的误差。这就是贝叶斯误差。) 实际上,贝叶斯误差难以求得,该指标更多在学术领域中更有意义。
在二分类的情况下,我们能将贝叶斯最小误差规则写成 似然比 (likelihood ratio, Lr(x)L_r(x)Lr(x)) 的形式 (对于, x∈classω1x \in class \omega_1x∈classω1):
Lr(x)=p(x∣ω1)p(x∣ω2)>P(ω2)P(ω1),L_r(x) = \frac{p(x|\omega_1)}{p(x|\omega_2)} \gt \frac{P(\omega_2)}{P(\omega_1)},Lr(x)=p(x∣ω2)p(x∣ω1)>P(ω1)P(ω2),
举个例子,有一个二分类的判别问题,其中类别 ω1\omega_1ω1 其符合正态分布 p(x∣ω1)=N(x∣0,1)p(x|\omega_1) = N(x | 0, 1)p(x∣ω1)=N(x∣0,1),而 类别 ω2\omega_2ω2 则符合正态混合分布 p(x∣ω2)=0.6N(x∣1,1)+0.4N(x∣−1,2)p(x|\omega_2) = 0.6N(x|1, 1) + 0.4N(x|-1, 2)p(x∣ω2)=0.6N(x∣1,1)+0.4N(x∣−1,2)
p(x∣ωi)p(ωi),i=1,2p(x|\omega_i)p(\omega_i), i=1,2p(x∣ωi)p(ωi),i=1,2 并且 P(ω1)=P(ω2)=0.5P(\omega_1) = P(\omega_2) = 0.5P(ω1)=P(ω2)=0.5 的图像如下:
下图 是 似然比 Lr(x)L_r(x)Lr(x) 以及 阈值 P(ω2)/P(ω1)P(\omega_2)/P(\omega_1)P(ω2)/P(ω1)
根据图像,若 Lr(x)>P(ω2)P(ω1)L_r(x) \gt \frac{P(\omega_2)}{P(\omega_1)}Lr(x)>P(ω1)P(ω2),则观测到的样本会被分类为 ω1\omega_1ω1。
最小风险 (Minimum Risk)
这个决策规则最小化预期的损失或风险。
定义一个损失矩阵,∧\land∧,其中的元素为:
λji=\lambda_{ji} =λji= 当 x∈ωjx \in \omega_jx∈ωj 的时候,将模式 xxx 分配给 ωi\omega_iωi 的成本。
分配一个模式 xxx 到 类别 ωi\omega_iωi 的 条件风险 (conditional risk) 被定义为:
决策区域 (decision region) Ωi\Omega_iΩi的平均风险为:
通过将与 所有类别相关的风险 相加能得到 总体预期成本或风险:
若区域 Ωi\Omega_iΩi 被选择时,风险最小且使得:
则我们可以称 x∈Ωix \in \Omega_ix∈Ωi
贝叶斯风险,r∗r^*r∗,即是:
对于一个二分类问题,我们可以将 条件风险 写为:
最小风险决策规则能在 l1(x)<l2(x)l_1(x) \lt l_2(x)l1(x)<l2(x) 的情况下,简单地确定 ω1\omega_1ω1 就是期望的类别。
这也可以用后验概率来表示:
当 (λ11−λ12)P(ω1∣x)<(λ22−λ21)P(ω2∣x)(\lambda_{11}-\lambda_{12})P(\omega_1|x) \lt (\lambda_{22}-\lambda_{21})P(\omega_2|x)(λ11−λ12)P(ω1∣x)<(λ22−λ21)P(ω2∣x) 的情况下,我们能确定 ω1\omega_1ω1
也可以用先验概率和条件密度来表示:
当 (λ11−λ12)p(x∣ω1)P(ω1)<(λ22−λ21)p(x∣ω2)P(ω2)(\lambda_{11}-\lambda_{12})p(x|\omega_1)P(\omega_1) \lt (\lambda_{22}-\lambda_{21})p(x|\omega_2)P(\omega_2)(λ11−λ12)p(x∣ω1)P(ω1)<(λ22−λ21)p(x∣ω2)P(ω2) 的情况下,我们能确定 ω1\omega_1ω1
最小损失和最小风险的关系
若我们考虑一种特殊情况 同等成本 (对称 或 0-1) 损失矩阵,∧\land∧,即:
将此条件替换为最小风险贝叶斯决策规则,则得出对于 k=1,...,Ck = 1, ..., Ck=1,...,C:
这个式子能被简化为,当 x∈classωix \in class \omega_ix∈classωi 时:
p(x∣ωi)p(ωi)≥p(x∣ωk)p(ωk),k=1,...,Cp(x|\omega_i)p(\omega_i) \ge p(x|\omega_k)p(\omega_k), k = 1, ..., Cp(x∣ωi)p(ωi)≥p(x∣ωk)p(ωk),k=1,...,C
这就和最小误差贝叶斯规则一样了。
这种情况下1-0损失矩阵 (zero-one loss matrix) 的相关风险是:
Neyman-Pearson决策规则
对于二分类问题,这是贝叶斯决策规则的替代方法。
在二分类问题中,被定义了两种类型的误差:
- 类型一 (Type I): 将一个类别 ω1\omega_1ω1 的模式分类为属于 类别 ω2\omega_2ω2 并具有相关的错误概率
- 类型二 (Type II): 将一个类别 ω2\omega_2ω2 的模式分类为属于 类别 ω1\omega_1ω1 并具有相关的错误概率
Neyman-Pearson 决策规则目的就是在 ϵ2\epsilon_2ϵ2 等于 常数ϵ0\epsilon_0ϵ0 的情况下,最小化 ϵ1\epsilon_1ϵ1。
该决策规则适用于信号处理,例如 雷达信号检测等 双向检测问题 (two-way detection problem)。
若我们将 类别ω1\omega_1ω1 视作 阳性类 (positive class),而将 ω2\omega_2ω2 视为 阴性类 (negative class),我们有:
- Type I 误差概率: 被称为 假阴性率 (false negative rate),也就是阳性样本被错误分配到 阴性类别 的比例。
- Type II 误差概率: 被称为 假阳性率 (false positive rate),也就是阴性样本被错误分配到 阳性类别 的比例。
Type II 误差 也被称为 误报 (false alarm)。
这一决策规则 最小化 目标函数:
其中,μ\muμ 是拉格朗日乘数。
若我们选择 Ω1\Omega_1Ω1 使得 被积函数(integrand) 为负,则目标函数被最小化了。
即是,若 μp(x∣ω2)−p(x∣ω1)<0\mu p(x|\omega_2) - p(x|\omega_1) \lt 0μp(x∣ω2)−p(x∣ω1)<0,则 x∈Ω1x\in\Omega_1x∈Ω1
这可以被写为,若 p(x∣ω1)p(x∣ω2)>μ\frac{p(x|\omega_1)}{p(x|\omega_2)} \gt \mup(x∣ω2)p(x∣ω1)>μ,则 x∈Ω1x\in\Omega_1x∈Ω1
通过使得下面式子成立来选择 μ\muμ
其中,ϵ0\epsilon_0ϵ0通常应用 数值解 被找到。
决策规则的性能被以 能画出 正阳率 (true positive - (1−ϵ1)(1 - \epsilon_1)(1−ϵ1)) 和 假阳率 (false positive - ϵ2\epsilon_2ϵ2) 的接收器操作特征 (receiver operating characteristic - ROC) 曲线
两个 单变量正态分布 (univariate normal distribution) 和 不同 ddd 值的接收器操作特征 (ROC),d=∣µ1−µ2∣d = |µ_1 − µ_2|d=∣µ1−µ2∣, µ1µ_1µ1 和 µ2µ_2µ2 是分布的平均值。
判别函数 (Discriminant Function)
贝叶斯决策规则要求要有 通常在实践中并不可用的 先验类概率知识 (knowledge of prior class probabilities) 以及 类条件密度 (class conditional densities),这些必须从数据中估计。
所引入的技术类别 不对 p(x∣ωi)p(x|ω_i)p(x∣ωi) 做任何假设,而是假设一种 判别函数 的形式。
判别函数是引出分类规则 (classfication rule) 的特征向量 xxx 函数。
在一个二分类问题中,一个判别函数 h(x)h(x)h(x) 对于一个常数 kkk 满足:
判别函数并不唯一,若 f(.)f(.)f(.) 是一个 单调函数 ( 在定义域中单调递增或递减 ),则:
其中 k‘=f(k)k^‘=f(k)k‘=f(k),其和 h(x)h(x)h(x) 给出一样的决策。
对于 CCC 个类别的分类问题,我们定义 CCC 个判别函数,若 gi(x)g_i(x)gi(x) 成立则:
gi(x)>gj(x)⇒x∈ωi,j=1,...,C;j≠ig_i(x) \gt g_j(x) \Rightarrow x \in \omega_i, j = 1, ..., C; j \ne igi(x)>gj(x)⇒x∈ωi,j=1,...,C;j=i
这意味着一个特征向量被分配到了有最大判别 (largest discriminant) 的类。
判别技术依靠 被指定的函数形式,而非潜在的分布。
函数的参数在训练过程中被改变调整。
线性判别函数 (Linear Discriminant Functions)
线性判别函数是 测量(或特征)向量 x=[x1,x2,...,xp]tx = [x_1, x_2, ..., x_p]^tx=[x1,x2,...,xp]t 中元素的线性组合,使得:
g(x)=ωtx+ω0=∑i=1pωixi+ω0g(x) = \omega^tx+\omega_0=\sum_{i=1}^p\omega_ix_i+\omega_0g(x)=ωtx+ω0=i=1∑pωixi+ω0
其中我们需要指定 权重向量 (weight vector) ω\omegaω 以及 阈值权重 (threshold weight) ω0\omega_0ω0。
该式子描述一个 超平面 (hyperplane),其单位法向 (unit normal) 在 ω\omegaω 方向上,从原点的垂直距离 (perpendicular distance) 为 ∣ω0∣/∣ω∣|\omega_0|/|\omega|∣ω0∣/∣ω∣
下图表明了线性判别函数的几何
模式 xxx 的 判别函数的值 是与 超平面 的垂直距离。
线性机
使用线性判别函数的分类器一般被称为 线性机 (linear machines)。
最小距离分类器 (minimum-distance classifier) 是一个例子。其使用 最近邻点 (nearest-neighbour) 决策规则。
使分类器的原型点 (prototype points) 表示为 p1,...,pCp_1, ..., p_Cp1,...,pC,每一个点代表一个分类 ωi\omega_iωi,最小距离分类器将 xxx 根据 最近点 pip_ipi 分配给 类别 ωi\omega_iωi。
∣∣x−pi∣∣2=xtx−2xtpi+pitpi||x - p_i||^2 = x^tx - 2x^tp_i + p_i^tp_i∣∣x−pi∣∣2=xtx−2xtpi+pitpi
分配到 xxx 的类为:
ωi=maxi(xtp−12pitpi)\omega_i = max_i(x^tp-\frac{1}{2}p_i^tp_i)ωi=maxi(xtp−21pitpi)
我们可以将这个分配 联系到 线性判别函数中:
g(x)=ωitx+ωi0g(x) = \omega^t_ix+\omega_{i0}g(x)=ωitx+ωi0
其中:
ωi=pi\omega_i = p_iωi=pi
ωi0=−12∣∣pi∣∣2\omega_{i0} = -\frac{1}{2}||p_i||^2ωi0=−21∣∣pi∣∣2
这表明了其确实是一个线性机。
可以选择原型点作为每个类的均值,来得到一个类均值分类器 (class mean classifier)。
每个边界 (boundary) 是连接 相邻区域 的原型点的线的垂直平分线 (perpendicular bisector)。也要注意到,线性机的决策区域 (decision regions) 总是凸函数 (convex)。
下图是 最小距离分类器的决策区域。
分段线性判别函数 (Piecewise Linear Discriminant Functions)
线性机拥有简单形式,但其也有限制,也就是其无法分离决策区域必须是非凸 (non-convex) 的情况。
下面的例子展示了线性判别式无法分离的二分类问题,其需要分段线性判别函数。
我们能通过使用 分段线性判别函数 来推广 最小距离分类器 以解决前面的 二分类问题。对于每个类别,我们允许多于一个原型点的存在。
假设在类别 ωi\omega_iωi 有 nin_ini 个原型点,pi1,...,pini,i=1,...,Cp_i^1, ..., p_i^{n_i}, i=1, ..., Cpi1,...,pini,i=1,...,C
将模式 xxx 分配给 类别 ωi\omega_iωi 的 判别函数 被定义为:
其中 gijg_i^jgij 是一个 线性辅助判别函数 (linear subsidiary discriminant function),被定义为:
gij(x)=xtpij−12pijt,j=1,...,ni;i=1,...,Cg_i^j(x) = x^tp_i^j -\frac{1}{2}p_i^{j^t}, j = 1, ..., n_i; i =1, ..., Cgij(x)=xtpij−21pijt,j=1,...,ni;i=1,...,C
机器学习基础整理(第2章) - 模式分类相关推荐
- 机器学习 —— 基础整理(六)线性判别函数:感知器、松弛算法、Ho-Kashyap算法...
这篇总结继续复习分类问题.本文简单整理了以下内容: (一)线性判别函数与广义线性判别函数 (二)感知器 (三)松弛算法 (四)Ho-Kashyap算法 闲话:本篇是本系列[机器学习基础整理]在time ...
- Python机器学习基础教程-第2章-监督学习之K近邻
前言 本系列教程基本就是摘抄<Python机器学习基础教程>中的例子内容. 为了便于跟踪和学习,本系列教程在Github上提供了jupyter notebook 版本: Github仓库: ...
- lda 吗 样本中心化 需要_机器学习 —— 基础整理(四):特征提取之线性方法——主成分分析PCA、独立成分分析ICA、线性判别分析LDA...
本文简单整理了以下内容: (一)维数灾难 (二)特征提取--线性方法 1. 主成分分析PCA 2. 独立成分分析ICA 3. 线性判别分析LDA (一)维数灾难(Curse of dimensiona ...
- 机器学习 —— 基础整理(一)贝叶斯决策论;二次判别函数;贝叶斯错误率;生成式模型的参数方法...
本文简单整理了以下内容: (一)贝叶斯决策论:最小错误率决策.最小风险决策:经验风险与结构风险 (二)判别函数:生成式模型:多元高斯密度下的判别函数:线性判别函数LDF.二次判别函数QDF (三)贝叶 ...
- 机器学习 —— 基础整理(三)生成式模型的非参数方法: Parzen窗估计、k近邻估计;k近邻分类器...
本文简述了以下内容: (一)生成式模型的非参数方法 (二)Parzen窗估计 (三)k近邻估计 (四)k近邻分类器(k-nearest neighbor,kNN) (一)非参数方法(Non-param ...
- 机器学习 —— 基础整理(二)朴素贝叶斯分类器;文本分类的方法杂谈
上一篇博客复习了贝叶斯决策论,以及生成式模型的参数方法.本篇就给出一个具体的例子:朴素贝叶斯分类器应用于文本分类.后面简单谈了一下文本分类的方法. (五)朴素贝叶斯分类器(NaïveBay ...
- 三万字机器学习项目整理(基础到进阶)
如果你是学生.计算机领域的工作者,我强烈建议你学习.掌握机器学习,我不敢说它是最简单的(机器学习的确很简单),但是掌握机器学习一定是性价比最高的. 本文用浅显易懂的语言精准概括了机器学习的相关知识,内 ...
- 《机器学习系列教程》:第二章 机器学习基础
第二章 机器学习基础 机器学习and 数据分析 2.2 监督学习.非监督学习.半监督学习.弱监督学习? 根据数据类型的不同,对一个问题的建模有不同的方式.依据不同的学习方式和输入数据,机器学习主要分为 ...
- 第二章_机器学习基础
文章目录 第二章 机器学习基础 2.1 各种常见算法图示 2.2 监督学习.非监督学习.半监督学习.弱监督学习? 2.3 监督学习有哪些步骤 2.4 多实例学习? 2.5 分类网络和回归的区别? 2. ...
最新文章
- java加减乘除运算代码_从“位运算”炫技到“操作符”,再到逐步理解“群论”...
- 调用webservice接口,数据不回滚问题
- ca证书 linux 导入_CA搭建与证书申请
- Java Stream流的概念
- Mac 技术篇-VS Code插件安装方法,查看vscode已安装插件的方法
- update-alternatives使用方法
- my06_sysbench install for mysql 并初始化表数据
- poj-2029 Get Many Persimmon Trees
- html placeholder 兼容问题,解决placeholder的兼容性
- nginx 405 not allowed问题解决方法
- 计算机存储系统中,有哪些措施可以提高 CPU 访问存储系统的速度?
- matlab编程dea模型,DEA的Matlab程序(数据包络分析)(最新整理)
- 根据轨道根数解算位置速度
- 怎么取消计算机文件共享,Win10系统怎么取消文件共享
- 《东周列国志》第七十回 杀三兄楚平王即位 劫齐鲁晋昭公寻盟
- .NET报表设计器ActiveReports入门:操作界面详解
- 吴恩达深度学习教程中文笔记目录
- 常用ansible命令
- React高级话题之Refs and the DOM
- 【免费开放源码】审批类小程序项目实战(预约审批端)