前言
代价函数决定着模型训练的方向,而优化方法也是建立在代价函数的基础上的。而不同的问题往往有不同的代价函数,这里最一些比较常见的代价函数进行总结,也供模型设计的时候予以参考。
在这之前首先做一个区分:
损失函数(Loss Function):是定义在单个样本上的,是指一个样本的误差。
代价函数(Cost Function):是定义在整个训练集上的,是所有样本误差的平均,也就是所有损失函数值的平均。
目标函数(Object Function):是指最终需要优化的函数,一般来说是经验风险+结构风险,也就是(代价函数+正则化项)。
一、常见的代价函数
下面主要是PyTorch中的一些loss函数,能够反映各种类型的代价函数。
L1 Loss
计算 output 和 target 之差的绝对值,可以通过参数调整 mean 或 sum.

MSELoss
计算 output 和 target 之差的平方, 可以通过参数调整 mean 或 sum.

CrossEntropyLoss
将输入经过 softmax 激活函数之后,再计算其与 target 的交叉熵损失。即该方法将 nn.LogSoftmax() 和 nn.NLLLoss() 进行了结合。严格意义上的交叉熵损失函数应该是

本文深入解析了机器学习中常见的代价函数,包括L1Loss、MSELoss、CrossEntropyLoss等,探讨了它们在不同场景下的应用,如回归问题的均方误差及分类问题的交叉熵。同时,文章对比了损失函数、代价函数与目标函数的区别,为模型设计提供参考。
最低0.47元/天 解锁文章
3460

被折叠的 条评论
为什么被折叠?



