损失函数和网络优化方法(梯度下降、学习率优化方法)

一、损失函数
1. 概述

        用来 衡量模型参数质量的函数,比较网络输出和真实输出的差异,也称为 代价、目标、误差函数:

2. 分类任务的损失函数
(1)多分类

        多分类的交叉熵损失 也叫 softmax损失,计算方法:

                y:样本x属于某一类别的真实概率

                f(x):样本属于某一类别的预测分数

                S:softmax激活函数

                L:衡量真实值y 和预测值 f(x) 之间的差异

 在pytorch中使用nn.CrossEntropyLoss()实现:

# 设置真实值(可热编码)
y_true = torch.tensor([1, 2], dtype=torch.int64)
# 实例化 交叉熵损失
loss = nn.CrossEntropyLoss()
# 计算损失结果
my_loss = loss(y_pred, y_true).detach().numpy()
(2)二分类

        用sigmoid激活函数,二分类的交叉熵损失函数:

                y:样本x属于某一类别的真实概率

                y^:样本属于某一类别的预测概率

                L:衡量真实值y 和预测值 y^ 之间的差异

在pytorch中实现时使用nn.BCELoss():

# 实例化二分类交叉熵损失
loss = nn.BCELoss()
3. 回归任务
(1)MAE

(Mean absolute loss):L1 Loss,以绝对误差作为距离

损失函数公式:

特点:1. 具有稀疏性,为了惩罚较大的值,常作为正则项 添加到其他 loss中作为约束

            2. 最大问题是 梯度在零点不平滑,会跳过极小值

在pytorch中实现时使用nn.L1Loss():

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值