【算法复现专栏】009 | LAMB:给每一层装上 trust ratio,让大 batch 训练不"偏科"
阅读导览:本文从零复现 LAMB:讲清 trust ratio(逐层"参数范数/更新范数"阻尼器)的机理与精确性质,用四组实验验证——含"每层相对步长恒等于 lr"的逐位对账、层间失衡的量化测量,以及一个与流行叙事相反、值得每个分布式训练工程师注意的实测结果。
一、背景与动机
008 篇的 AdaFactor 用"行/列统计"压缩内存,但层与层之间的不平衡问题还没被正面解决:在同一个全局学习率下,不同层(不同张量)收到的更新量在相对意义上千差万别——范数小的层被"相对大步"推着走(容易过冲),范数大的层相对几乎不动(学得慢)。小 batch 时代这个问题被噪声掩盖着;到了超大 batch(几万样本一批)时代,梯度噪声大减、学习率被放大,层间失衡从"隐患"升级成"主矛盾":某些层过冲爆炸、某些层纹丝不动,训练就崩了。
2017 年 LARS 首次给出了"trust ratio"这一逐层阻尼器(010 篇主角),把 SGD 的更新按 ∥θl∥/∥gl∥\|\theta_l\|/\|g_l\|
订阅专栏 解锁全文
2257



被折叠的 条评论
为什么被折叠?



