BGD(批量梯度下降法)
批梯度下降每次更新使用了所有的訓練數據,最小化損失函數,如果只有一個極小值,那么批梯度下降是考慮了訓練集所有數據,是朝著最小值迭代運動的,但是缺點是如果樣本值很大的話,更新速度會很慢。
SGD(隨機梯度下降法)
隨機梯度下降在每次更新的時候,只考慮了一個樣本點,這樣會大大加快訓練數據,也恰好是批梯度下降的缺點,但是有可能由于訓練數據的噪聲點較多,那么每一次利用噪聲點進行更新的過程中,就不一定是朝著極小值方向更新,但是由于更新多輪,整體方向還是大致朝著極小值方向更新,又提高了速度。
MBGD(min-batch 小批量梯度下降法)
小批量梯度下降法是為了解決批梯度下降法的訓練速度慢,以及隨機梯度下降法的準確性綜合而來,但是這里注意,不同問題的batch是不一樣的。