3. Stochastic GD (SGD)
隨機梯度下降算法(SGD)是mini-batch GD的一個特殊應用。SGD等價於b=1的mini-batch GD。即,每個mini-batch中只有一個訓練樣本。
4. Online GD
隨着互聯網行業的蓬勃發展,數據變得越來越“廉價”。很多應用有實時的,不間斷的訓練數據產生。在線學習(Online Learning)算法就是充分利用實時數據的一個訓練算法。
Online GD於mini-batch GD/SGD的區別在於,所有訓練數據只用一次,然後丟棄。這樣做的好處是可以最終模型的變化趨勢。比如搜索廣告的點擊率(CTR)預估模型,網民的點擊行爲會隨着時間改變。用batch算法(每天更新一次)一方面耗時較長(需要對所有歷史數據重新訓練);另一方面,無法及時反饋用戶的點擊行爲遷移。而Online Leaning的算法可以實時的最終網民的點擊行爲遷移。
Ref:
1. http://en.wikipedia.org/wiki/Gradient_descent