我试图了解梯度下降,随机梯度下降和小批梯度下降的工作.
在梯度下降的情况下,在每一步计算整个数据集的梯度。所以我想这就像多个任务,在每个任务中,从数据集中查看一个项。最终选择最佳任务的结果。
当随机梯度下降时,在每一步得到一个新的随机样本。因此,与上面的多个任务示例不同,只有一个任务,并且在任务的每一步都会选择一个随机样本。我假设所选的新随机样本必须位于比现有样本低的位置?
在小型批处理梯度下降的情况下,我设想这就像一个单一的主要任务,其中-在每一步中导致多个任务,其中-在每个任务中将执行梯度损失计算和一个平均值将采取。然后,同样的过程将重复在下一个步骤。
发布于 2022-07-30 18:23:05
你的问题与神经网络的学习方式密切相关。神经网络的学习是迭代的。在每一次迭代中,都有前过和后过。
向前通过:你选择一批你的观察,然后你把它发送到神经网络。通过向前推进,你的神经网络将输出预测,并将其与观察的标签(这里是图片上的动物)进行比较。然后,神经网络将计算成本函数,这意味着模型对您所通过的观测所产生的平均误差。
反向传递:您将从末尾开始更新不同的参数,然后返回到第一个参数。加权将更新与您所犯的平均错误。一旦完成了反向传递,您就可以开始一个新的迭代,这意味着向前传递+反向传递。

全批次学习与小批量学习的
整批学习:正如您所说,数据集的所有观察结果都在批处理中使用。但是,也有同时处理的。有一个独特的向前传球和反向传球。它是用矢量化的方法实现的。成本函数作为对所有观测结果的误差的平均值计算。
小批量学习:同时你只会使用你观察到的一个子集(比如说"K")。一旦运行了向前和向后的传球,您将选择另一个大小相同的子集(不可能替换)并进行新的迭代。一旦你的模型看到了你的批次的所有观察结果,你就达到了一个“时代”。然后,你可以通过洗牌你的观察来开创一个新的时代,并创建新的批次。它又称随机梯度下降。
它将取决于数据集的大小。在较大批处理的情况下,梯度下降是鲁棒的,但正向后过的计算速度较慢。对于较小的批处理大小,梯度下降的鲁棒性较低,但每次迭代的计算速度都更快。
https://datascience.stackexchange.com/questions/113073
复制相似问题