PyTorch -- 最常见损失函数 LOSS 的选择

  • 损失函数 :度量模型的预测结果与真实值之间的差异;通过最小化 loss -> 最大化模型表现
  • 代码实现框架:设有 模型预测值 f (x), 真实值 y
    • 方法一: 步骤 1. criterion = torch.nn.某个Loss();步骤 2. loss = criterion(f(x), y)
    • 方法二:直接采用 F.某个_loss(f(x), y)

回归损失(Regression Loss):希望预测值和真实值接近,即 f(x) = y

  • torch.nn.L1Loss()】平均绝对值误差 MAE(Mean Abs Error): f (x) 和 y 之间差的绝对值的平均值
    • 具体数学计算公式: Loss = 1 n ∑ i = 0 n ∣ f ( x i ) − y i ∣ \text{Loss}=\frac{1}{n}\sum^n_{i=0} |f(x_i)-y_i| Loss=n1∑i=0n∣f(xi)−yi∣
    • 注:L1 损失, 主要用于回归问题和简单的模型,所以很少使用
  • torch.nn.MSELoss()】平均平方误差 MSE(Mean Squared Error): f (x) 和 y 之间差的平方的平均值
    • 具体数学计算公式: Loss = 1 n ∑ i = 0 n ( f ( x i ) − y i ) 2 \text{Loss}=\frac{1}{n}\sum^n_{i=0} (f(x_i)-y_i)^2 Loss=n1∑i=0n(f(xi)−yi)2: F.mse_loss(f(x), y)
    • 注:L2 损失, 很常用

分类损失(Classification Loss):希望分类准确率高等

  • torch.nn.CrossEntropyLoss()】分类交叉熵损失 CEL(Cross Entropy Loss): 和 KL divergence (衡量两个分布的相似度) 有关
    • 具体数学计算公式: − ∑ y i j log ⁡ ( f ( x i ) j ) -\sum y_{ij}\log(f(x_i)_j) −∑yijlog(f(xi)j), 注意其中 f ( x i ) f(x_i) f(xi) 表示模型预测出的概率值如 [0.1, 0.7, 0.2]: F.cross_entropy(直接传入 logits (已打包了 softmax))
    • 通常和 softmax (soft version of max S ( y i ) = e y i ∑ e y i S(y_i) = \frac{e^{y_i}}{\sum e^{y_i}} S(yi)=∑eyieyi: F.softmax(y)) 搭配使用 (softmax 负责产生上述概率输出)
    • logistic regression (按sigmoid输出的概率大小分类) 已被 classification 代替

相关推荐
天下财经热几秒前
工业搬运机器人和AMR领域哪些品牌更值得关注?2026年工业物流自动化选型指南
人工智能·机器人·自动化
杨超越luckly几秒前
Python应用指南:百度热搜数据
python·百度·html·数据可视化
qq_411262421 分钟前
四博 AI 智能音箱方案升级:ESP32-S3/C3 + HFP 耳机 + A2DP 外置音箱 + 开源二次开发
人工智能·开源·智能音箱
沫儿笙1 分钟前
机器人氩弧焊保护气节气装置
人工智能·机器人
钓了猫的鱼儿1 分钟前
基于深度学习+AI的玉米叶片病害目标检测与预警系统(Python源码+数据集+UI可视化界面+YOLOv11训练结果)
人工智能·深度学习·目标检测
小何code2 分钟前
人工智能【第22篇】Seq2Seq模型与注意力机制:机器翻译的基石
人工智能·深度学习·自然语言处理·机器翻译·注意力机制·seq2seq
a752066283 分钟前
AI 智能体 OpenClaw 飞书插件安装配置 全程命令行实操
人工智能·飞书·openclaw部署·ai 办公自动化
霸道流氓气质4 分钟前
Spring AI Advisor 完全指南:拦截器机制与实战全解
java·人工智能·spring
禾刀围玉4 分钟前
深度学习-线性回归
人工智能·深度学习·线性回归
qyr67894 分钟前
全球罐底扫描仪市场前景分析与行业报告
大数据·人工智能·数据分析·市场报告·罐底扫描仪