GradNorm: Gradient Normalization for Adaptive Loss Balancing in Deep Multitask Networks 论文阅读笔记

GradNorm

  • 不同任务的的梯度幅度大致相同
  • 平衡不同任务的训练速率

梯度幅度和训练速率的定义
梯度幅度
在这里插入图片描述
首先是选模型的哪块参数来做梯度统计,这里选取的是所有任务共享层的最后一层。然后,通过计算每个任务loss相对于最后共享层的梯度的2范数,作为每个任务的梯度幅度表示,此外还计算了每个任务的梯度幅度,算一个均值,得到某次训练的梯度平均幅值。

训练速率
在这里插入图片描述
怎么去定义任务收敛的快慢,也即训练速率,论文这里用的是loss比,通常来说,网络最开始随机预测,此时loss最大,记为L(0),然后以任务i在t时刻的L(t)/L(0)作为任务i的逆训练速率(每个任务的时间都是一样了,所以这里只表现出loss之比)。然后还可以计算得到一个相对逆训练速率。可推出正训练速率:[ Li(0) - Li(t) ] / Li(0)。

在这里插入图片描述
通过公式1,可以让GW往GW的均值去靠。
公式1虽然指明了梯度2范数的更新方向,但是没有直接在梯度上体现,也没有告诉用户在loss_weigt上应该做什么调整。下面讲讲这块。

在这里插入图片描述
这里其实是增加了一个L1 loss来让GWi向target靠近,这里称为Lgrad。为了不让Lgrad在收敛过程中,wi逐渐学习得到0值,将第二项当作一个常数来对待了(代码上要怎么操作?)。加了Lgrad之外,最后对wi还做了一个归一化处理()。

在这里插入图片描述
上图是grad norm的一个展示图。这里提到,Grad norm相当于强行让每个任务的学习速率相等,但是在一些场景中,会要求一些任务具有相对较高或较低的梯度幅度。
下图展示了算法的流程图
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值