Hinge Loss、交叉熵损失、平方损失、指数损失、对数损失、0-1损失、绝对值损失

2023-02-20,,

  损失函数(Loss function)是用来估量你模型的预测值 f(x) 与真实值 Y 的不一致程度,它是一个非负实值函数,通常用 L(Y,f(x)) 来表示。损失函数越小,模型的鲁棒性就越好。  

  损失函数分为经验风险损失函数结构风险损失函数。经验风险损失函数指预测结果和实际结果的差别,结构风险损失函数是指经验风险损失函数加上正则项。通常表示为如下:(整个式子表示的意思是找到使目标函数最小时的θ值。)

常见的损失误差有6种:

铰链损失(Hinge Loss):主要用于支持向量机(SVM) 中;
交叉熵损失 (Cross Entropy Loss,Softmax Loss ):用于Logistic 回归与Softmax 分类中;
平方损失(Square Loss):主要是最小二乘法(OLS)中;
指数损失(Exponential Loss):主要用于Adaboost 集成学习算法中;
对数损失
其他损失(如0-1损失,绝对值损失)

1、Hinge损失函数(又称为max-margin loss最大边界损失

  Hinge loss 的叫法来源于其损失函数的图形,为一个折线,通用的函数表达式为:

  表示如果被正确分类,损失是0,否则损失就是 1−mi(w) .

  Hinge loss用于最大间隔(maximum-margin)分类,其中最有代表性的就是支持向量机SVM。在支持向量机中,最初的SVM优化的函数如下:

  将约束项进行变形,则为:

  则损失函数可以进一步写为:

  因此, SVM 的损失函数可以看作是 L2-norm 和 Hinge loss 之和。

2、交叉熵损失

  有些人可能觉得逻辑回归的损失函数就是平方损失,其实并不是。平方损失函数可以通过线性回归在假设样本是高斯分布的条件下推导得到,而逻辑回归得到的并不是平方损失。在逻辑回归的推导中,它假设样本服从伯努利分布(0-1分布),然后求得满足该分布的似然函数,接着取对数求极值等等。而逻辑回归并没有求似然函数的极值,而是把极大化当做是一种思想,进而推导出它的经验风险函数为:最小化负的似然函数

  从损失函数的视角来看,它就成了Softmax 损失函数了。

  log损失函数的标准形式:

  刚刚说到,取对数是为了方便计算极大似然估计,因为在MLE中,直接求导比较困难,所以通常都是先取对数再求导找极值点。损失函数L(Y,P(Y|X)) 表达的是样本X 在分类Y的情况下,使概率P(Y|X) 达到最大值(换言之,就是利用已知的样本分布,找到最有可能(即最大概率)导致这种分布的参数值;或者说什么样的参数才能使我们观测到目前这组数据的概率最大)。因为log函数是单调递增的,所以logP(Y|X) 也会达到最大值,因此在前面加上负号之后,最大化P(Y|X)就等价于最小化L 了。
  逻辑回归的P(Y=y|x)表达式如下(为了将类别标签y统一为1 和0 ):

   其中,

3、平方损失函数

  最小二乘法是线性回归的一种方法,它将回归的问题转化为了凸优化的问题。在线性回归中,它假设样本和噪声都服从高斯分布(中心极限定理),最后通过极大似然估计(MLE)可以推导出最小二乘式子。最小二乘法的基本原则是:最优拟合曲线应该使得所有点到回归直线的距离和最小。通常用欧式距离进行距离的度量。

  平方损失的损失函数为:(当样本个数为N时)

   Y−f(X)​表示残差,整个式子表示的是残差平方和 ,我们的目标就是最小化这个目标函数值,即最小化残差的平方和。在实际应用中,我们使用均方差(MSE)作为一项衡量指标,公式如下:

4、指数损失函数

  AdaBoost就是一指数损失函数为损失函数的。

  指数损失函数的标准形式:

  exp-loss,主要应用于 Boosting 算法中,在Adaboost 算法中,经过 m 次迭代后,可以得到 fm(x) :

  Adaboost 每次迭代时的目的都是找到最小化下列式子的参数α 和G:

  易知,Adabooost 的目标式子就是指数损失,在给定n个样本的情况下,Adaboost 的损失函数为:

5、log对数损失函数

  Logistic回归的损失函数就是对数损失函数,在Logistic回归的推导中,它假设样本服从伯努利分布(0-1)分布,然后求得满足该分布的似然函数,接着用对数求极值。Logistic回归并没有求对数似然函数的最大值,而是把极大化当做一个思想,进而推导它的风险函数为最小化的负的似然函数。从损失函数的角度上,它就成为了log损失函数。

  log损失函数的标准形式: 

  在极大似然估计中,通常都是先取对数再求导,再找极值点,这样做是方便计算极大似然估计。损失函数L(Y,P(Y|X))是指样本X在标签Y的情况下,使概率P(Y|X)达到最大值(利用已知的样本分布,找到最大概率导致这种分布的参数值)

6、0-1损失函数和绝对值损失函数

  0-1损失是指,预测值和目标值不相等为1,否则为0:

参考文献:

【1】机器学习中的损失函数 (着重比较:hinge loss vs softmax loss)

Hinge Loss、交叉熵损失、平方损失、指数损失、对数损失、0-1损失、绝对值损失的相关教程结束。

《Hinge Loss、交叉熵损失、平方损失、指数损失、对数损失、0-1损失、绝对值损失.doc》

下载本文的Word格式文档,以方便收藏与打印。