当前位置: 首页 > news >正文

梯度下降,共轭梯度,牛顿法,拟牛顿法的收敛速度对比

一、收敛速度理论对比

方法收敛速度(一般非线性函数)收敛速度(二次凸函数)局部收敛性(接近极小点时)收敛阶
梯度下降(GD)线性收敛(Linear)线性收敛(依赖强凸性)线性收敛O(\alpha^k)0<\alpha<1
共轭梯度(CG)超线性收敛(Superlinear)有限步收敛(n 步精确解)超线性收敛(若保持共轭性)超线性
牛顿法局部二次收敛(Quadratic)二次收敛(1-2 步可达解)二次收敛O(\|\mathbf{x}_k - \mathbf{x}^*\|^2)
拟牛顿法(如 BFGS)超线性收敛(Superlinear)超线性收敛(接近牛顿法速度)超线性收敛(接近二次收敛)超线性(接近二次)

二、核心特性与收敛机制

1. 梯度下降(GD)
  • 原理:沿负梯度方向迭代,步长\(\eta\)控制更新幅度。
  • 收敛速度
    • 线性收敛:在强凸函数(满足mI \leqslant \nabla^2 f \leqslant MI下,收敛速度为O\left(\frac{1}{k}\right)(当使用精确线搜索)或指数级\(O(\alpha^k)\)(固定步长)。
    • 慢的原因:仅利用一阶导数,忽略曲率信息,易在狭长山谷型函数中震荡或 zig-zag 收敛。
  • 优势:计算简单,内存需求低(仅需梯度),适合大规模问题。
  • 劣势:收敛速度慢,依赖步长调整,对非凸函数易陷入局部极小。
2. 共轭梯度(CG)
  • 原理:针对二次型函数设计,通过构造共轭方向(关于 Hessian 矩阵正交),理论上在n维空间中n步精确收敛。
  • 收敛速度
    • 二次函数:严格n步收敛(有限步算法),无需线搜索。
    • 非二次函数:通过迭代更新共轭方向,表现为超线性收敛(收敛速度快于线性,但慢于二次)。
  • 优势:无需存储 Hessian 矩阵(仅需梯度和历史方向),内存效率高于牛顿法,优于梯度下降。
  • 劣势:依赖函数光滑性,对强非线性函数收敛速度下降,需定期重置方向(如 Fletcher-Reeves 重置)。
3. 牛顿法
  • 原理:利用二阶导数(Hessian 矩阵H),通过求解H\mathbf{d} = -\nabla f得到搜索方向\mathbf{d},实现 “二阶近似”。
  • 收敛速度
    • 局部二次收敛:若初始点足够接近极小点且H正定,误差满足\|\mathbf{x}_{k+1} - \mathbf{x}^*\| = O(\|\mathbf{x}_k - \mathbf{x}^*\|^2),即误差呈平方级下降,迭代次数极少(如 10-20 步可达高精度)。
    • 全局收敛性:若无合适阻尼(如线搜索或信赖域),可能发散(Hessian 非正定或初始点远离极小点)。
  • 优势:理论上最快的局部收敛速度,适合高精度需求的中小规模问题。
  • 劣势:每次迭代需计算O(n^3)的 Hessian 求逆(或分解),内存和计算量巨大,不适合大规模问题n>10^3时难以应用)。
4. 拟牛顿法(如 BFGS、L-BFGS)
  • 原理:通过迭代更新矩阵B_k \approx H(或其逆),避免显式计算 Hessian,降低计算成本。
  • 收敛速度
    • 超线性收敛:在满足强 Wolfe 线搜索条件下,对一般非线性函数收敛速度为超线性(如 BFGS 的收敛阶为O(k^{-q})q>1,接近牛顿法的局部收敛速度,但略慢于二次收敛。
    • 改进版(如 L-BFGS):通过限制内存(仅存储最近m次迭代信息),将内存复杂度从O(n^2)降至O(nm),适合大规模问题(n可达10^5)。
  • 优势:平衡了收敛速度和计算成本,是实际应用中最常用的高阶优化方法之一。
  • 劣势:依赖初始矩阵B_0(通常设为单位矩阵),对强非凸函数可能收敛到鞍点。

三、实际应用场景对比

场景梯度下降(GD)共轭梯度(CG)牛顿法拟牛顿法(BFGS/L-BFGS)
问题规模大规模(n>10^4中等规模(n<10^4小规模(n<10^3))中等 - 大规模(n<10^5
函数类型非凸、低光滑性凸函数、二次型凸函数、光滑凸 / 非凸、中等光滑性
收敛速度需求低精度、快速初值迭代二次型问题首选高精度、局部极小平衡速度与计算成本
内存限制极低(仅梯度)低(仅梯度和方向)高(存储 Hessian)中(BFGS 需O(n^2),L-BFGS 需O(nm)
典型应用深度学习(SGD 变种)稀疏线性系统求解科学计算、优化测试函数机器学习(逻辑回归、SVM)

四、关键结论

  1. 收敛速度排序(从快到慢)

    • 局部收敛:牛顿法(二次收敛)> 拟牛顿法(超线性,接近二次)> 共轭梯度(超线性)> 梯度下降(线性)。
    • 全局收敛(非二次函数):拟牛顿法 ≈ 共轭梯度 > 牛顿法(需良好初始点)> 梯度下降。
  2. 理论与实践的平衡

    • 牛顿法的二次收敛性仅在局部且 Hessian 正定时成立,实际中可能因 Hessian 计算成本高或非正定而受限。
    • 拟牛顿法(如 BFGS)通过近似 Hessian,在保持超线性收敛的同时大幅降低计算量,是多数优化问题的首选。
    • 梯度下降虽慢,但凭借简单性和可扩展性,仍是大规模数据(如深度学习)的基石,常通过加速技巧(如动量、Adam)提升收敛速度。
  3. 函数特性的影响

    • 对于二次型函数,共轭梯度是最优选择(n步精确解),牛顿法仅需 1-2 步迭代。
    • 对于强非线性、非凸函数,拟牛顿法和梯度下降更稳健,牛顿法可能因 Hessian 非正定而失效。

相关文章:

  • SAP 查找JOB进程ID
  • 05、GPIO外设(五):CubeMX配置
  • SQL:聚合函数(Aggregate Functions)
  • Java 接入deepseek(非流式)
  • 基于autoware.1.14与gazebo联合仿真进行激光点云循迹仿真
  • 基于领域知识的A型主动脉夹层综合分割及面向临床的评估|文献速递-深度学习医疗AI最新文献
  • 【学习笔记】文件上传漏洞--黑白盒审计
  • 文章记单词 | 第37篇(六级)
  • 云服务器和物理服务器
  • AI写程序: 多线程网络扫描网段ip工具
  • 内网穿透服务器—FRP
  • 颚式破碎机的设计
  • c# 简单实现将Message的内容保存到txt中,超过100个则清理旧文件
  • Linux:线程的同步与互斥(生产者消费者模型的demo)
  • Function Calling的时序图(含示例)
  • FA-YOLO:基于FMDS与AGMF的高效目标检测算法解析
  • C++指针与内存管理深度解析
  • TDengine Restful 接口API
  • 【机试】高精度
  • Valgrind内存调试工具详解
  • 能上天入海的“鲲龙”毕业了,AG600取得型号合格证
  • 人民日报头版:各地扎实开展学习教育,一体推进学查改
  • 广西柳州23年的蝶变:从“酸雨之城”到“文明之城”
  • 重庆网红景点“莲花茶摊”被市民投诉,官方:采纳意见,整改!
  • 中央刚提级巡视,昆明2人宣告被查
  • 19岁癫痫患者植入脑机接口后,“脑控”玩上了“黑悟空”