计算机视觉与深度学习 学习笔记【二】分类器设计

文章目录

  • 分类器设计
    • 1. 线性分类器
      • 1.1 图像类型:略
      • 1.2 图像表示:大多数分类算法都要求输入**向量**
        • 1.2.1 最简单的方法
      • 1.3 分类模型
        • 1.3.1 线性分类器定义
        • 1.3.3 线性分类器的分界面
      • 1.4 损失函数
        • 1.4.1 损失函数定义
        • 1.4.3 正则项与超参数
      • 1.5 优化算法
        • 1.5.1 什么是参数优化
        • 1.5.2 各类优化算法
      • 1.6 数据集划分
      • 1.7 数据预处理

分类器设计

1. 线性分类器

知识点分布:
计算机视觉与深度学习 学习笔记【二】分类器设计_第1张图片

1.1 图像类型:略

1.2 图像表示:大多数分类算法都要求输入向量

1.2.1 最简单的方法

​ 直接将图像矩阵转化成列向量
计算机视觉与深度学习 学习笔记【二】分类器设计_第2张图片

1.3 分类模型

1.3.1 线性分类器定义

​ 线性分类器是一种线性映射,将输入的图象特征映射为类别分数。
计算机视觉与深度学习 学习笔记【二】分类器设计_第3张图片
计算机视觉与深度学习 学习笔记【二】分类器设计_第4张图片
通过w和b进行线性变换,给x一个分数

​ 其中,w:d行1列
计算机视觉与深度学习 学习笔记【二】分类器设计_第5张图片
第i个类的分数最高,决策结果就是第i个类

例:
计算机视觉与深度学习 学习笔记【二】分类器设计_第6张图片
任务即为为图片分配类别标签,以线性分类器实现。
计算机视觉与深度学习 学习笔记【二】分类器设计_第7张图片
决策过程,单纯以权值乘图像表示,加上偏移量最终的得分高低来评判。

矩阵表示:

计算机视觉与深度学习 学习笔记【二】分类器设计_第8张图片
其中,w行数由类数决定,列数由图像表示的长度决定。

具体如下:
计算机视觉与深度学习 学习笔记【二】分类器设计_第9张图片
1.3.2 线性分类器的权值向量:w

计算机视觉与深度学习 学习笔记【二】分类器设计_第10张图片
w其实记录了类别的信息,具体来说,就是各个类别的统计信息。

​ 当x和w很相似时,他们的点乘值会很大(a*a相对同定义域内的两数相乘而言最大)

​ 权值w可以看作是一种模板,输入图像与评估模板的相似程度越高,分类器输出的分数就越高

1.3.3 线性分类器的分界面

​ 分类问题的本质就是找一些分界面把各个图像分开。

计算机视觉与深度学习 学习笔记【二】分类器设计_第11张图片
其中,分数等于0的线就是决策面,所以分类任务学习的就是一个个的分界面,对于未知的图片,依照得分f,将其归到该得分属于的类中。

​ w控制线的方向,b控制着线的偏移(其实就是一个截距),箭头方向代表分类器的正方向,沿着箭头方向距离决策面越远分数就越高。
计算机视觉与深度学习 学习笔记【二】分类器设计_第12张图片

1.4 损失函数

1.4.1 损失函数定义

问题:如何定量表示分类器的好坏

答:用损失函数,它搭建模型性能与模型参数之间的桥梁,指导模型参数优化。
计算机视觉与深度学习 学习笔记【二】分类器设计_第13张图片
计算机视觉与深度学习 学习笔记【二】分类器设计_第14张图片
1.4.2 多类支撑向量机损失
计算机视觉与深度学习 学习笔记【二】分类器设计_第15张图片
其中,Syi代表第i个样本真实类别的预测分数,+1加一个边界,是为了防止噪声产生误差。

​ 若真实类别的的预测分数大于其他类别的预测分数,表明预测正确,损失值给定0。相反的,若对其他类别的预测分数大于真实的预测分数,则相差越大,损失值越大。

​ 相当于样本i对每一个类(不包含真实类别)别都求了损失值,再求和,得到总的损失值,最后求平均。

在这里插入图片描述
图示如下(折页损失):
计算机视觉与深度学习 学习笔记【二】分类器设计_第16张图片
例:
计算机视觉与深度学习 学习笔记【二】分类器设计_第17张图片
其中,真实类与其他类得分不超过一分的情况下,一定会有损失。
计算机视觉与深度学习 学习笔记【二】分类器设计_第18张图片

1.4.3 正则项与超参数

引入:使得L等于0的w不止一个,那么,应该在这些w中,应该选择哪一个,能够使损失函数L只有一个结果?

正则项损失:
计算机视觉与深度学习 学习笔记【二】分类器设计_第19张图片
计算机视觉与深度学习 学习笔记【二】分类器设计_第20张图片
超参数:在开始学习过程之前设置值的参数,不是学习得到的。

超参数一般都会对模型性能有着重要的影响。

以λ为例:
计算机视觉与深度学习 学习笔记【二】分类器设计_第21张图片
以L2正则项为例:
计算机视觉与深度学习 学习笔记【二】分类器设计_第22张图片
使得最后的结果(损失值)只会有一个结果,在数据损失相同的情况下取正则损失小的。

L2正则损失对大数值权值进行惩罚,喜欢分散权值,鼓励分类器将所有维度的特征都用起来,而不是强烈地依赖其中少数的几维特征。

得出结论,1.正则项让模型有了偏好。

​ 2.正则项让解唯一。

​ (更重要的功能是防止过拟合,本章还没讲到,只提了一下)

其余正则项:
计算机视觉与深度学习 学习笔记【二】分类器设计_第23张图片

1.5 优化算法

1.5.1 什么是参数优化

计算机视觉与深度学习 学习笔记【二】分类器设计_第24张图片

1.5.2 各类优化算法

1.直接方法

计算机视觉与深度学习 学习笔记【二】分类器设计_第25张图片
但L形式通常比较复杂,很难直接求出w。

​ 2.梯度下降算法(一种简单又高效的迭代优化算法):

​ 往哪走:负梯度方向

​ 走多远:由步长决定(学习率)

算法伪代码:

第一步:
计算机视觉与深度学习 学习笔记【二】分类器设计_第26张图片
之后每一步:
计算机视觉与深度学习 学习笔记【二】分类器设计_第27张图片
梯度计算:
计算机视觉与深度学习 学习笔记【二】分类器设计_第28张图片
(计算量大,不精确)

那数值梯度有什么用?

答:求梯度时一般使用解析梯度,数值梯度主要用于解析梯度的正确性校验。
计算机视觉与深度学习 学习笔记【二】分类器设计_第29张图片
(精确,速度快,导数函数推导易错)

例:
计算机视觉与深度学习 学习笔记【二】分类器设计_第30张图片
效率分析:

当n很大时,权值的计算量很大。

解决方法:

​ 2. 随机梯度下降算法,每次随机选择一个样本Xi,计算梯度并更新梯度。

​ 虽然单个样本的训练可能会带来很多噪声,不是每次迭代都朝着最优化方向,但是大部分样本会朝着最优化方向迭代,所以整体依旧是朝着最优化方向。

3.小批量梯度下降法

​ 每次随机选择m(批量的大小)个样本,计算损失并更新梯度
计算机视觉与深度学习 学习笔记【二】分类器设计_第31张图片
其中,通常使用2的幂数作为批量大小,例如32、64或128个样本

4.总结
计算机视觉与深度学习 学习笔记【二】分类器设计_第32张图片

1.6 数据集划分

​ 1. 理想划分
计算机视觉与深度学习 学习笔记【二】分类器设计_第33张图片
问题:

​ 如果模型含有超参数(比如正则化强度),如何找到泛化能力最强的超参数?

答:

​ 使用验证集

2.真实划分
计算机视觉与深度学习 学习笔记【二】分类器设计_第34张图片
计算机视觉与深度学习 学习笔记【二】分类器设计_第35张图片
问题:如果数据很少,那么验证集包含的样本就很少,从而无法在统计上代表数据。

答:K折交叉验证
计算机视觉与深度学习 学习笔记【二】分类器设计_第36张图片
保证不会因为验证集里面的数据出现偏颇,导致验证集给出的精度不准确。
计算机视觉与深度学习 学习笔记【二】分类器设计_第37张图片
该验证的随机性会更好一些。

1.7 数据预处理

问题:数据能否直接使用,有哪些处理方式?
计算机视觉与深度学习 学习笔记【二】分类器设计_第38张图片
归一化:将各个轴归一到相同的量纲(去均值和归一化用的更多)
计算机视觉与深度学习 学习笔记【二】分类器设计_第39张图片

你可能感兴趣的:(CV&DL,cv,deep,learning,深度学习,计算机视觉)