Datawhale X 李宏毅苹果书 AI夏令营-自适应学习率

158 阅读3分钟

动量法(Momentum)是一种优化方法,用于加速梯度下降收敛。它通过引入一个动量项,积累过去梯度的指数衰减平均值,从而减少震荡,保持更新方向的稳定性。公式为:vt=βvt−1+(1−β)∇L(θ)v_t = \beta v_{t-1} + (1 - \beta) \nabla L(\theta)vt​=βvt−1​+(1−β)∇L(θ),然后更新参数θ\thetaθ为θ=θ−αvt\theta = \theta - \alpha v_tθ=θ−αvt​,其中β\betaβ是动量因子(通常取0.9),α\alphaα是学习率。动量法使得参数更新方向考虑了过去的趋势,从而有效加快学习过程,尤其在深层神经网络中表现优越。

自适应学习率(Adaptive Learning Rate)优化算法根据梯度的变化自动调整每个参数的学习率。典型的自适应学习率方法包括AdaGrad、RMSprop等。AdaGrad会根据累计的梯度平方根来调整学习率,适合稀疏数据集。而RMSprop进一步改进了AdaGrad,通过引入滑动平均来控制累积的历史梯度,使其适合非平稳目标。其目的是在不同参数的学习中保持适应性,避免某些参数收敛过慢或过快。

Adam(Adaptive Moment Estimation)结合了动量法和自适应学习率的优点,使用一阶和二阶动量估计来动态调整每个参数的学习率。Adam的更新规则包括计算一阶动量(平均梯度)和二阶动量(梯度平方的平均),并通过偏差校正使得估计更准确。Adam的学习率调整在保持稳定性的同时提高了收敛速度,非常适用于处理大规模数据和高维空间。

AdamW(Adam with Weight Decay)是对Adam的改进,主要解决了L2正则化与Adam的权重更新不兼容的问题。在AdamW中,权重衰减是直接施加在参数更新中,而不是作为正则化项加入损失函数。这样使得权重衰减真正地减少参数值,而不是影响梯度更新的方向,从而改进了模型的泛化性能,是目前训练深度学习模型的主流方法之一。

例如,在训练图像分类的神经网络时,使用AdamW优化器能够比传统的Adam更好地避免过拟合问题。假设一个简单的卷积神经网络(CNN)用来分类手写数字数据集MNIST,使用Adam可能会在训练集上表现很好,但在测试集上出现过拟合。而采用AdamW,得益于改进的权重衰减策略,可以更好地控制模型的复杂度,从而在测试集上获得更好的泛化能力。

在深度学习中,分类任务是指将输入数据分配到离散的类别中。常见的分类任务包括图像分类、文本分类、语音识别等。例如,在图像分类中,神经网络接收一张图片并输出属于某个类别的概率,如猫、狗或汽车等。分类模型通常使用交叉熵损失函数(Cross-Entropy Loss)来衡量预测的准确性,并通过Softmax激活函数将输出转化为概率分布。常见的分类模型有卷积神经网络(CNN)用于图像数据,循环神经网络(RNN)或Transformer用于文本和时间序列数据。

回归任务则是预测连续值,如股票价格、房价预测、温度变化等。回归任务的目标是找到输入特征和输出连续值之间的映射关系。模型通常采用均方误差(Mean Squared Error, MSE)作为损失函数,来最小化预测值与真实值之间的差距。回归任务常见的深度学习模型包括多层感知机(MLP)、长短期记忆网络(LSTM)、自回归模型和Transformer等。回归模型需要精确捕捉输入特征和输出变量的关系,并对数据分布有较好的理解和拟合能力,以实现准确预测。