[论文解读] Stochastic Gradient Descent with Polyak's Learning Rate
本文提出一种基于Polyak步长的自适应学习率随机梯度下降(SGD)方法,利用对最优函数值 $f^*$ 的估计动态调整学习率。该方法在非渐近意义下实现 $\mathcal{O}(1/k)$ 的收敛速率,且速率常数可能优于最优调度的SGD,展示了在凸问题和深度神经网络中无需超参数调优的改进实际收敛性能。
Stochastic gradient descent (SGD) for strongly convex functions converges at the rate $\bO(1/k)$. However, achieving good results in practice requires tuning the parameters (for example the learning rate) of the algorithm. In this paper we propose a generalization of the Polyak step size, used for subgradient methods, to Stochastic gradient descent. We prove a non-asymptotic convergence at the rate $\bO(1/k)$ with a rate constant which can be better than the corresponding rate constant for optimally scheduled SGD. We demonstrate that the method is effective in practice, and on convex optimization problems and on training deep neural networks, and compare to the theoretical rate.
研究动机与目标
- 为解决在未知强凸性参数时,SGD中学习率调优以实现最优收敛的挑战。
- 将原始用于次梯度方法的Polyak学习率推广至随机梯度设置。
- 在非渐近意义下实现 $\mathcal{O}(1/k)$ 的收敛速率,且速率常数可能优于调度SGD。
- 在无需手动调优超参数的前提下,验证该方法在凸优化和深度神经网络训练中的实际有效性。
提出的方法
- 通过使用运行中的最佳值 $f_k^{\text{best}}$ 估计 $f^*$,将Polyak学习率 $h(x_k) = \frac{f(x_k) - f^*}{\|\partial f(x_k)\|^2}$ 扩展至随机梯度设置。
- 采用自适应学习率 $h_k = \frac{f(x_k) - f_k^{\text{best}} + \gamma_k}{\|\nabla_{mb}f(x_k)\|^2}$,其中 $\gamma_k > 0$,$\gamma_k \to 0$,且 $\sum \gamma_k = \infty$,以保证收敛性。
- 在实际中采用截断版本,以防止因 $f^*$ 估计不准确导致的数值不稳定性。
- 推导出非渐近收敛界 $\mathbb{E}[\|x_k - x^*\|] \leq \frac{C}{k + \gamma}$,该界在每个迭代 $k > 0$ 均成立。
- 将Polyak SGD的速率常数 $\alpha_P$ 与最优调度SGD的速率常数 $\alpha_S$ 进行比较,表明在有利初始条件下 $\alpha_P$ 可能更小。
- 将该方法应用于二次问题和CIFAR-10上的AllCNN,使用PyTorch实现,并通过前期运行估计 $f^*$。
实验结果
研究问题
- RQ1Polyak学习率能否推广至随机梯度下降,以获得更优的收敛常数?
- RQ2自适应Polyak SGD方法是否能在非渐近意义下实现 $\mathcal{O}(1/k)$ 的收敛速率,且速率常数优于调度SGD?
- RQ3与调优后的SGD调度相比,该方法在凸问题和深度学习任务中的实际表现如何?
- RQ4该方法能否减少甚至消除深度学习中手动调优学习率的需求,特别是在 $f^*$ 通过前期训练估计时?
主要发现
- Polyak SGD方法在非渐近意义下实现 $\mathcal{O}(1/k)$ 的收敛速率,其速率常数 $\alpha_P = \frac{2\mu^2}{\sigma^2 + 2\mu^2(L - \mu)q_0}$ 可能小于最优调度SGD的速率常数 $\alpha_S$,当 $q_0 \leq \frac{M^2}{2\mu^2(L - \mu)}$ 时成立。
- 在二次问题的数值实验中,Polyak SGD在40次运行的平均过量损失上优于标准SGD和最优调度SGD,且理论边界更紧。
- 当初始化接近最优解时,Polyak SGD能迅速降低学习率并避免过冲,而采用固定调度的SGD则无法利用良好的初始化。
- 在CIFAR-10上使用AllCNN训练时,尽管无需学习率调优,Polyak SGD仍能达到与良好调优的SGD调度相当的训练损失和测试误差。
- 该方法仅需一个超参数——$f^*$,而 $f^*$ 可通过前期训练运行估计,使其在重复训练场景中具有实际可行性。
- 理论边界为非渐近形式,且在每个迭代 $k > 0$ 均成立,与许多标准收敛结果仅在极限下成立不同。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。