KNN(最近邻分类)、线性分类、损失函数、优化器

目录

    • 1.KNN(最近邻分类)在图像分类中的应用
    • 2.线性分类器
    • 3.损失函数
      • 3.1SVM(支持向量机)—— Hinge Loss
      • 3.2正则化
      • 3.3 Softmax 分类器(多分类逻辑回归)
    • 4.优化器

1.KNN(最近邻分类)在图像分类中的应用

KNN(最近邻分类)、线性分类、损失函数、优化器_第1张图片
如图所示,左侧为待检测图像,右侧为已知图像类别的图像。

将待检测图像与每个已知类别的图像进行L1或L2距离的计算,所得距离越小二者图片相似度越高。将右侧图像按照计算所得的距离由小到大排列,将最近的K(K=1,2,3…)张图像的类别作为待测图像的类别。
两个相同的尺寸的图像可以用两个大小相同的矩阵表述,将两个矩阵对应的元素做差后整体求和就是L1距离,对对应元素做差的平方在整体求和后开根号就是L2距离。L2相较于L1对于坐标系变换旋转的影响不敏感。

KNN(最近邻分类)、线性分类、损失函数、优化器_第2张图片

2.线性分类器

如图所示,如数图像为 2 × 2 2 \times 2 2×2 的矩阵作为输入,输出为3个分类的分数即是 4 × 1 4 \times 1 4×1个列向量。为利用f(x,W)线性分类器,其中x为矩阵输入的展开列向量,W为 3 × 4 3 \times 4 3×4的权重矩阵,b为 3 × 1 3 \times 1 3×1个列向量是截距向量,用于对打分有是帮助。这样计算出分类打分。KNN(最近邻分类)、线性分类、损失函数、优化器_第3张图片
可是问题来了

  1. W和b怎么来?人为设吗还是训练得来?
  2. 合适的W和b只使用在线性分类中,啥意思呢,大概就是他只能把很多构图和色彩类似的同类对象中提取出一个权重,然而对于同类却姿态各异颜色各异的对象识别效果不好。

3.损失函数

3.1SVM(支持向量机)—— Hinge Loss

KNN(最近邻分类)、线性分类、损失函数、优化器_第4张图片

3.2正则化

正则化是为了防止在训练集上过拟合,对包含高次项的权重系数进行惩罚,正则项加载损失项之后,得到一个整体的损失函数。常见的正则化有L1、L2和弹性网络正则化3种,其中弹性网络正则化是将L1L2二者结合起来的。
为了避免过拟合,在后续网络中采取了Dropout、Batch normalization、Stochastic depth、fractional pooling等方法。
KNN(最近邻分类)、线性分类、损失函数、优化器_第5张图片

3.3 Softmax 分类器(多分类逻辑回归)

softmax只是个打分处理方式。先e指数化,再归一化,将打分变为0-1之间的概率。各类别概率之和为1。
KNN(最近邻分类)、线性分类、损失函数、优化器_第6张图片
对应的损失函数叫做交叉熵损失函数或者最大似然估计损失函数 L   i   = − l n P   i   L~i~=-lnP~i~ L i =lnP i  L = − l n ( ∏ P i ) = ∑ L i L=-ln(\prod P_{i})=\sum L_{i} L=ln(Pi)=Li如图猫的损失函数为L=-log(0.13)=2.04,之后把cat、car、frog三类的损失函数相加即可得整体损失函数。

4.优化器

用某种方法生成权重,得到一个损失函数,然后再用这种方法再次生成新的权重,使得损失函数更小,以此类推反复循环。这叫优化器。

例如图示的方法,在现有的权重后,依次加上一个很小的数例如在第一个梯度位置加上0.0001,然后用新的损失函数与原本的损失函数做比较,就可以得到损失函数在这个权重位置的梯度大小和方向。我们需要找到梯度下降的方向。梯度下降算法是使得损失函数下降不是梯度本身下降,
KNN(最近邻分类)、线性分类、损失函数、优化器_第7张图片

你可能感兴趣的:(计算机视觉)