《机器学习》第一次作业——第一至三章学习记录和心得
第一章 模式识别基本概念
1.1 模式识别基本概念
模式识别的定义:根据已有知识的表达,针对待识别模式,判别决策 其所属的类别或者预测其对应的回归值——本质是一种推理过程
模式识别的划分:根据任务可分为“分类”和“回归”两种形式
分类 Classification:
输出量是离散的类别表达,即输出待识别模式所属的类别——二类/多类分类
回归 Regression:回归是分类的基础——离散的类别值是由回归值做判别决策得到的
输出量是连续的信号表达(回归值)——输出量维度:单个/多个维度
应用领域: CV(字符识别、交通标志识别、动作识别);人机交互领域(语音识别);医学领域(心跳异位搏动识别);网络领域(应用程序识别—基于TCP/IP流量);金融领域(银行信贷识别、股票价格预测);机器人领域(目标抓取—机械手目标抓取点位姿);无人车领域(无人驾驶)
1.2 模式识别的数学表达
模式识别数学解释:可以看做一种函数映射f(x),将待识别模式x从输入空间映射到输出空间。函数f(x)是关于已有知识的表达。
f(x)的形式:可解析表达的 vs 难以解析表达的
f(x)的输出:确定值 vs 概率值
输入空间:原始数据x所在的空间——空间维度:输入数据的维度
输出空间:输出的类别/回归值y所在的空间——空间维度:1维、类别的个数(>2)、回归值的维度
模型 model:
用于回归:
特征提取:从原始输入数据提取更有效的信息+回归器:将特征映射到回归值
用于分类:
模型(广义):特征提取+回归器+判别函数
模型(狭义):特征提取+回归器
分类器:回归器+判别函数
判别函数:特定的非线性函数,记为g————通常已知,不作为模型组成
二类分类:sign函数
多类分类:max函数(去最大的回归值所在维度对应类别)
特征:用于区分不同类别模式的、可测量的量
特征的特性:
1.具有辨别能力(提升不同类别之间的识别性能——基于统计学规律而非个例)
2.具有鲁棒性(针对不同的观测条件,仍能够有效表达类别之间的差异性)
特征向量的定义&性质
1.3 特征向量的相关性
意义:每个特征向量代表一个模式,故度量特征向量两两之间相关性是识别模式之间是否相似的基础
点积的代数定义:点积的结果是一个标量表达、点积具备对称性、点积是一个线性变换
点积的几何定义:
-
点积可以表征两个特征向量的共线性,即方向上的相似程度
-
点积=0,说明两个向量是正交的
投影:向量x分解到向量y方向上的程度,分解得越多,说明两个向量方向上越相似
残差向量:向量x分解到向量y方向上得到的投影向量原向量x的误差
欧式距离:表征两个箱梁志坚相似程度(综合考虑方向及模长)
1.4 机器学习基本概念
线性模型:
- 模型结构是线性的(直线、面、超平面):
(w及w0是模型参数)
- 适用于数据线性可分/线性表达的数据
非线性模型:
- 模型结构是非线性的(曲线、曲面、超曲面)
- 适用于线性不可分/线性不可表达的数据:异或问题
- 常见非线性模型:多项式、神经网络、决策树……
样本量 vs 模型参数量
- 训练样本个数 N = 模型参数个数 M ——> 参数有唯一解
- 训练样本个数 N >> 模型参数个数 M ——> 无准确的解 ——> 往目标函数中额外添加一个标准,通过优化该标准得近似解
- 训练样本个数 N <= 模型参数个数 M ——> 无数个解/无解 ——> 在目标函数中加入体现对于参数解的约束条件,据此选出一个最优的解
机器学习流程示意图
机器学习的学习方式
- 监督式学习
1.定义:训练样本及其输出真值都给定的情况下的机器学习算法
2.监督式学习使机器学习中最常见的学习方式
3.通常使用最小化训练误差作为目标函数进行优化
- 无监督式学习
1.定义:之给定训练样本,没给定输出真值的情况下的机器学习算法
2.难度远高于监督式算法
3.根据训练样本间的相似程度进行决策
4.典型应用:聚类、图像分割
- 半监督式学习
1.定义:既有标注的训练样本,又有未标注的训练样本的情况下的机器学习算法
2.可看成带约束条件的无监督式学习问题:标注过的训练样本作为约束条件
3.典型应用:网络流数据
- 强化学习
1.定义:机器自行探索决策、真值滞后反馈的过程
2.典型应用:棋类游戏(Alpha Go)
1.5 模型的泛化能力
泛化能力:训练得到的模型不仅要对训练样本具有决策能力,也要对新的模式具有决策能力
过拟合:泛化能力低的表现
-
模型训练阶段表现很好,但在测试阶段表现很差
-
模型过于拟合训练数据
提高泛化能力
-
选择复杂的模型
-
正则化:在目标函数中加入关于参数的正则项,通过调节正则系数,降低过拟合的程度
调节超参数
- 从训练集中划分出一个验证集,基于验证集调整选择超参数
1.6 评估方法与性能指标
评估方法
-
留出法
-
随机划分:训练集和测试集,用训练集训练模型,用测试集评估模型量化指标
-
取统计值:取量化指标的平均值/方差/最大值等作为最终性能量化评估结果
-
-
K折交叉验证
-
将数据集分割成K个子集,从中选取单个子集作为测试集,其余作为训练集
-
交叉验证重复K次,使每个子集被测试一次;K次评估值取平均作为最终量化评估结果
-
-
留一验证
-
每次只取数据集中一个样本做测试集,其余做训练集
-
每次样本测一次,取所有评估值的平均值作为最终评估结果
-
等同于K折交叉验证,K为数据集样本总数
-
性能指标度量
-
基本概念
-
二类分类:真阳性(TP)、假阳性(FP)、真阴性(TN)、假阴性(FN)
-
多类分类:一次以单个类作为正类,其余为负类
-
准确度 Accuracy:(TP + TN)/(TP + TN + FP + FN):将阳性和阴性综合起来度量识别正确的程度
-
精度 Precision:TP/(TP + FP):预测为阳性样本的准确程度,又称查准率
-
召回率 Recall:TP /(TP + FN):全部阳性样本中被预测为言行的比例,又称敏感度Sensitivity或查全率
-
F-score:通过加权平均,综合precision和recall
-
性能指标
-
混淆矩阵
- 定义:矩阵的列代表预测值,行代表真值;矩阵每个元素的值是根据每个测试样本的预测值和真值得到的计数统计值;对角线元素的值越大,表示模型性能越好
第二章 基于距离的分类器
2.1 MED分类器
基本概念:
基于距离的决策——初级的模式识别技术,是其他识别决策技术的基础
- 定义:把测试样本到每个类之间的距离作为决策模型,将测试样本判定为与其距离最近的类
类的原型
-
概念:用来代表这个类的一个模式或者一组量,便于计算该类和则是样本之间的距离
、 -
均值:该类中所有训练样本的均值作为类的原型(一阶统计;均值是对类中所有训练样本代表误差最小的一种表达方式)
-
最近邻:从一类的训练样本中,选取余测试样本距离最近的一个训练样本,作为该类的原型。类的原型取决于测试样本(缺陷:1.对类的表达误差较大2.对噪声和异常样本比较敏感)
距离度量标准
-
同一性:d(x,z) = 0,iff x = z
-
非负性:d(x,z) >= 0
-
对称性:d(x,z) = d(z,x)
-
三角不等式:d(x,z) <= d(x,y) + d(y,z)
距离度量
-
欧氏距离:Euclidean distance
-
曼哈顿距离
-
加权欧式距离:对每维特征分别设置不同的权重
MED分类器
-
概念:最小欧式距离分类器
-
距离衡量:欧氏距离
-
类的原型:均值
-
决策边界
-
问题:
-
1.没有考虑特征变化的不同及特征之间的相关性
-
2.计算所有类别各自的协方差矩阵,若某cov矩阵对角线元素不相等:每维特征的变化不同;非对角元素不为0:特征之间存在关联性
-
3.解决方法:去除特征变化的不同及特征之间的相关性
2.2 特征白化
-
目的:将原石特征映射到一个新的特征空间,使得在新空间中特征的协方差矩阵为单位矩阵,从而去除特征变化的不同及特征之间的相关性
-
步骤:令W = W2W1
-
1.去除特征之间的相关性——解耦:通过W1实现协方差矩阵对角化
-
2.对特征进行尺度变换——白化:通过W2对上一步变化后的特征再进行尺度变换,实现所有特征具有相同方差。
-
3.转换矩阵W1的特性:转换前后欧氏距离保持一致,W1只起到旋转的作用
-
4.W转换后的欧氏距离——马氏距离
-
2.3 MICD分类器:最小类内距离分类器,基于马氏距离的分类器
-
距离度量:马氏距离
-
类的原型:均值
-
判别公式
-
马氏距离的属性
-
Σ=I:等于欧式距离——>等距图是一个球面
-
Σ 为对角矩阵:等距图是一个超椭圆面
-
Σ 为任意值:等距图是一个有方向的超椭圆面
-
-
决策边界对于二类分类而言,MICD分类器的决策边界位于到两个类距离相等的面上
-
问题:当两个类均值一样时,MICD分类器倾向于选择方差较大的类(决策真值应该倾向方差小的类——分布紧致)
第三章 贝叶斯决策与学习
3.1 贝叶斯决策与MAP分类器
引言
-
基于距离的决策:1.仅考虑每个类别各自观测到训练样本的分布情况,如均值(MED分类器)和协方差(MICD分类器);2.没有考虑类的分布等先验知识。如,类别之间样本数量的比例,类别之间的相互关系
-
引入后验概率:从概率的观点看,给定一个测试模式x,决策其属于哪个类别依赖条件概率P(Ci|x),又称后验概率,表达给定模式x属于类Ci的可能性
贝叶斯规则
MAP分类器最大后验概率分类器
-
定义:将测试样本决策分类给后验概率最大的那个类;对于二类分类,决策边界位于两者后验概率相等的地方;单维空间通常有两条决策边界,高维空间有复杂的非线性边界
-
决策误差
- 概率误差等于未选择的类所对应的后验概率
- 给定所有测试样本(样本个数为N),分类决策产生的平均概率误差为:样本的概率误差的均值
-
目标:最小化概率误差,即分类误差最小化
- 给定所有测试样本,MAP分类器选择后验概率最大的类,等于最小化平均概率误差,及最小化决策误差
3.2 MAP分类器:高斯观测概率
先验和观测概率表达方式
常数表达:P(Ci)= 0.2
参数化解析表达:高斯分布……
非参数化表达:直方图、核密度、蒙特卡洛……
观测概率:单维高斯分布
-
1.观测似然概率取为一维高斯分布
-
2.将高斯分布函数带入MAP分类器的判别公式,两边同时取对数,并化简
-
3.为了得到决策边界,设置判别公式两边相等
- 当σi = σj = σ时,决策边界是线性的,且只有一条
- 方差相同的情况下,MAP决策边界偏向先验可能性较小的类,即分类器决策偏向先验概率高的类
-当σi ≠ σj时,决策边界有两条(即非线性边界)
-MAP分类器会倾向选择方差较小(紧致)的类 -
综上,MAP分类器会倾向于选择先验概率大,分布紧致的类,解决了MED和MICD的问题
观测概率:高维高斯分布
-
1.取观测概率为多维高斯分布
-
2.带入MAP分类器,两边同时取对数,可得判别函数
-
3.决策边界是一个超二次型,但始终是偏移MICD决策边界
3.3 决策风险与贝叶斯分类器
决策风险
-
贝叶斯决策不能排除出现错误判断的情况,由此会带来决策风险
-
不同的错误决策会产生程度完全不一样的风险——信用卡盗刷为例
损失表征当前决策动作相对于其他候选类别的风险程度,记为λ(αi|Cj),简写为λij
- λ可手动设置,也可机器学习得来
-决策风险R(αi|x) = Σλij*P(Cj|x)
贝叶斯分类器
- 在MAP分类器的基础上,加入决策风险因素,得到贝叶斯分类器。给定一个测试样本x,贝叶斯分类器选择决策风险最小的类
贝叶斯决策的期望损失
-
给定单个测试样本,贝叶斯决策的损失就是决策风险R(αi|x)
-
给定所有测试样本(样本总数N),贝叶斯决策的期望损失为所有样本的决策损失之和
贝叶斯分类器的决策目标:最小化期望损失
朴素贝叶斯分类器
- 若特征是多维的,则特征之间的相关性会导致学习困难
- 通过假设特征之间是相互独立(即独立同分布),进而简化计算,此为朴素贝叶斯
拒绝选项
-
MAP分类器选择最大后验概率所属的类,但即使选择最大后验概率,该概率的绝对数值也有可能比较小(例如在两个类的决策边界附近)
-
为避免出现错误决策,引入拒绝选项,设置阈值τ,τ = 1:所有样本的任何决策都会被拒绝;τ < 1/K:所有样本的决策都不会被拒绝,K是类别的个数
3.4 最大似然估计
引言
-
贝叶斯决策中,求取后验概率需要实现知道每个类的先验概率和观测似然概率,需通过机器学习算法得到。
-
监督式学习方法:
-参数化方法:给定概率分布的解析表达,学习这些解析表达中的参数,又称参数估计- 非参数化方法:概率密度函数形式未知,基于概率密度估计技术,估计非参数化的概率密度表达
最大似然估计:
-
待学习的概率密度函数记作P(x|θ),θ是待学习的参数
-
给定N个训练样本都是从P(x|θ)采样得到,符合iid条件。则联合概率密度为
该函数称为似然函数
-
学习θ的目标函数可设计为:使得该似然函数最大
观测概率估计:高斯分布
-
若观测似然概率服从高斯分布,待学习参数包含该高斯分布的均值μ和协方差Σ(注意:观测似然概率是关于单个类的条件概率)
- 高斯分布参数估计:对似然函数取对数,分别求似然函数关于μ和Σ的偏导,设置偏导等于0
- 上述步骤得出:高斯分布均值的最大似然估计等于样本的均值;高斯分布协方差的最大似然估计等于所有训练模式的协方差
3.5 最大似然的估计偏差
定义:若一个参数的估计量的数学期望是该参数的真值,则该估计量称作无偏估计,意味着只要训练样本个数足够多,该估计值就是参数的真实值
高斯均值&协方差
-
高斯分布均值的最大似然估计是无偏估计
-
高斯分布协方差的最大似然估计是有偏估计
-
-
-
高斯协方差估计偏差
- 可通过将训练样本的协方差乘以N/(N-1)来修正协方差的估计值
3.6 贝叶斯估计
定义&参数先验
-
概率分布中待学习的参数θ可作为随机变量
-
贝叶斯估计:给定参数θ分布的先验概率p(θ)以及训练样本,估计参数θ分布的后验概率
-
贝叶斯估计不直接估计参数θ的值,而是取θ服从某种概率分布的期望作为其最终值
-
先验概率反映了关于参数θ的最初猜测及其不确定信息
-
参数的后验概率
-
根据θ的先验概率和基于训练样本的观测似然,计算后验概率
-
省略与θ无关的项:
-
写成高斯分布的形式
-
对比得出
进而解出
-
-
-
给定Ci类的Ni个训练样本,参数θ概率分布的均值等于训练样本均值和该参数先验概率均值的加权和
-
给定Ci类的Ni个训练样本,参数θ概率分布的方差是由Ci类观测似然分布的方差、改参数的先验概率方差、Ci类的样本个数共同决定
-
当该类训练样本个数Ni非常大是,样本均值m就是参数θ的无偏估计
-
参数先验对后延的影响:
-
贝叶斯估计的特点
- 具有不断学习的能力
-
允许最初的、基于少量训练样本的、不太准的估计
-
随着训练样本不断增加,可以串行的不断修正参数的估计值,从而达到该参数的期望真值
-
参数后延概率用于MAP分类
-
给定Ci类的训练样本集Di,以及测试样本x(单维):
-
观测似然概率的参数是随机变量,观测似然通过求边缘概率得到:
-
各个类别单独估计概率分布:
-
对θ求积分
-
整理可得:观测似然概率可以看成关于x的高斯分布
贝叶斯估计 vs 最大似然估计
-
贝叶斯估计:
-
最大似然估计:
3.7 KNN估计
引言
-
若概率分布形式未知,可通过无参数技术实现概率密度估计
-
常用五参数技术:KNN、直方图、核密度估计
概率密度估计基本理论
-
给定N个训练样本和K值,估计以待分类的样本x为中心,在极小的区域
内的概率密度函数P(x)
-
如果区域R足够小,P是p(x)的平滑版本,可以用来估计p(x)
-
由于N很大,区域R中可能不止落入x一个模式,故K个样本落在R的概率密度可用二项分布表达
-
当N很大时,k的分布非常尖锐且集中在均值μk附近
-
二项分布的均值μk:E[p(k)] = μk = NP
-
-
故N非常大时,可得P的近似估计P = k/N;则p(x)的近似估计
KNN估计
-
给定x,找到其对应的区域R使其包含k个训练样本,以此计算p(x)
-
优点:可以自适应的确定x相关区域R的范围;缺点:KNN概率密度估计不是连续函数;不是真正的概率密度表达(概率密度函数积分为∞而不是1);易受噪声影响
3.8 直方图与核密度估计
引言
- KNN估计在推理测试阶段仍需存储所有训练样本:针对任意模式x,需要以其为中心,在训练样本中选k个相邻点估计该模式的概率
- 区域R是由第k个相邻点确定的,易受噪声影响
直方图估计
概念:
-
直接将特征空间划分为m个格子(bins),每个格子是一个区域R,位置固定、大小固定,相邻格子不重叠,k值不需要给定
-
概率密度估计:
,其中bm表示第m个格子,km表示第m个格子中的样本数。可见直方图得到的概率密度也是不连续的
-
优缺点
-
优点:1.固定区域R以减少噪声污染造成的估计误差;2.无需存储训练样本
-
缺点:1.固定区域R的位置:若x落在相邻格子交界区域,意味着当前格子不以x为中心,会导致统计和概率估计不准确;2.固定区域R的大小,缺乏概率估计的自适应能力,导致过于尖锐或平滑
-
双线性插值
针对区域R位置固定,自适应能力弱的问题
带宽选择
-
带宽h过小,概率密度函数过于尖锐
-
带宽h过大,概率密度函数过于平滑
核密度估计
引言
-
KNN估计:以待估计任意一个模式为中心,搜寻第k个近邻点以确定区域,易受噪声影响
-
直方图估计:手动划分区域,缺乏自适应能力
核密度估计概念基于无参数概率密度估计的基本原理:p(x)≈k/NV
-
以任意待估计模式x为中心,固定带宽h,以确定区域R
-
定义窗口函数:以u为中心的单位超立方体
,也可写成核函数
训练样本落入R,则核函数输出为1,否则输出为0
-
概率密度估计
-
核函数可以是高斯分布、均匀分布、三角分布等;基于高斯核函数,则估计的概率密度是连续的;核函数必须是对称的函数
优缺点:
-
优点:1.以待估计模式x为中心、自适应确定区域R的位置(类似KNN);2.使用所有训练样本,克服KNN存在的噪声影响;3.核函数连续则估计的概率密度函数连续
-
缺点:不提前根据训练样本估计每个格子的统计值,需存储所有的训练样本
带宽选择
- 带宽h决定估计概率平滑程度
- 给定训练样本数量是有限的,故要求根据训练样本估计出的概率分布既能符合训练样本,同时也要有一定预测能力,即能估计未看见的模式
- 核密度估计比直方图估计更加平滑