1. 回归任务损失函数(MAE、MSE)
【损失函数】MSE, MAE, Huber loss详解_mse损失函数-CSDN博客
【回归损失函数】L1(MAE)、L2(MSE)、Smooth L1 Loss详解_mae损失函数-CSDN博客
2. 分类任务评价指标(Accuracy、Precision、Recall、F1)
机器学习-理解Accuracy,Precision,Recall, F1 score以及sklearn实现 - 知乎 (zhihu.com)
sklearn分类评估参数 average_sklearn average-CSDN博客多分类问题的“宏平均”(macro-average)与“微平均”(micro-average) - 知乎 (zhihu.com)sklearn分类评估参数 average_sklearn average-CSDN博客(多分类问题)
以上概率也可以作为多分类任务的指标。
3. 分类任务损失函数(CrossEntropyLoss、BCELoss)
3.1 交叉熵CrossEntropyLoss
从信息量 -> 熵 -> 相对熵(KL散度)-> 交叉熵 这个进阶路径来介绍:一文搞懂交叉熵在机器学习中的使用,透彻理解交叉熵背后的直觉-CSDN博客https://blog.csdn.net/tsyccnh/article/details/79163834可以看到KL散度在二分类问题下就是NLL负对数似然估计。
通过优化分布Q来拟合分布P,可以用KL散度来做为目标函数,当KL散度为0时两个分布一致。分布P是客观存在的,其信息熵为常量,把常量减去后即为交叉熵。
KL散度非负性证明:KL散度(Kullback–Leibler divergence)非负性证明_kl散度非负性证明-CSDN博客
softmax(结果相关)与sigmoid(结果不相关):
深度学习原理42——一文彻底理解sigmoid和softmax的区别和输出通道维度的关系_语义分割中sigmod输出的置信度-CSDN博客
一些数学实现细节上的讨论:
torch代码实现细节:
NLLLoss和CrossEntropyLoss的区别和联系-CSDN博客
NLLLoss — PyTorch 2.4 documentation CrossEntropyLoss — PyTorch 2.4 documentation
3.2 单分类任务BCELoss
深刻剖析与实战BCELoss详解(主)和BCEWithLogitsLoss(次)以及与普通CrossEntropyLoss的区别(次)-CSDN博客
4. 其他
MLE(最大似然估计):
深度探索:机器学习中的最大似然估计(MLE)原理及其应用-CSDN博客
其他损失函数可参考:
一文看尽深度学习中的15种损失函数 - 知乎 (zhihu.com)
pytorch中常见loss函数归纳(二分类、多分类、检测、分割、回归)_pytorch 二分类loss-CSDN博客
其他评价指标: