损失函数下降到很大值就稳定了怎么办?!

训练结果如下所示:

终端第1列:epochs,第2列:训练损失(蓝色曲线),第3列:测试损失(橙色曲线)

batch size:16,lr:4e-5

1. 是否找到合适的loss函数

2. batch size是否合适:过大的batchsize会让网络收敛到不好的局部最优点,泛化性不好;过小的batchsize训练速度慢,训练不收敛。

3. 是否使用合适的activation function

4. 学习率:学习率太大,一步前进的路程太长,会出现来回震荡的情况,但是学习率太小,收敛速度会比较慢。

综上,图中损失曲线均收敛至20000左右,没有出现回荡现象,因此学习率不优先修改。收敛值过高,怀疑可能是局部最优了,所以优先调节batch size。

调整后重新训练结果如下:batch size=8,其他不变

由上述结果可以看出,调小batch size之后,收敛后的损失值有明显下降。

但是后续发现,我这边的代码真的不太好,效果很差,所以要考虑一下是不是损失函数太简单了,方法论不太好!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值