2.3 分类器及损失

2.3 分类器及损失

学习目标

  • 目标

    • 知道基于图像像素映射的分类评分函数

    • 说明SVM和Softmax线性分类器及其损失函数特点原理

  • 应用

2.3.1 线性分类

2.3 分类器及损失

2.3.1.1 线性分类解释

2.3 分类器及损失

2.3 分类器及损失

学习到的权重

2.3 分类器及损失

2.3.2 损失函数

2.3 分类器及损失

2.3.2.1 多分类SVM损失

2.3 分类器及损失

2.3 分类器及损失

2.3 分类器及损失

2.3 分类器及损失

2.2.2.2 Softmax 分类(Multinomial Logistic Regression)与cross-entropy(交叉熵损失)

1、Softmax

2.3 分类器及损失

2.3 分类器及损失

2、cross-entropy

2.3 分类器及损失

2.3 分类器及损失

2.3 分类器及损失

2.3.3 SVM与Softmax对比

下面这张图就清楚的展示了两个分类以及其损失计算方式的区别

2.3 分类器及损失

实际应用中,两类分类器的表现是相当的,两者差异较小。每个人都回去根据那个表现更好来做选择。如果要对比的话,其中的一些差异如下:

  • SVM下,我们能完成类别的判定,但是实际上我们得到的类别得分,大小顺序表示着所属类别的排序,但是得分的绝对值大小并没有特别明显的物理含义

    • SVM可能拿到对应 猫/狗/船 的得分[12.5, 0.6, -23.0],同一个问题,Softmax分类器拿到[0.9, 0.09, 0.01]。这样在SVM结果下我们只知道猫是正确答案,而在Softmax分类器的结果中,我们可以知道属于每个类别的概率

  • Softmax分类器中,结果的绝对值大小表征属于该类别的概率

    • 1、比如说SVM损失设定\Delta=1Δ=1,SVM只关注分类边界,如果算得的得分是[10, -2, 3],比如实际第一类是正确结果,那么10-3=7已经比1要大很多了,最后损失为0。所以它觉得这已经是一个很标准的答案了,完全满足要求了,不需要再做其他事情了,意味着 [10, -100, -100] 或者 [10, 9, 9],它都是满意的,并没有区别

    • 2、对于Softmax而言,它总是觉得可以让概率分布更接近标准结果一些,交叉熵损失更小一些。 [10, -100, -100] 和 [10, 9, 9]映射到概率域,计算得到的互熵损失是有很大差别的。所以Softmax是一个永远不会满足的分类器,在每个得分计算到的概率基础上

2013年的一篇论文就针对于神经网络损失函数在CIFAR-10等数据集上进行了两种损失对比,参考:Deep Learning using Linear Support Vector Machines,这篇论文就告诉L2-SVM比Softmax效果好一些

现在我们知道了如何基于参数,将数据集中的图像映射成为分类的评分,也知道了两种不同的损失函数,它们都能用来衡量算法分类预测的质量。如何高效地得到能够使损失值最小的参数呢?这个求得最优参数的过程被称为最优化,下节课我们将会介绍。

2.2.4 总结

  • 定义了从图像像素映射到不同类别的分类评分的评分函数

  • 定义了两种分类器以及损失行数

    • SVM 合页损失

    • Softmax 交叉熵损失