在预训练时使用Warm Up的理解以及loss plateau。

本文探讨了预训练模型中WarmUp策略的理解,分析了预训练过程中损失(loss)曲线变化的原因,提到了loss plateau现象以及可能的解决方案。文章指出WarmUp主要应用于深度网络稳定深层参数和大batch训练,引用了相关研究证明其效果,并讨论了网络深度和batch大小对模型训练的影响。同时,文章还介绍了其他优化训练的方法,如学习率重启和知识蒸馏。
摘要由CSDN通过智能技术生成

在预训练时使用Warm Up的理解

之前在wikitext-103上预训练Bert-base的时候,发现loss曲线会平一段然后再下降,大概是像下图这样:横轴是step,纵轴是loss
在这里插入图发达
当时的warm up是前16K step。一直以为第二次下降是因为warm up结束后,learning rate降下来,然后loss又有一次下降。后来在wikipedia上跑发现没有中间这一段平的loss了。所以猜想实际原因不是warmup。搜索了一下发现这个loss曲线是很容易出现的一种情况:loss plateau。陷入了某个简单的局部最优,然后一段时间后才跳出来。有一篇20年的文章提出了一种新的loss来解决《PLATEAU PHENOMENON IN GRADIENT DESCENT TRAINING
OF RELU NETWORKS: EXPLANATION, QUANTIFICATION AND
AVOIDANCE》。还有一个github库博客也可以做这个.

但是还是不太确定warm up是否会让loss curve有两段下降。所以搜索了一下使用warm up,发现似乎确实没有这个效果。大家使用warm up的原因主要有两个:

  • 网络比较深,想要稳定深层的参数。
  • 使用large batch(LB)的时候。
    可以从A Closer Look at Deep Learning Heuristics: Learning rate restarts, Warmup and Distillation这个工作中看出来这两个的影响,当大batch的时候,validation效果在有warmup的时候更好(图a)。当网络较深的时候,用warmup和冻结深层参数的效果一样(图d)。
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值