CS231n——机器学习算法——线性分类(中:SVM及其损失函数)

损失函数 Loss function

线性分类(上)笔记中,定义了从图像像素值到所属类别的评分函数(score function),该函数的参数是权重矩阵W。

在函数中,数据 ( x i , y i ) (x_i,y_i) (xi,yi)是给定的,不能修改。但是我们可以调整权重矩阵这个参数,使得评分函数的结果与训练数据集中图像的真实类别一致,即评分函数在正确的分类的位置应当得到最高的评分(score)。

回到上篇笔记猫图像分类例子中,它有针对“猫”,“狗”,“船”三个类别的分数。我们看到例子中权重值非常差,因为猫分类的得分非常低(-96.8),而狗(437.9)和船(61.95)比较高。我们将使用损失函数(Loss Function)(有时也叫代价函数Cost Function或目标函数Objective)来衡量我们对结果的不满意程度。直观地讲,当评分函数输出结果与真实结果之间差异越大,损失函数输出越大,反之越小。

1. 多类支持向量机损失 Multiclass Support Vector Machine Loss

损失函数的具体形式多种多样。首先,介绍常用的多类支持向量机(SVM)损失函数。

  • SVM的损失函数想要SVM在正确分类上的得分始终比不正确分类上的得分高出一个边界值 Δ \Delta Δ

我们可以把损失函数想象成一个人,这位SVM先生(或者女士)对于结果有自己的品位,如果某个结果能使得损失值更低,那么SVM就更加喜欢它。

让我们更精确一些。回忆一下,第i个数据中包含图像 x i x_i xi的像素和代表正确类别的标签 y i y_i yi。评分函数输入像素数据,然后通过公式 f ( x i , W ) f(x_i,W) f(xi,W)来计算不同分类类别的分值。
这里我们将分值简写为s。比如,针对第j个类别的得分就是第j个元素: s j = f ( x i , W ) j s_j=f(x_i,W)_j sj=f(xi,W)j。针对第i个数据的多类SVM的损失函数定义如下:
在这里插入图片描述

举例:用一个例子演示公式是如何计算的。假设有3个分类,并且得到了分值s=[13,-7,11]。其中第一个类别是正确类别,即<

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值