损失函数(常见的损失函数)
尊敬的读者,损失函数和常见的损失函数是当前备受关注的话题,但许多人对其仍存在疑惑。在本篇文章中,我将为你提供清晰的解释和深入的分析,希望能满足你的求知欲望。
常见的损失函数
MSE也称为L2 loss:
随着预测与真实值的绝对误差的增加,均方差损失呈二次方增加。
Huber Loss将L1和L2结合起来,也被称做smoothed L1 Loss。增加了一个需要额外设置的超参数,来控制L2和L1的连接位置。在误差接近0的时候使用L2,使损失函数可导,梯度更加稳定;误差较大的时候用L1,可以降低outlier带来的巨大误差的影响。
二分类中,通常使用Sigmoid函数将模型的输出压缩到(0, 1)区间。给定输入,模型判断为正类/负类的概率:
合并成一个:
取对数加负号之后,得到:
N是所有样本的数量。
图中曲线可以看出,当预测值越接近目标值损失越小,随着误差变差,损失呈现指数增长。
真实值现在是一个One-hot向量,Sigmoid换成了Softmax来把输出值压缩到(0, 1)之间,所有维度的输出和为1.
Softmax公式:
表示K个类别中的一个,k只在对应的类别上是1,其他时候是0。
于是上式可以改写成:
是样本的目标类。
分类问题中为什么不用MSE?因为MSE假设了误差服从高斯分布,在分类任务下这个假设无法满足,因此效果会很差。
第二个论点是从信息论的角度来分析的,是关于由KL散度的角度来推导Cross Entropy的过程(原文)
是另一种二分类损失函数,适用于Maximum-margin的分类,SVM的损失函数就是hinge loss+ L2正则化
下图为,当y为正类的时候(),不同的输出对应的loss图
当y为正类时,模型输出负值会有很大的惩罚。即使输出为正值在(0, 1)区间,也还是会有一个较小的惩罚。也就是只有置信度高的才会有零损失。使用hinge loss直觉上的理解是要找到一个决策边界,使得素有数据点被这个边界正确地,高置信度地被分类。
同时hinge loss也反应了一点,对于那些已经可以被很好分类的样本,它不再对loss产生贡献,可以让模型花更多的energy去学习难以分类的样本。
https://zhuanlan.zhihu.com/p/77686118
什么是损失函数
指一种将一个事件(在一个样本空间中的一个元素)映射到一个表达与其事件相关的经济成本或机会成本的实数上的一种函数。
定义在乘积空间上的函数称为损失函数,如果它满足如下两个条件:
(1)对任意的和成立;
(2)对任意固定的,作为 d的函数是可测的。表示当自然解处于状态时(参数的真实值为),人们采取决策(行动)d所造成的损失。若即是一堆实数空间上的子集,则称形如的损失函数为平方损失函数,称形如的损失函数为加权平方损失函数,其中。若,即是 k维实数空间上的子集。设 Q为的正定矩阵。则称形如的损失函数为二次损失函数。
损失函数的定义
在统计学,统计决策理论和经济学中,损失函数是指一种将一个事件(在一个样本空间中的一个元素)映射到一个表达与其事件相关的经济成本或机会成本的实数上的一种函数。
更通俗地说,在统计学中损失函数是一种衡量损失和错误(这种损失与“错误地”估计有关,如费用或者设备的损失)程度的函数。
损失函数的意义和作用
意义:损失函数就是用来表现预测与实际数据的差距程度。
作用:损失函数在实践中最重要的运用,在于协助我们通过过程的改善而持续减少目标值的变异,并非仅仅追求符合逻辑。
损失函数是描述系统在不同参数(parameter)值之下的损失。要应用损失函数,其损失必须是通过某种媒介可以衡量的。
现在举个例子:某个工厂人员的产出,以每小时多少元来计算,而损失函数所显示的,是产出以室内通风条件而改变的情形。厂内工作的每个人,都有自己的损失函数。为了简化说明,假设每个人的损失函数均为一条抛物线,其底部一点代表产出值最大时的通风条件,把所有人员的损失函数进行叠加,公司整体的损失函数也必然是一条抛物线。如果通风条件偏离这个最佳水准,就会有额外损失发生。
在统计学,统计决策理论和经济学中,损失函数是指一种将一个事件(在一个样本空间中的一个元素)映射到一个表达与其事件相关的经济成本或机会成本的实数上的一种函数。
非常感谢您的阅读!我们希望本文对于解决您关于损失函数和常见的损失函数的问题提供了一些有价值的信息。如果您还有其他疑问,我们将很乐意为您提供进一步的帮助。