ARTICLE
牛顿法
牛顿法 (Newton's Method) 牛顿法(Newton's method),又称牛顿-拉弗森方法(Newton–Raphson method),是数值分析中用于求解方程根与函数极值的一类迭代算法。其核心思想是利用函数在当前点的局部线性近似(泰勒展开的一阶或二阶项)来构造迭代格式,从而以二次收敛速度逼近精确解。牛顿法是科学计算中最基础的算法之一,在方
牛顿法 (Newton's Method)
牛顿法(Newton's method),又称牛顿-拉弗森方法(Newton–Raphson method),是数值分析中用于求解方程根与函数极值的一类迭代算法。其核心思想是利用函数在当前点的局部线性近似(泰勒展开的一阶或二阶项)来构造迭代格式,从而以二次收敛速度逼近精确解。牛顿法是科学计算中最基础的算法之一,在方程求解、最优化、机器学习和工程仿真等领域均有广泛应用。它的重要性不仅体现在理论上的优雅收敛性质,更在于其作为许多高级数值方法构建基石的实用价值。
求根问题
对于实数方程 ,牛顿法的迭代公式为:
其中 是 在 处的导数。其几何直观非常清晰:从当前点 作函数曲线的切线,该切线与 轴的交点即为下一迭代点 。如此反复迭代,不断用线性逼近代替非线性方程,逐步逼近真实根。当初始猜测 充分接近真根且 时,迭代序列具有二次收敛性,即误差满足 ,这意味着每迭代一步有效数字大约翻倍,收敛速度远快于二分法的线性收敛或割线法的超线性收敛。
设 , 且 ,则存在 的邻域使得从该邻域内任意点出发的牛顿迭代均收敛到 。若初始点远离真根,算法可能发散或收敛到其他根,因此实际使用中常需结合线搜索或阻尼策略。若 (重根情形),收敛速度降为线性,可通过修正格式 恢复二次收敛,其中 为根的重数。这一修正体现了对算法底层收敛机制的深入理解。
优化问题
在最优化中,牛顿法用于求解无约束极小化问题 。其迭代格式为:
其中 是梯度向量, 是Hessian矩阵。该格式来自 在 处的二阶泰勒展开:
令右端关于 的梯度为零即得牛顿步 。当 强凸且 Hessian Lipschitz 连续时,牛顿法二次收敛到全局极小点。
与梯度下降法相比,牛顿法利用二阶曲率信息,在极小点附近收敛远快于梯度下降,且对问题的条件数不敏感。但每步需计算并求逆 Hessian 矩阵,单步计算代价为 ,远高于梯度下降的 ,因此适用于中小规模问题或需要高精度的场景。这种时间-精度权衡是算法选择时的核心考量。
拟牛顿法
为克服每步计算 Hessian 矩阵的高昂代价,拟牛顿法(Quasi-Newton methods)应运而生。其核心思想是用梯度差分的低秩更新逐步近似 Hessian 矩阵或其逆矩阵,完全避免直接计算二阶导数。拟牛顿法只需每步计算梯度(与梯度下降相同),却能达到接近牛顿法的收敛速度。典型算法包括 DFP 方法(Davidon–Fletcher–Powell)、BFGS 方法(Broyden–Fletcher–Goldfarb–Shanno,最流行的拟牛顿法)以及适用于大规模问题的 L-BFGS 方法(Limited-memory BFGS,仅存储最近若干次梯度差分的隐式近似)。拟牛顿法通常达到超线性收敛速度,兼顾了牛顿法的快速收敛与梯度下降的低计算成本,在实践中得到广泛应用。
实用改进
在优化中,牛顿步可能不是下降方向(Hessian 非正定时),或步长过大导致发散。阻尼牛顿法引入线搜索:,其中 由 Armijo 条件或 Wolfe 条件确定,保证充分下降。信赖域牛顿法则在每一步构造局部模型(二阶泰勒近似)并在信赖域半径内极小化该模型,具有全局收敛性,且在极小点附近自动退化为经典牛顿法。当 Hessian 矩阵奇异或非正定时,可添加正则化项 进行修正,其中 足够大以保证矩阵正定,这本质上将牛顿法与梯度下降法混合,在远离极小点时发挥梯度下降的稳健性,接近极小点时发挥牛顿法的快速收敛。
变体与推广
割线法用差商 代替导数 ,免去解析求导但收敛速度降为超线性(收敛阶约 1.618)。Steffensen 方法用迭代点构造另一种无导数的牛顿格式。在复数域求解多项式根时,牛顿法可生成分形(牛顿分形),展现出丰富的动力系统行为。半光滑牛顿法将牛顿法推广到非光滑方程(如含绝对值或投影算子的方程),用于求解变分不等式和互补问题。
应用领域
牛顿法在众多科学与工程领域占据核心地位。在求解非线性方程组方面,计算流体力学中 Navier–Stokes 方程的离散化、结构力学中的有限元分析、化学反应工程中的物料平衡计算,均依赖牛顿法或其变体。在机器学习中,逻辑回归和广义线性模型常采用迭代重加权最小二乘法(IRLS),其本质即为牛顿法。机器人学中的逆运动学求解、电力系统的潮流计算、经济学中的一般均衡模型求解,同样以牛顿法为底层引擎。在深度学习中,由于现代神经网络的参数量动辄数百万甚至数十亿,经典牛顿法因 Hessian 矩阵的存储和求逆代价过大而不实用,但 Adam、RMSProp 等自适应梯度优化器借鉴了牛顿法的缩放思想,利用梯度的一阶矩和二阶矩估计对每个参数自适应调整学习率,以对角近似的形式模拟 Hessian 的预处理效果。
历史
牛顿法最早由艾萨克·牛顿在 1669 年的手稿《De analysi per aequationes numero terminorum infinitas》中提出,仅针对多项式方程。1711 年,约瑟夫·拉弗森将其推广为通用迭代格式。此后,辛普森、傅里叶、柯西等人进一步完善了收敛性理论和实用技巧。20 世纪 60 年代,随着计算机的出现,牛顿法成为数值计算的核心算法之一,其影响持续至今。
\subsection*{参考文献}
- Ortega, J. M., \& Rheinboldt, W. C. (1970). Iterative Solution of Nonlinear Equations in Several Variables. SIAM.
- Nocedal, J., \& Wright, S. J. (2006). Numerical Optimization (2nd ed.). Springer.
- Kelley, C. T. (2003). Solving Nonlinear Equations with Newton's Method. SIAM.