39、优化器:梯度下降算法详解

梯度下降算法详解与优化

优化器:梯度下降算法详解

1. 梯度下降算法概述

在机器学习中,梯度下降是一种常用的优化算法,用于最小化损失函数。不同的梯度下降算法在更新权重的方式和效率上有所不同,下面将详细介绍几种常见的梯度下降算法。

1.1 批量梯度下降(Batch Gradient Descent)

批量梯度下降是一种离线算法,它在每个 epoch 中使用整个训练数据集来更新权重。这意味着我们必须保留所有样本,并在每个 epoch 中反复遍历它们。例如,在一个有 300 个样本的数据集上,批量梯度下降在每个 epoch 结束后更新一次权重。然而,这种方法可能需要较多的 epoch 才能收敛,如图所示,可能需要大约 20,000 个 epoch 才能使误差接近 0。

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

随机梯度下降则走向了另一个极端,它在每个样本之后更新权重。由于样本是以随机顺序呈现给网络的,所以我们无法预测权重从一个样本到下一个样本的变化情况。在一个有 300 个样本的数据集上,每个 epoch 需要更新 300 次权重。这会导致误差在小范围内剧烈波动,但从 epoch 到 epoch 的大尺度上仍能看到明显的变化。

随机梯度下降的优点是效率较高,通常在较少的 epoch 内就能使误差接近 0,例如在大约 400 个 epoch 内。然而,它也存在一些问题,如结果具有较大的噪声,可能会导致系统在寻找最小值时跳过较深的局部最小值,并且难以判断系统何时开始过拟合。

1.3 小批量梯度下降(Mini-Batch Gradient Descent)

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值