梯度下降策略简介

本文探讨了梯度下降的三种策略:批次梯度下降、随机梯度下降和小批次梯度下降,分析了各自的优缺点。批次梯度下降在凸函数上保证收敛,但更新慢;随机梯度下降速度快,但梯度精度低;小批次梯度下降是两者的折衷,能更稳定收敛。然而,所有方法在确定学习率、适应性调整和局部极小值方面存在挑战。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

梯度下降训练策略

本文意在干脆地写明白梯度下降训练策略的优缺点

批次梯度下降 (Batch Gradient Descent )

利用全部训练数据集计算损失函数的梯度来执行一次参数更新
θ ⇐ θ − η ⋅ ∇ J ( θ ) \theta \Leftarrow \theta - \eta {\rm{\cdot}}\nabla J(\theta ) θθηJ(θ)

缺点:
  1. 更新较慢
  2. 不能在线更新模型
优点

对凸的损失函数可保证收敛到全局最小值;对非凸的损失函数可收敛到局部最小值

随机梯度下降SGD (Stochastic Gradient Descent)

对每一个训练样本点和标签执行参数更新
θ ⇐ θ − η ⋅ ∇ J ( θ ; x ( i ) ; y ( i ) ) \theta \Leftarrow \theta - \eta {\rm{\cdot}}\nabla J(\theta ;x^{(i)} ;y^{(i)} ) θθηJ(θ;x(i);y(i))

缺点:

梯度精度差,目标函数下降过程出现大幅波动

优点

速度快,可在线学习

小批次梯度下降(Mini-batch Gradient Descent)

每?个训练样本点,进行一次参数更新
θ ⇐ θ − η ⋅ ∇ J ( θ ; x ( i : i + n ) ; y ( i : i + n ) ) \theta \Leftarrow \theta - \eta {\rm{\cdot}}\nabla J(\theta ;x^{(i:i+n)} ;y^{(i:i+n)} ) θθηJ(θ;x(i:i+n);y(i:i+n))

优点
  1. Batch-GD和单样本SGD方法的折衷
  2. 减小了参数更新的方差,可平稳收敛
  3. 速度快,可利用优化的矩阵运算库来高效的计算梯度

存在的问题

  1. 确定合适的学习率比较困难
    – 小的学习率可保证收敛性,但收敛过程很慢
    – 大的学习率会导致损失函数优化过程在最小值附近波动甚至发散

  2. 学习率规划适应性差
    – 在训练过程中,可采用模拟退火等方法调整学习率
    – 或根据损失函数值的下降幅度大小调整学习率
    – 但需要需手工预先设置调制方式和阈值,对训练集的自适应性差

  3. 不同参数更新采用相同的学习率
    – 对于稀疏数据、特征出现频率不一致时,不宜采用相同的学习率

  4. SGD难以跳出局部极小值点和鞍点
    – 神经网络对应的函数具有高度非线性
    – 众多局部极小值点或鞍点
    – 在极小值点或鞍点附近,目标函数值几乎不变,导致梯度近似为零

改进方法 : 梯度下降优化策略简介

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值