先搞清楚梯度下降是什么
在解释这三种方法之前,我们先明白梯度下降(Gradient Descent)是个啥。简单来说,它是一种工具,帮助我们找到一个函数的最小值。在机器学习里,这个函数通常是损失函数(Loss Function),用来衡量模型预测的结果和真实答案之间的差距有多大。我们的目标是通过调整模型的参数(比如权重),让这个差距(也就是损失函数的值)变得越小越好。
想象你在爬山,想找到山谷的最低点。梯度下降就像是你根据坡度的方向,一步步往下走,直到走到最低的地方。坡度(梯度)告诉你该往哪个方向走,每一步的大小决定了你走得多快。而批量梯度下降、随机梯度下降和mini-batch梯度下降,只是决定你“看多少信息”来判断下一步走法的方式不同。
1. 批量梯度下降(Batch Gradient Descent)
原理
- 每次更新参数时,用全部训练数据来计算损失函数的梯度。
- 算出这个梯度后,根据它一次性调整模型的参数。