目录
一、损失函数的定义
损失函数:用于衡量模型所作出的预测值与真实值之间的偏离程度。
损失函数主要分为回归损失(连续型)和分类损失(离散型)
损失函数,代价函数,目标函数之间的区别:
损失函数(Loss Function)定义在单个样本上,算的是单个样本的误差
代价函数(Cost Function)定义在整个训练集上,是所有样本误差的平均,也就是损失函数的平均
目标函数(Object Function)是最终需要优化的函数。即:经验风险+正则化项(Cost Function + Regularization)。
二、常见的回归损失函数
1、L1 LOSS (MAE平均绝对误差)
缺点:在0处不光滑,导数不连续,使得网络学习较慢
2. L2 LOSS(MSE均方差误差)
特点:学习速度比较快,但是对离群点比较敏感,离群点损失会在损失中占主导部分,需要自行调整学习率,防止出现梯度爆炸现象。
3. Smooth L1 LOSS
综合了L1和L2损失的优点,在0处光滑可导,同时对于异常点鲁棒性较强。
4.IOU LOSS及其各种变种
IOU损失将侯选框的边界信息作为一个整体来进行回归,从而实现准确高效的定位,具有很好的尺度不变性。而smooth L1则没有考虑边界框边界之间的相关性。
三、常见的分类损失函数
1.交叉熵损失函数 Cross Entropy Loss
这个是二分类的公式。对于多分类问题,交叉熵经常搭配softmax使用,将输出的结果进行处理,使其多个分类的预测值和为1,再通过交叉熵来计算损失。
2.Focal Loss
见我的这篇文章
Focal loss详解与分析_CVplayer111的博客-优快云博客