第四章 线性判据与回归
4.1 线性判据基本概念
1.生成模型
- 给定训练样本 {𝒙𝑛},直接在输入空间内学习其概率密度函数𝑝(𝒙)。
- 在贝叶斯决策分类中,生成模型通常用于估计每个类别的观测似然概率𝑝(𝒙|𝐶𝑖),再结合先验概率得到联合概率𝑝(𝒙,𝐶𝑖)=𝑝(𝒙|𝐶𝑖)𝑝(𝐶𝑖)。然后,对所有类别进行积分,得到边缘概率密度函数𝑝 (𝒙) = Σ𝑖 𝑝(𝒙,𝐶𝑖)。最后,得到后验概率𝑝(𝐶𝑖|𝒙)。
- 优势:可以根据𝑝(𝒙)采样新的样本数据,可以检测出较低概率的数据,实现离群点检测;
- 缺点:如果是高维的𝒙,需要大量训练样本才能准确的估计𝑝(𝒙);否则,会出现维度灾难问题。
判别模型:直接在输入空间输出后验概率p(Ci|x)
2.线性判据
-
定义:判别模型𝑓(𝒙)是线性函数,则𝑓(𝒙)为线性判据。优势在于计算量少,在学习和分类过程中,线性判据方法都比基于学习概率分布的方法计算量少,适用于训练样本较少的情况。
-
对于二分类,决策边界是线性;对于多分类,相邻两类的决策边界也是线性
-
计算量少,适用于样本少的情况
-
线性判据模型:f(x) = wTx + w0
-
任意样本x到决策边界的垂直距离:r = f(x) / ||w||。
-
数学表达:
4.2 线性判据学习概述
- 1.监督式学习(训练)过程
- 2.识别过程 f(x)</>0?
- 3.key:寻找最优解
- 解不唯一;
- 参数空间&解域(从解域中找到最优解);
- 设计目标函数 + 约束条件(提高泛化能力)
- 最大/最小化目标函数
- 约束条件
- 使得解域范围收缩
4.3 线性判据学习概述
- 预处理:参数合一,负类样本取反
- 目标函数是被错误分类的所有训练样本的输出取反求和。
- 目标函数求偏导后不含参数w和w0,故使用梯度下降迭代求解最优,需要设置步长、阈值,和初始化w和w0,当目标函数小于阈值或者大于等于0后,停止。
- 算法表达:
- 算法流程
4.4 串行感知机算法
- 并行感知机算法 一次全部给出训练样本
- 串行感知机算法一个一个串行给出训练样本
- 思想:当前样本被错误分类的程度最小。
- 目标函数:
- 最小化目标函数:仍然使用梯度下降法来求解a;
- 算法:初始步长——>迭代更新(可能遍历多次)——>停止迭代(所有训练样本的输出值都大于0)。
- 收敛性:收敛性只是保证算法会停止,但是无法保证最终的结果是最优的。(全局最优和局部最优)——>(如果目标函数是J(a)是凸函数,那么局部最优就是全局最优)。
- 步长与收敛:步长决定收敛的速度。
- question:当样本处于决策边缘的时候,对该样本的决策有很大的不确定性。
- solve:加入Margin约束,提高泛化能力。(不再以0为标准,以b为标准)
- 最小化目标函数:求关于参数向量a的偏导。
4.5 Fisher线性判据
-
设计动机:线性判据的模型可以看做是把原空间各点x投影到新的一维空间y。y=wT+w0
-
基本原理:找到一个最合适的投影轴,使两类样本在该轴上投影的重叠部分最少,从而使分类效果达到最佳。
-
Fisher判据训练过程:
- 决策边界方程:
- 决策边界H,设W垂直于决策边界上的任何向量,为H的法向量;(作用:决定决策边界H的方向)
- W0的作用:
- 决定了决策边界的偏移量,使其能够满足两个类输出值分被为正or负;
- 决定决策边界相对于坐标原点的位置;
- 样本到决策边界的距离:
4.6 支持向量机基本概念
设计思想:给定一组训练样本,使得两个类中与决策边界最近的训练样本到决策边界之间的间隔最大。
间隔的数学定义:在两个类的训练样本中,分别找到与决策边界最近的两个训练样本,记作x+和x-。
间隔的计算:
支持向量机(SVM):最大化总间隔。
4.7 拉格朗日乘数法
- 拉格朗日乘数法:用于解决支持向量机的目标函数的一个条件优化问题。
- 等式约束:f(x)的极值点x∗必须位于曲线g(x)=0上。
- 对偶可行性:始终存在 (lambuda>=0),满足驻点条件。
- KTT条件:最小化问题;多个约束问题。
4.8 拉格朗日对偶问题
- 对偶函数:主问题的最优值下界
- 对偶函数LD是拉格朗日函数L的逐点最小值函数。
- 逐点最小值函数min是凹函数。
- 由于逐点最大化函数是凹函数,且拉格朗日函数可以看做关于对偶变量的仿射组合,故对偶函数LD是凹函数。
- 由于目标函数LD是凹函数,约束条件是凸函数,所以对偶问题是凸优化问题。
- 强对偶性:如果强对偶性成立,则对偶问题获得主问题的最优下界。
??question:拉格朗日带有约束条件,如何优化求解?主问题难以求解或者是NP难问题。
4.9 支持向量机学习算法
- 带不等式约束的优化问题使用拉格朗日对偶法求解。
- key:构造对偶函数。
- 对偶问题的求解:二次规划问题+参数最优化。
- 决策过程:𝒘 和 𝑤0 的学习过程实际上是从训练样本中选择一组支持向量,并将这些支持向量存储下来,用作线性分类器。
4.10 软间隔支持向量机
-
软间隔:克服过拟合。
-
软间隔克服过拟合的原理:可以将SVM的硬间隔(hard margin)放宽到软间隔(soft margin),允许一些训练样本出现在间隔区域内,从而具备一定的克服过拟合的能力)
-
设计思想:引入松弛变量。
-
分类器表达:
- 设计过程:构建目标函数->构建拉格朗日函数->构建对偶函数(在极值点得到对偶函数LD)
4.11 线性判据多类分类
-
多类分类的本质:非线性
-
多个模型(线性/非线性)组合成非线性决策边界
策略: -
思路一:One-to-all
- 假设每个类与剩余类可分,总共需要训练K个分类器。
- 问题:每个分类器的正负类样本个数不均衡。
- 混淆区域问题:
- 拒绝选项
- 重叠。
-
思路二:线性机
- 假设:假设每个类与剩余类线性可分。
- 训练:基于one-to-all策略训练𝐾个线性分类器𝑓𝑖,每个分类器对应一个类𝐶𝑖。
- 决策:使用输出值投票法(max函数)给定测试样本𝒙,其属于所有分类器中输出值最大的那个类。
- 取输出值最大:该值最大表示属于该类的可能性越大。
- 线性机 = 𝐾个线性模型 + 一个max函数
- 决策边界:
- 通过max函数的引入,线性机将特征空间最终分为𝐾个决策区域。
- 决策边界𝐻𝑖𝑗垂直于超平面(𝒘𝑖 − 𝒘𝑗)
- 输出值投票法:使用两类权重𝒘向量的差值决定相邻两类之间的决策边界;
- 标签识别法:利用每一类的权重𝒘向量决定该类与剩余类之间的决策边界。
- 优势:由于使用max函数,不再有混淆区域(即拒绝区域和重叠区域)。通过划定相邻两类之间的边界,分割了重叠区域和拒绝区域。
- 问题:可能出现最大的𝑓𝑖(𝒙) ≤ 0,即测试样本𝒙出现在拒绝区域。如果严格按照线性判据的定义,拒绝区域其实是线性机(基于one-to-all策略)无法正确判断的区域。
-
思路三:one-to-one策略
- 针对每两个类𝐶𝑖 和𝐶𝑗 ,训练一个线性分类器:𝑓𝑖𝑗 𝒙 = 𝒘𝑖𝑗𝑇𝒙 + 𝑤0𝑖𝑗。𝐶𝑖类真值为正;𝐶𝑗类真值为负。总共需要训练𝐾(𝐾 − 1) /2个分类器。
- 优势:适用于一些线性不可分的情况,从而实现非线性分类。
- 与one-to-all策略相比,不再有重叠区域。
- 问题:会出现拒绝选项。- 总结:
- 使用线性判据进行多类分类,本质上是利用多个线性模型组合而成一个非线性分类器。
- 因此,决策边界不再是由单个超平面决定,而是由多个超平面组合共同切割特征空间。
- 总结:
4.12 线性回归
- 输入&输出:
- 线性回归VS线性判据
线性回归模型如何学习:学习参数w、目标函数(最小化均方差)、优化目标(对参数求偏导)(梯度下降更新迭代or最小二乘法得封闭解)
概率解释
4.13 逻辑回归的概念
-
典型模型的属性
-
MAP分类器
- 如果两个类别数据分布的协方差矩阵不同(即Σ𝑖 ≠ Σ𝑗),则MAP分类器的决策边界是一个超二次型曲面,即非线性。
- 如果两个类别数据分布的协方差矩阵相同(即Σ𝑖 = Σ𝑗 ),则MAP分类器的决策边界是一个超平面,即线性。
-
Logit变换:𝐶1类的后验概率与𝐶2类的后验概率之间的对数比率
- 对于二类分类,MAP分类器通过比较后验概率的大小来决策。
- 在每类数据是高斯分布且协方差矩阵相同的情况下,由于Logit变换等同于线性判据的输出,所以在此情况下Logit(z) 是线性的。
-
Sigmoid函数:连接线性模型和后验概率的桥梁
- 线性模型𝑓(𝒙) + Sigmoid函数 = 后验概率
-
逻辑回归:线性模型𝑓(𝒙) + sigmoid函数。
-
决策边界:单个逻辑回归可以用于二类分类;给定两个类,逻辑回归的决策边界仍然是线性的超平面。
- 逻辑回归总结:
- 逻辑回归本身是一个非线性模型。
- 逻辑回归用于分类:仍然只能处理两个类别线性可分的情况。但是,sigmoid函数输出了后验概率,使得逻辑回归成为一个非线性模型。因此,逻辑回归比线性模型向前迈进了一步。
- 逻辑回归用于拟合:可以拟合有限的非线性曲线。
4.14 逻辑回归的学习
- 学什么:给定训练样本,学习参数𝒘和𝑤0。
- 训练样本:
- 正类(𝐶1类)样本的输出真值𝑡𝑛 = 1;
- 负类(𝐶2类)样本的输出真值𝑡𝑛 = 0。
- 注意:这种真值取值方式与SVM不一样。
- 最大似然估计法:给定单个输入样本𝒙,模型输出的类别标签𝑙可以看做一个随机变量。
- 交叉熵:交叉熵可以用来度量两种分布的差异程度。
- 目标函数:给定𝑁个训练样本,把每个训练样本的交叉熵求和,得到最终的目标函数:
- 目标函数优化:梯度下降法;
- 步骤:对参数w求偏导;对参数w0求偏导;参数更新:采用梯度下降法更新w和w0;
4.15 Softmax判据的概念
- 逻辑回归输出:属于正类的后验概率
- 后验概率的多类情况:一个类与剩余类的后验概率比率。
- 逻辑回归是由Logit变换反推出来的。
- 由Logit变换可知:正负类后验概率比率的对数是一个线性函数。
- 分类𝐾个类,可以构建𝐾个线性判据。第𝑖个线性判据表示𝐶𝑖类与剩余类的分类边界,剩余类用一个参考负类(reference class) 𝐶𝐾来表达。
- 对于多类分类,K个线性模型也跟每个类对应的后验概率建立起了联系。
- Softmax判据:𝐾个线性判据 + softmax函数。
- Softmax判据用于分类,等同于基于one-to-all策略的线性机。
- 适用范围:分类、回归
- 总结
- Softmax判据本身是一个非线性模型。
- Softmax判据用于分类:只能处理多个类别、每个类别与剩余类线性可分的情况。但是, Softmax判据可以输出后验概率。因此,Softmax判据比基于one-to-all策略的线性机向前迈进了一步。
- Softmax判据用于拟合:可以输出有限的非线性曲线。
- 模型对比:
4.16 Softmax判据的学习
- 学什么:给定训练样本,学习K组参数
- 目标函数:最大似然估计。针对所有训练样本,最大化输出标签分布的似然函数,以此求得参数的最优值。似然函数为所有训练样本输出概率的乘积。
- 判别式学习是依赖所有类的训练样本来学习参数。
- Softmax:针对每个输出类别分别计算梯度值,但每个参数的梯度值与所有类别样本都相关。
4.17 核支持向量机
- Kernel方法的基本思想:如果样本在原始特征空间(𝑋空间)线性不可分,可以将这些样本通过一个函数𝜑映射到一个高维的特征空间(Φ空间),使得在这个高维空间,这些样本拥有一个线性分类边界。
- 常见核函数:
- 多项式核函数:
- 高斯核函数: