在深度学习中,我们依赖于梯度下降和反向传播来优化神经网络。这些方法的核心,正如其名,是“梯度”。梯度指引着我们如何调整参数以最小化损失函数。但如果我们的函数在某些点上没有梯度呢?这在现代神经网络中其实非常普遍,例如广泛使用的ReLU激活函数在x=0处就是不可导的。
这时候,“次梯度”(Subgradient)的概念就显得尤为重要。幸运的是,像PyTorch这样的现代深度学习框架已经巧妙地为我们处理了这些情况。这篇博客将带你深入浅出地理解什么是次梯度。
今天带来的论文是2019年由Ilya Loshchilov等人发表的《Decoupled Weight Decay Regularization》,在这篇论文中提出了AdamW算法,也是目前transformer模型中主要使用的优化器算法。这篇论文之前被拒两次,但是最终还是极大影响了后来llm优化器的选择。这篇论文纠正了过去的一种正则化思想:在Adam中的梯度加入权重衰减系数等价于对损失函数做L2正则化。 实际上二者在SGD算法中是等价的,但是Adam算法中并不等价。