机器学习笔记

第一章 基本概念

1.1 什么是模式识别

模式识别实例

  • 字符识别,动作识别,语音识别……

分类与回归

  • 分类:输出待识别模式所属的类别(离散)
  • 回归:输出待识别模式所属的信号表达(连续)
    回归是分类的基础

模式识别

  • 模式识别:根据已有知识的表达,针对待识别的模式,判别决策其所属类别或者预测其对应的回归值。

1.2 模式识别的数学表达

数学解释

  • 模式识别可以看作是一种函数映射
  • 函数形式:可解析表达,不可解析表达
  • 函数输出:确定值,概率值
  • 解析表达:用数学表达式接解出来

输入空间和输出空间

  • 关于已有知识的一种表达方式,
  • 输入空间:原始输入数据x所在的空间
  • 输出空间:输出类别/回归值所在的空间

模型

  • 模型:关于已有知识的一种表达方式,即函数f(x)
  • 组成:回归器+特征提取
    • 特征提取:去除冗余信息
    • 回归器:将特征映射到回归值
    • 回归器+判别函数=分类器
  • 判别函数:sign函数,max函数……

判别公式和决策边界

  • 待识别的类和决策边界的位置关系判断所属的类别

特征和特征空间

  • 特征:区分不同类别模式的、可测量的量
  • 特征的特性:
    • 辨别能力:基于统计值,可能出现特例
    • 鲁棒性:针对不同的观测条件仍有效
  • 特征向量:多特征构成的向量
    • 长度,方向
  • 特征空间:每个点代表一个模式,原点到模式的向量为特征向量

1.3 特征向量的相关性

度量标准1:点积

  • 标量表达,具备对称性,线性变换
  • 点积表征两个特征向量在方向上的相似程度,点积为0表示向量正交(垂直)

度量标准2:投影

  • 向量表达,不具备对称性
  • 残差向量:向量x分解到向量y上得到的投影向量与原向量x的误差

度量标准3:欧氏距离

  • 综合考虑方向和模长

1.4 机器学习基本概念

训练样本

  • 训练模型应该覆盖所有的可能的分布空间(数据样本尽可能大、数据多样化,数据样本质量较高)
  • 训练样本满足 independent and identical distribution (idd, 独立同分布)

模型的参数和结构

  • 模型结构决定模型参数
  • 线性模型:决策边界是线性的,如直线、面、超平面
  • 非线性模型:决策边界是非线性的,如曲线、曲面、超曲面

训练

  • 训练样本个数N&模型参数量M
    • N=M:参数有唯一解
    • N>>M:无准确解
    • N<<M:无数个解/无解
  • 目标函数(代价函数/损失函数):将随机事件或其有关随机变量的取值映射为非负实数将随机事件或其有关随机变量的取值映射为非负实数、、
  • 优化算法:最小化或最大化目标函数的技术
  • 机器学习流程

真值和标注

  • 标注是给没给训练样本标注真值的过程

学习方式


1.5 模型的泛化能力

训练集&测试集

  • 训练集:训练模型所用的数据集(训练样本的集合)
  • 测试集:测试模型所用的数据集(测试样本的集合)
  • 同分布且互斥
  • 训练集可能存在的问题:样本稀疏(数量有限),采样不均匀,样本带有噪声

训练误差&测试误差

  • 训练误差:在训练集上的误差
  • 测试误差(泛化误差):在测试集上的误差

泛化能力:训练得到的模型不仅要对训练样本具有决策能力,也要对新的模式具有决策能力

  • 泛化能力低的表现:过拟合(训练阶段好,测试阶段差,过于拟合训练集
  • 超参数:多项式阶数M,训练样本数N(不可训练的量,人为设定
  • 提高泛化能力:不要过度训练
    • 模型选择:固定N,选择合适的M,M到达一个临界点后误差反而会增大
    • 正则化:固定N和M,在目标函数中加入关于参数的正则系数λ(λ也是超参数)

1.6 评估方法与性能指标

评估方法1:留出法

  • 直接将数据集划分为两个互斥的集合
  • 缺点:训练集过大,更接近整个数据集,但是由于测试集较小,导致评估结果缺乏稳定性;测试集大了,偏离整个数据集,与根据数据集训练出的模型差距较大,缺乏保真性。

评估方法2:K折交叉验证

  • 将数据集划分为k个大小相似的互斥子集,每个子集轮流做测试集,其余做训练集,最终返回这k个训练结果的均值。
  • 优点:更稳定,更具准确定;缺点:时间复杂的较大

评估方法3:留一验证

  • K=数据集样本总数的K折交叉验证

性能指标1:

预测为正例 预测为负例
正例 真正例(True Positive,TP)
真实类别为正例,预测类别为正例
假负例(False Negative,FN)
真实类别为正例,预测类别为负例
负例 假正例(False Positive,FP)
真实类别为负例,预测类别为正例
真负例(True Negative,TN)
真实类别为负例,预测类别为负例

性能指标2:准确度(A),精度(P),召回率(R)

性能指标3:F-Score

一般形式:

β=1:

性能指标4:曲线度量

  • PR曲线(Precision-Recall Curve)
    • 越往右上角凸模型性能越好
  • ROC曲线(Receiver-operating-characteristic curve)
    • 越往左上角凸模型性能越好
  • 曲线下方面积AUC
    • AUC=1:完美分类器
    • AUC=0.5:没有预测价值(和随机猜测相同)
    • 0.5<AUC<1:优于随机猜测
    • AUC<0.5:比随即猜测还差


第二章 基于距离的分类器

基于距离分类的基本概念

  • 基于距离决策:把测试样本到每个类的距离作为决策模型,将测试样本判定为雨琦距离最近的类
  • 类的原型:用来代表这个类的一个模式或者一组量
    • 均值
    • 最近邻(对噪声敏感,误差大)
  • 距离度量
    • 欧氏距离:
    • 曼哈顿距离:
    • 马氏距离:

2.1 MED分类器

概念

  • MED分类器:最小欧式距离分类器
  • 距离衡量:欧式距离
  • 类的原型:均值
  • 对于两个类而言,MED分类器的决策边界方程为:
    (x−μ1)T(x−μ1)-(x−μ2)T(x−μ2)=0

存在的问题

  • MED分类器采用欧氏距离作为距离度量,没有考虑特征变化的不同及特征之间的相关性
  • 特征相关性:一个或多个属性依赖于另一个属性或是另一个属性
  • 解决办法:去除特征变化的不同及特征之间的相关性——特征白化

2.2 特征白化

  • 目的:去除特征变化的不同及特征之间的相关性
  • 白化结果:特征之间相关性较低;所有特征具有相同的方差
  • 步骤:
    • 计算协方差矩阵:
    • 解耦:协方差矩阵对角化,去除特征之间的相关性
    • 白化:实现所有特征具有相同的方差
  • 特征解耦的过程中的转换矩阵W只起到旋转的作用,相当于对多维矢量所在的坐标系进行一个旋转,不改变矩阵的欧氏距离

2.3 MICD分类器

概念

  • MICD分类器:最小类内距离分类器
  • 距离度量:马氏距离
  • 类的原型:均值
  • 对于二类分类而言,MICD分类器的决策边界位于到两个类的距离相等的面上,即:
    (x−μ1)TΣ−1x(x−μ1)-(x−μ2)TΣ−1x(x−μ2)=0

存在的问题

  • 虽然消除了特征间的相关性并使特征具有相同方差,从而使其不受量纲和分布的影响,提高分类准确度,但在距离相等时,倾向于归于方差较大的类


第三章 贝叶斯决策与学习

基于距离的决策存在的问题:

  • 仅考虑每个类别各自观测到的训练样本的分布情况,例如,均值(MED分类器)和协方差(MICD分类器)
  • 没有考虑类的分布等先验知识,例如,类别之间样本数量的比例,类别之间的相互关系

3.1 贝叶斯决策与MAP分类器

概率的观点

  • 概率:通常用来表达事务处于每种取值状态的可能性
  • 利用概率设计分类器的原理:找出数据蕴含的概率分布规律
  • 先验概率:缺乏某个事实的情况下描述一个变量,根据以往经验和分析得到的概率
  • 后验概率:考虑了一个事实之后的条件概率,依据得到"结果"信息所计算出的概率

贝叶斯规则

  • 公式:P(B|A)=P(A|B)P(B)/P(A)
    P(B):先验概率
    P(A|B):观测似然概率/条件概率
    P(A):边缘概率

MAP分类器

  • MAP分类器:基于后验概率的分类器,选择后验概率最大的类作为判别结果
  • 对于二类分类而言,MAP分类器的决策边界方程为:
    p(x|C1)p(C1)=p(x|C2)p(C2)
  • 对单维空间,通常由两条决策边界;对高维空间,通常是复杂的非线性边界
  • 概率误差等于未选择的类所对应的后验概率
  • 决策误差最小化

3.2 MAP分类器:高斯观测概率

  • 高斯分布:
  • 算法步骤:
    • 分别求出训练集中正样本和负样本的协方差矩阵C和平均值μ
    • 设置参数α , 其中
    • 输出概率 ,其中

3.3 决策风险与贝叶斯分类器

  • 在MAP分类器基础上,加入决策风险因素,得到贝叶斯分类器,给定一个测试样本,贝叶斯分类器选择决策风险最小的类
  • 期望损失:
    我们选择期望风险最小的决策作为最终决策
  • 朴素贝叶斯分类器的“朴素”是指假设一个事件的各个属性之间是相互独立的。
  • 拒绝选项:为了避免出现错物决策,分类器可以选择拒绝:引入阈值,在一定区域内的任何决策都会被拒绝

3.4 最大似然估计 & 3.5最大似然的估计偏差

  • 对于这个函数:P(x|θ),输入有两个:x表示某一个具体的数据;θ表示模型的参数。
    如果θ是已知确定的,x是变量,这个函数叫做概率函数(probability function),它描述对于不同的样本点x,其出现概率是多少。
    如果x是已知确定的,θ是变量,这个函数叫做似然函数(likelihood function), 它描述对于不同的模型参数,出现x这个样本点的概率是多少。
  • ,称此函数为似然函数
  • 求解极大似然函数:
  • 高斯分布的最大似然分布:无偏
  • 特点:比其他估计方法更加简单;无偏或者渐近无偏,当样本数目增加时,收敛性质会更好;如果假设的类条件概率模型正确,则通常能获得较好的结果。但如果假设模型出现偏差,将导致非常差的估计结果。

3.6贝叶斯估计(1) & 3.7贝叶斯估计(2)

  • 贝叶斯估计的基本思想:待估计参数θ也是随机的,和一般随机变量没有本质区别,因此只能根据观测样本估计参数θ的分布。
  • 贝叶斯估计的计算公式:
  • 推导过程同上
  • 最大后验估计和贝叶斯估计的区别
    • 极大似然估计和极大后验估计都是只返回了的预估值。
    • 极大后验估计在计算后验概率的时候,把分母p(X)给忽略了,在进行贝叶斯估计的时候则不能忽略。
    • 贝叶斯估计要计算整个后验概率的概率分布。

3.8无参数概率密度估计 & 3.9直方图与核密度估计

概率密度估计

  • 给定N个训练样本,在特征空间内估计每个任意取值x的概率密度,即估计以x为中心、在极小区域R=(x,x+δx)内的概率密度函数p(x)
  • 如果是二项分布,n表示次数,则E(X)=np,方差为np(1-p)
  • 原理:如果某一个数在观察中出现了,我们可以认为这个数的概率密度很大,和这个数比较近的数的概率密度也会比较大,而那些离这个数远的数的概率密度会比较小。

无参数概率密度估计方法1:K近邻法(KNN)

  • KNN(K Near Neighbor):k个最近的邻居,即每个样本都可以用它最接近的k个邻居来代表。
  • 基本做法:固定局部区域K,体积V进行变化。
    • 第k个样本与x的距离记作d(x),则体积V=2d(x),概率密度估计表达式为:p(x)=k/2Nd(x)
  • K 的最佳选择取决于数据:一般来说,k值越大降低噪声对分类的影响,但使类之间的界限不明显。值小,意味着模型复杂。也就是说只有离聚类中心很近,才可以归类。这样一来,估计误差会变大,如果周围出现噪声,预测会出错。
    一般k值选取比较小的数值,并采用交叉验证法选择最优的k值。

无参数概率密度估计方法2:直方图技术

  • 当x是d维向量的时候,对每个维度的量都分成k个等间隔的区间,于是整个空间呗分成k^d个小空间,每个小空间的体积定义为,其中valuei是第i维分量的每个区间大小。
    假设样本总量为N,每个小空间内样本总量为qi,那么每个小空间的概率密度为qi/NV
  • 优点:固定区域R,减少由于噪声污染造成的估计误差;不需要存储训练样本
  • 缺点:若模式x落在相邻格子的交界区域,意味着当前格子不是以模式x为种心,导致统计和概率估计不准确;缺乏概率估计的自适应能能力,导致过于尖锐或平滑

无参数概率密度估计方法3:核密度估计

  • 核密度估计:是一种用于估计概率密度函数的非参数方法,采用平滑的峰值函数(“核”)来拟合观察到的数据点,从而对真实的概率分布曲线进行模拟。

  • 为独立同分布F的n个样本点,设其概率密度函数为f,核密度估计为以下:

  • 带宽h决定了估计概率的平滑程度

  • 常见核函数

    • 均匀核函数 k(x)=1/2,-1≤x≤1 加入带宽h后: kh(x)=1/(2h),-h≤x≤h
    • 三角核函数 k(x)=1-|x|,-1≤x≤1 加入带宽h后: kh(x)=(h-|x|)/h2,-h≤x≤h
    • 伽马核函数 kxi(x)=(xα-1e-xα/xi)/[(xi/α)α.Γ(α)]
    • 高斯核函数K(x,xc)=exp[-||x-xc||2/(2*σ)2],其中xc为核函数中心,σ为函数的宽度参数


第四章 线性判据与回归

4.1 线性判据基本概念

生成模型

  • 生成模型:给定训练样本{x_n},直接在输入空间内学习其概率密度函数p(x)
  • 优势:可以根据p(x)采样新的样本数据,可以检测出较低概率的数据,实现离群检测
  • 劣势:如果是高维的x,需要大量的训练样本才能准确的估计p(x),否则会出现维度灾难问题
  • 维度灾难:通常是指在涉及到向量的计算的问题中,随着维数的增加,计算量呈指数倍增长的一种现象

判别模型

  • 判别模型:给定训练样本{x_n},直接在输入空间内估计后验概率p(C_i|x)
  • 优势:直接快速、省去了耗时的高维观测似然概率估计
  • 判别模型和生成模型的区别: 区别链接

线性判据

  • 定义:如果判别模型f(x)是线性函数,则f(x)为线性判据

4.2 线性判据学习概述

学习和识别过程

  • 学习方法:监督式学习过程,基于训练样本及其标签,设计目标函数,让学习算法自己学习w和w0
    • 参数解的不唯一性:训练样本个数通常远大于参数个数导致
  • 识别过程:将待识别的样本带入训练好的判据方程

参数空间和解域

  • 参数空间:由各个参数维度构成的空间
  • 解域:在参数空间内,参数的所有可能解所处的范围
    • 给定N个训练样本,参数向量w的解域位于N个超平面正版部分的交集

目标函数

  • 目标函数:反映了如何实现有效决策的核心思想
  • 求解:最小化/最大化目标函数
    • 解析求解:求关于训练参数的偏导,并设置偏导为0
    • 迭代求解:猜测参数初始值,根据优化方法计算更新参数
  • 加入约束条件,提高泛化能力

4.3 并行感知机算法

并行感知机算法

  • 监督式学习:根据标记过的训练样本{(x_n,t_n)},学习参数模型w,w_0
  • 预处理:
    • 步骤:将两个参数合为一个参数,再将C2训练样本全部取反
    • 目的:通过在特征空间上增加一个维度,使得决策边界可以通过原点,翻转C2类样本使得一个平面的所有样本位于该平面的同侧
  • 设置目标函数:
    • 思想:被错误分类的样本数量最少(带入后为负值
    • 目标函数:针对所有被错误分类的训练样本,其输出值取反求和,最小化该目标函数
  • 求解目标函数:
    • 梯度下降法:使用当前梯度值迭代更新参数
    • 更新方向:梯度的方向是函数在给定点上升最快的方向,那么梯度的反方向就是函数在给定点下降最快的方向,这正是所需要的
    • 更新大小:每个维度的梯度幅值(正比),加入步长使得更新速度加快并减小震荡(震荡:越过最优值后又返回

4.4 串行感知机算法

  • 思想、目的、求解过程和并行感知机算法差不多
  • 收敛性:若训练样本是线性可分的,感知机算法在理论上是收敛于一个解的。但是收敛性只保证可停止,不保证是最优解。
    • 步长决定收敛的速度、以及是否收敛到局部或全局最优点
    • 目标函数是凸函数,则局部最优点就是全局最优点
  • 提高泛化能力:加入约束条件

4.5 Fisher线性判据

  • Fisher线性判别的思想就是,选择投影方向,使投影后两类相隔尽可能远,而同时每一类内部的样本又尽可能聚集

4.6 支持向量机基本概念

  • 定义:按监督学习方式对数据进行二元分类的广义线性分类器,其决策边界是对学习样本求解的最大边距超平面
  • 基本模型:定义在特征空间上的间隔最大的线性分类器
  • SVM的目标:第一个是使间隔最大化,第二个是使样本正确分类
  • 所有在上间隔边界上方的样本属于正类,在下间隔边界下方的样本属于负类。两个间隔边界的距离被定义为边距,位于间隔边界上的正类和负类样本为支持向量。

4.7 拉格朗日乘数法

  • 寻找多元函数在其变量受到一个或多个条件的约束时的极值的方法。
  • 拉格朗日乘数法从数学意义入手,通过引入拉格朗日乘子建立极值条件,对n个变量分别求偏导对应了n个方程,然后加上k个约束条件(对应k个拉格朗日乘子)一起构成包含了(n+k)变量的(n+k)个方程的方程组问题,这样就能根据求方程组的方法对其进行求解。结果可能是最大值、最小值或鞍点。

4.8 拉格朗日对偶问题

  • 主问题:假设是连续可微函数,考虑约束最优化问题:

称为约束最优化问题的原始问题。现在如果不考虑约束条件,原始问题就是:

  • 拉格朗日对偶函数:拉格朗日函数关于x取得的最小值,即对α,β,有:
  • 每确定一组(α,β),就要找到一个x使得L最小,不同的(α,β)对应不同的g函数值
  • 对偶函数一定是凹函数且都小于等于原问题最优值。

原文地址:https://www.cnblogs.com/annakristen/p/12823798.html