loss曲线震荡(模型不收敛、acc震荡)

loss震荡分析:

loss值在一段下降后突然激增,说明训练过程有细节上的问题,应该是在训练时,对权重和偏置的改变量过大所致。或者是在训练过程中,训练方法上有软逻辑错误。(比如大数据集下每跑一个数据进行一次权重偏置更新这种玄学问题)

检查训练软逻辑是否有错,尝试逐步减小learning rate,或者使用剃度裁剪或其他巧妙方法控制训练时梯度,避免梯度爆炸的问题。

这种loss值上下摆动的情况在时序处理类神经网络训练时时有发生,剃度裁剪是比较有效的方法。如果对此现象不加以遏制,有可能训练成功,但是在检验集上表现很差;或者梯度持续爆炸,loss摆动幅度增大,数据出现inf或nan,训练全部白费。

如果说loss值在一个上界和下界中间来回摆动,也是learning rate过大或者梯度有轻微爆炸情况的表现,这就像是你快到山谷底端,但是步子跨得很大,跳到对面了,然后又跳回来,如此反复。

转自知乎:https://www.zhihu.com/question/301010737/answer/523893704
 

解决办法:

保持batch_size不变,减少lr,对于时序模型,进行梯度裁剪或者梯度衰减

或者 https://www.cnblogs.com/Mrzhang3389/p/10164241.html



 

  • 4
    点赞
  • 70
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值