3.1 损失函数和优化:损失函数

用一个函数把W当做输入,然后看一下得分,定量地估计W的好坏,这个函数被称为“损失函数”
损失函数用于度量W的好坏。
有了损失函数的概念后,就可以定量的衡量W到底是好还是坏,要找到一种有效的方法来从W的可行域里,找到W取何值时情况最不坏,,这个过程将会是一个优化过程。

损失函数L_i定义:通过函数f给出预测的分数和真实的目标(或者说是标签y),可以定量的描述训练样本预测的好不好,最终的损失函数是在整个数据集的N个样本的损失函数的总和的平均。
image.png

损失函数计算:除了真实的分类Y_i以外,对所有的分类Y都做加和,也就是说我们在所有错误的分类上做和,比较正确分类的分数和错误分类的分数,如果正确分类的分数比错误分类的分数高出某个安全的边距,我们把这个边距设为1,;如果真实的分数很高,或者说真实分类的分数比任何错误分类的分数都要高很多,那么损失为0。接下来把图片对每个错误分类的损失加起来就可以得到数据集中这个样本的最终损失,然后对整个训练集取平均。
image.png

如上图中所示,随着真实分类分数的提升,损失会线性下降,一直到分数超过了一个阈值,损失函数就会是0,因为我们已经为这个样本成功地分对了类。

S_yi

  • S是通过分类器预测出来的类的分数
  • yi是这个样本的正确的分类标签
  • S_yi是训练集第i个样本的真实分类的分数

这个式子也就是说要让真实分类的分数比其他分类高很多,高出一个安全边距,如果没有高出这个安全边距,那这样就会产生损失。

具体计算如下:
image.png

对猫计算损失:
image.png

对汽车计算损失:
image.png

对青蛙计算损失:
image.png

取损失函数平均值:
image.png

image.png

对于损失函数最大最小值这个问题,可以借助损失函数图像,即最小值为0,最大值为无穷大
image.png

我们要关心的是测试数据的性能,如下图所示,当加入新的数据(绿色方框),训练出的曲线表现将是错误的,事实上我们希望分类器是预测的,这里需要的是绿色的这条线,而不是那条复杂的线,要完全适合所有的训练数据。
image.png

因而我们通常会在损失函数中加一个正则项,以此选择更简单的w。这里其实体现了奥卡姆剃刀的理念,也就是科学发现最基本的思想就是要让一个理论的应用更广泛。
image.png

因而比标准损失函数包含两项:丢失项和正则项,这里有一些超参数λ用来平衡这两项。正则项可能是L1惩罚项,也可能是L2惩罚项,还有可能是L1 L2结合的惩罚项。
image.png

你可能感兴趣的:(3.1 损失函数和优化:损失函数)