Hinge loss

原文链接:Hinge loss

Hinge loss

在机器学习中,hinge loss常作为分类器训练时的损失函数。hinge loss用于“最大间隔”分类,特别是针对于支持向量机(SVM)。对于一个期望输出这里写图片描述和分类分数y,预测值y的hinge loss被定义为:
这里写图片描述(为了方便将其写作L(y))
注意:这里的y分类器决策函数的“原始”输出,而不是预测的类别标签。例如,在线性SVM中,y=wx+b,(w,b)是分类超平面的参数,x是要分类的点。
可以看到,当t和y有相同的符号的时候(这意味着y的预测是正确的)并且这里写图片描述,hinge loss的结果为L(y)=0,但是当出现错误的分类是,hinge loss的L(y)与y呈线性关系(一个线性误差)。

扩展

当然有时二分类的SVM通常会以一对一或者一对多的形式扩展到多分类的任务,为了实现这个目的,也可以扩展hinge loss函数。现在已经有多种hinge loss的不同的变化形式。比如,Crammer and Singer提出的一种针对线性分类器的损失函数:
这里写图片描述

Weston and Watkins提出了一种相似定义,但是用相加取代了求最大值:
这里写图片描述

在结构化预测中,hinge loss可以进一步扩展到结构化输出空间。具有边缘重新缩放的结构化SVM使用以下变量,其中w表示SVM参数,y表示SVM的预测结果,φ是联合特征函数,Δ表示Hamming loss:

这里写图片描述

优化

hinge loss是一个凸函数,所以,很多在机器学习中涉及到的凸优化方法同样适用于hinge loss。它是不可微的(不连续啊),但是对于线性SVM(这里写图片描述),具有关于模型参数w的子梯度,被定义为:
这里写图片描述
然而,因为hinge loss在t*y=1的时候导数是不确定的,所以一个平滑版的hinge loss函数可能更加适用于优化,它由Rennie and Srebro提出:
Hinge loss_第1张图片

除此之外,还有二次方(平方)平滑:

这里写图片描述

modified Huber loss是在这里写图片描述时的特殊情况。

Hinge loss_第2张图片
上图为hinge loss函数关于z=ty的三种版本,蓝色的线是原始版,绿色线为二次方平滑,红色的线为分段平滑,也就是被Rennie and Srebro 提出的那一版。

Hinge loss_第3张图片
上图中为hinge loss(蓝)和0/1损失(绿)。注意,hinge loss函数惩罚了ty<1(也就是说在ty<1的时候有loss不为0),这个特点和SVM中的分类间隔的概念是相对应的。

你可能感兴趣的:(机器学习)