常见的损失误差有五种:
1. 铰链损失(Hinge Loss):主要用于支持向量机(SVM) 中;
2. 互熵损失 (Cross Entropy Loss,Softmax Loss ):用于Logistic 回归与Softmax 分类中;
3. 平方损失(Square Loss):主要是最小二乘法(OLS)中;
4. 指数损失(Exponential Loss) :主要用于Adaboost 集成学习算法中;
5. 其他损失(如0-1损失,绝对值损失)
损失函数是用来衡量模型的性能的,通过预测值和真实值之间的一些计算,得出的一个值,这个值在模型拟合的时候是为了告诉模型是否还有可以继续优化的空间(模型的目的就是希望损失函数是拟合过的模型中最小的)通常机器学习每一个算法中都会有一个目标函数,算法的求解过程是通过对这个目标函数优化的过程。在分类或者回归问题中,通常使用损失函数(代价函数)作为其目标函数。损失函数用来评价模型的预测值和真实值不一样的程度,损失函数越好,通常模型的性能越好。不同的算法使用的损失函数不一样。
损失函数分为经验风险和结构风险损失函数,经验损失函数表示预测结果和实际结果之间的差别,结构风险是经验风险加上正则项。通常表示为:
(1)0-1损失函数
0-1损失函数表示,预测错误为1,正确则为0;
这种判断特别严格,感知机用的就是这种损失函数,该损失函数不考虑预测值和真实值的误差程度,也就是只要预测错误,预测错误差一点和差很多是一样的。
为了放宽条件,作一下改进,即满 |Y−f(X)|<1时认为相等。
(2)绝对值损失函数:
L(Y,f(X))=|Y−f(X)|
(3)平方损失函数:
最小二乘法是线性回归的一种方法,它将回归的问题转化为了凸优化的问题。最小二乘法的基本原则是:最优拟合曲线应该使得所有点到回归直线的距离和最小。通常用欧几里得距离进行距离的度量。
(4)指数损失函数:
AdaBoost就是一指数损失函数为损失函数的。
(5)Hinge损失函数 :
支持向量机(SVM)一般使用此损失函数。
Hinge函数的标准形式:
y是预测值,在-1到+1之间,t为目标值(-1或+1)。其含义为,y的值在-1和+1之间就可以了,并不鼓励|y|>1
,即并不鼓励分类器过度自信,让某个正确分类的样本的距离分割线超过1并不会有任何奖励,从而使分类器可以更专注于整体的分类误差。
在线性支持向量机中,最优化问题可以等价于