什么是损失函数? (去计算损失值的函数)
损失函数,也称为代价函数,是一个用来衡量机器学习模型预测结果与真实值之间差距的函数。

|
任务类型 |
默认首选损失函数 |
关键考量 |
|---|---|---|
|
回归 |
均方误差 (MSE) |
最通用。如果数据中有很多异常值,考虑 MAE 或 Huber Loss。 |
|
二分类 |
二分类交叉熵 (BCE) |
与Sigmoid激活函数配对使用。 |
|
多分类 |
多分类交叉熵 (CE) |
绝对主流,与Softmax激活函数配对使用。 |
|
SVM分类 |
合页损失 (Hinge) |
SVM的专属损失。 |
|
类别极端不平衡 |
Focal Loss |
基于交叉熵改进,是解决不平衡问题的“高级武器”。 |
小结:交叉熵损失因其能提供与误差直接成正比的强大梯度,彻底解决了分类模型中使用Sigmoid/Softmax层时带来的梯度消失问题,从而极大地加快了训练速度,这是它成为绝对主流的根本原因。
为什么交叉熵损失就非常适合分类问题,均方误差MSE很适合回归问题呢?
|
特性 |
均方误差 (MSE) |
交叉熵 (Cross-Entropy) |
|---|---|---|
|
任务 |
回归 (预测连续值) |
分类 (预测概率分布) |
|
梯度性质 |
梯度与误差 |
梯度与误差 |
|
核心优势 |
优化过程稳定,符合高斯噪声假设 |
为分类模型提供强大、有效的梯度,避免梯度消失 |
|
概率解释 |
等价于高斯分布下的最大似然估计 |
等价于多项分布下的最大似然估计 |
|
错误选择后果 |
在分类问题上导致训练缓慢甚至无法收敛 |
在回归问题上假设不对,且优化性质不佳 |
损失函数的优化方法有哪些,各自优缺点是什么,他们的应用范围是什么?(即 得到了损失值后怎么优化)
|
方法类别 |
代表算法 |
核心思想 |
优点 |
缺点 |
主要应用场景 |
|---|---|---|---|---|---|
|
一阶迭代法 |
梯度下降及其变种(SGD, Adam) |
利用一阶导数(梯度)指引下降方向 |
简单、可扩展,适用于大规模问题 |
可能收敛慢、陷入局部最优 |
深度学习的主力军 |
|
二阶迭代法 |
牛顿法、L-BFGS |
利用二阶导数(曲率)提供更精确的更新方向和步长 |
收敛速度极快 |
计算成本极高,对大规模问题不可行 |
传统小规模机器学习模型 |
|
无导数方法 |
贝叶斯优化、进化算法 |
通过采样、概率模型或种群进化来搜索最优解,不依赖梯度 |
不要求可导,擅长全局搜索 |
计算成本高,收敛慢 |
超参数调优、NAS、强化学习、不可导问题 |
|
解析法 |
正规方程 |
直接令梯度为零解方程 |
一步得到精确解 |
仅适用于极少数有解析解的简单模型 |
线性回归 |

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



