梯度下降与高维优化

创建时间
May 27, 2025 09:46 AM
编辑日期
Last updated June 4, 2025
属性
标签
参考文章:
  1. Why Training a Neural Network Is Hard, 2019.
  1. 在数学中一个非凸的最优化问题是什么意思?
 
 
深度学习的核心在于优化高度非凸的损失函数[1],这些函数涉及数百万或上亿的参数。理论上,训练神经网络由于非凸损失函数的NP困难性导致寻找最优解十分困难,这使得“优化”称为关键研究领域之一。使用随机梯度下降(Stochastic Gradient Descent,SGD)等简单算法的经验成功性在某种程度上是意外的,需要更深层次的解释为什么会得到这个效果。
[1] Haeffele, B. D., & Vidal, R. (2017). Global optimality in neural network training. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (pp. 7331-7339).

1. 基本介绍&梯度下降

深度学习模型的训练过程是迭代进行的,每次迭代都会对权重(weights)进行更新,伴随着模型性能发生变化。神经网络的迭代训练是为了解决一个优化问题,其评估当前训练结果与训练数据集的最小误差或损失值。
优化过程可以理解为在landscape中搜索足够令人满意的方案,常见是如左图一样的碗状。通常认为山谷表示损失值较小的好模型。一般来说权重误差函数 是一个高维函数无法可视化,但可以用权重 的函数绘制,看起来就像是有丘陵和山谷的模样,这种landscape也被称为error surface。
notion image
优化方法以迭代方式更新权重/参数从这个landscape尽可能找到一个最低的山谷。如果呈现一个碗状那么很容易用梯度下降法找到局部最优解即全局最优,该问题被称为凸(convex)优化。
反之是非凸优化,神经网络不存在以多项式时间内找到一组最佳权重的算法,训练神经网络的优化问题称为NP困难的。对于landscape主要的三个特征是局部最小值(local minima)、鞍点(saddle points)和高维性(high-dimensinonal)。
notion image
非线性网络通常有多个不同深度的局部最小值,训练的目标是找到其中之一。为了寻找全局最小值,一个最简单的是训练多组不同且随机初始权重的网络。即类似使用不同起点开始搜索。
notion image
鞍点是landscape上的某处梯度为零的点。这篇2014年的工作指出局部最小值和平坦区域比以前认为的要少。
Goodfellow, I. J., Vinyals, O., & Saxe, A. M. (2014). Qualitatively characterizing neural network optimization problems. arXiv preprint arXiv:1412.6544.
2020年工作讨论了更为复杂的CIFAR-10和Imagenet数据集以及VGG和ResNet模型,原2014文章描述的相对容易优化是建立在MNIST上的。说明2014的结论对于当下复杂度更高的模型和数据集上可能并不适用的。
Frankle, J. (2020). Revisiting" qualitatively characterizing neural network optimization problems". arXiv preprint arXiv:2012.06898.
由于深度神经网络的参数数量大多有数百万或更多参数,因此优化的任务是高维的,随着设置不同可能会呈现指数级增加。
主要有以下问题:不期望一定活得全局最小值的情况下,如何得到尽可能好的局部最小值;怎样的模型和优化算法的设计能够降低训练时间或资源;如果遇到鞍点,优化算法应该能自行跳出。

1.1 梯度下降的直观理解

梯度下降(Gradient Descent)是一种通过迭代地在负梯度方向上更新参数,数值化地估计函数最小值的算法。核心规则:
其中 是当前参数, 是学习率, 是函数 处的梯度。这是最小化可微函数的基础,梯度之所以向下移动,是因为负梯度方向是函数值下降最快的方向。

1.2 学习率

学习率 控制梯度下降算法的收敛速度和稳定性,选取合适的学习率往往需要反复试验或采取自适应策略。从动力系统看,学习率可以被理解为对连续时间微分方程 进行欧拉近似时 的离散化参数
这个连续系统描述了一条最速下降路径,梯度下降则以离散的步伐逼近这条路径。较小的 可以更好地跟随连续路径,对应需要更多时间。

2. 咕咕咕

pass

3.非凸优化

3.1 深度学习损失函数特性

神经网络的损失函数本质上是非凸的,这意味着存在多个局部极小点和鞍点。非线性激活函数及其复合结构是造成复杂景观(landscape)的主要原因。尽管理论上存在复杂性,但实际操作中显示出损失函数的景观可能更“简单”,优化路径通常不会遇到明显阻碍,且梯度的方向符合预期。与理论中的NP困难形成显著对比。
Ge, R等人的工作说明了神经网络的损失函数可能“并非完全是非凸的”。局部极小值可能不多,反之鞍点可能会更多。梯度下降应该在鞍点附近有良好表现。
Ge, R., Huang, F., Jin, C., & Yuan, Y. (2015, June). Escaping from saddle points—online stochastic gradient for tensor decomposition. In Conference on learning theory (pp. 797-842). PMLR.
另一项工作研究了梯度在优化路径上的几何特性,发现在限制割线不等式(Restricted Secant Inequality, RSI)和误差界(Error Bound, EB)等存在可预测的行为,负梯度与最终迭代方向之间的余弦相似度保持稳定。在大多数训练过程中保持稳定的动态特性,可在理论上保持线性收敛。
Guille-Escuret, C., Naganuma, H., Fatras, K., & Mitliagkas, I. (2023). No wrong turns: The simple geometry of neural networks optimization paths. arXiv preprint arXiv:2306.11922.
在高维空间中,鞍点比局部极小点更普遍存在。一个点成为局部极小点需要其Hessian矩阵的所有特征值为正,随着维度的增加,一个随机临界点满足该条件的概率随之降低。伴随着维度增加,出现混合特征值的符号情况越多,鞍点越来越常见使得像牛顿法这种二阶方法在深度学习中表现不佳,而梯度下降方法似乎并不会卡在鞍点。Dauphin, Y. N.等人的工作认为高维的困难来自于鞍点而非局部最小值,因此提出了一种二阶无鞍牛顿优化法。
Dauphin, Y. N., Pascanu, R., Gulcehre, C., Cho, K., Ganguli, S., & Bengio, Y. (2014). Identifying and attacking the saddle point problem in high-dimensional non-convex optimization. Advances in neural information processing systems27.
Hessian矩阵的 描述了局部曲率,另外由于鞍点的普遍性意味着优化器更有可能遇到它。其中 ,实值函数 是由二阶偏导组成的矩阵。
深度神经网络(Deep Neural Network, DNN)能够使用简单的一阶方法如SGD表现良好。研究表明SGD及其变体在应用中非常有效,优化过程中遍历路径表现出几何简单性,即梯度持续指向改进的方向。另外在高维空间中,大多数局部极小点和全局极小点的是非常相似的,临界点多为鞍点,而不是通常认为的“坏”的局部极小点。这使得非凸性的问题可能更多的是如何在由鞍点主导并找到一个足够好/平坦的极小点的景观,而非陷入质量差的局部极小点。进一步,网络架构和优化器并不一定是寻找全局最优解,而是在损失较低的“良好连接”区域内找到一个更优的解。这意味着我们不仅需要关注如何逃离局部极小点,还应在算法中隐式地偏向这些“有用”的区域。优化器路径相关的几何形状可能比全局景观的最糟情况更重要。
Yang, Y., Hodgkinson, L., Theisen, R., Zou, J., Gonzalez, J. E., Ramchandran, K., & Mahoney, M. W. (2021). Taxonomizing local versus global structure in neural network loss landscapes. Advances in Neural Information Processing Systems34, 18722-18733. Brea, J., Simsek, B., Illing, B., & Gerstner, W. (2019). Weight-space symmetry in deep networks gives rise to permutation saddles, connected by equal-loss valleys across the loss landscape. arXiv preprint arXiv:1907.02911.
Liang, S., Sun, R., Lee, J. D., & Srikant, R. (2018). Adding one neuron can eliminate all bad local minima. Advances in Neural Information Processing Systems31.

3.2 Lp正则化的作用

Lp正则化是一种常用的技术,L2正则化向损失函数添加二次惩罚项 ,而L1正则化添加类似 的项。于是正则化损失=原始损失+正则化项,优化器在最小化损失和惩罚项之间平衡。
L2正则化向损失函数添加了一个凸项(抛物线),这可以“平滑”损失函数景观中的褶皱,使得更像一个“碗”。另一个观点是L2正则化向损失函数添加了平滑项,使下降路径更平滑。
Zhang, Z., Zhou, H., & Xu, Z. Q. J. (2021). Dropout in training neural networks: Flatness of solution and noise structure. arXiv preprint arXiv:2111.01022.
L1正则化添加了一个菱形/金字塔样的惩罚,通过将影响较小的权重处理为零来增加疏松性。L1的特征选择特性可以简化模型,但它在零点不可微,可能会使得损失表面更粗糙。L1的稀疏性引导是一种更直接的模型简化形式,可以施加更简单模型的偏好,间接在非凸景观中导航至更具泛化能力的解。L1并不会使优化问题凸化。
总的来说,Lp正则化通过重塑损失函数景观并使优化器偏向某种特性如较小的权重或稀疏性的解。这些特性通常和更好的泛化能力与避开尖锐极小值相关。深度神经网络是损失景观是高度非凸的,L2正则化添加了一个凸的二次惩罚项,非凸函数与一个凸函数之和未必是凸的,以基础损失的非凸性为主导。当然L2能将模型移向原点,并影响误差景观的曲率。较小的权重通常与更简单的模型和平坦的极小值相关。这意味着L2正则化不是让问题变为凸的,而是引导,通过惩罚大权重抑制可能尖锐、不好的极小值中的过度复杂解。修剪搜索空间或降低某些具有大权重区域的吸引力,隐式地引导优化器。

3.3 神经网络架构的作用

广泛使用的批量归一化(BatchNorm)能使优化路径更平滑,使得梯度更具预测性和稳定性,从而能更快的训练和使用更大的学习率。引入BatchNorm的初始动机是减少内部协变量偏移(Internal Covariate Shift, ICS),但主要的好处是平滑损失函数。此外在BatchNorm之后加入噪声后可继续引入ICS,不会抵消BatchNorm的效果。/
Santurkar, S., Tsipras, D., Ilyas, A., & Madry, A. (2018). How does batch normalization help optimization?. Advances in neural information processing systems31.
当前常用的一种深度神经网络ResNet所使用的跳跃连接(Skip connections)允许梯度更容易地反向传播,降低梯度消失问题。这可以创建一个更容易地梯度优化问题,并保留模型的表达能力。跳跃连接绕过一些非线性变换,可防止损失函数过于复杂。+
Joyce, J., & Verschelde, J. (2024, August). Algebraic Representations for Faster Predictions in Convolutional Neural Networks. In International Workshop on Computer Algebra in Scientific Computing (pp. 161-177). Cham: Springer Nature Switzerland.
此外,跳跃连接可能导致“梯度重叠”,即梯度被高估。类似ZNorm技术通过标准化梯度来减轻这种影响。在某些条件下,使用跳跃连接的深度ResNet可能没有除全局最小值之外的其他临界点。还可以有助于避免损失函数中的某些奇异点,ResNet的损失函数随着训练过程由”锯齿状“演变成”平滑“几何。
Yun, J. (2024, December). Mitigating Gradient Overlap in Deep Residual Networks with Gradient Normalization for Improved Non-Convex Optimization. In 2024 IEEE International Conference on Big Data (BigData) (pp. 3831-3837). IEEE.
Li, H., Xu, Z., Taylor, G., Studer, C., & Goldstein, T. (2018). Visualizing the loss landscape of neural nets. Advances in neural information processing systems31.
这里列举的BatchNorm和跳跃连接架构充当了强大的隐式正则化器和损失函数调节器,改变了优化问题的几何形状使其更适合一阶方法。

3.4 优化器如何跳出陷阱

随机梯度下降(Stochastic Gradient Descent, SGD)通过小批量数据引入噪声,有助于逃离浅层局部极小点和鞍点。小批量数据的损失函数可能与全批量损失函数不同,对全样本损失而言是局部极小点,对于单样本损失或小批量损失则未必是非局部极小点。