已知损失函数为:
L=∑j=1n(y^j−(b+∑i=1mwixij))2·············································(1)
n代表样本的个数,
m代表特征的个数。
∙一般的梯度下降(Gradient Descent):
θi=θi−1−η∇L(θi−1)··································································(2)
∙随机梯度下降(Stochastic Gradient Descent):
只取其中一个样本
Lj=(y^j−(b+∑i=1mwixij))2······················································(3)
θi=θi−1−η∇Lj(θi−1)
下图是随机梯度下降法与一般的梯度下降的比较:
优点:
(1)由于不是在全部训练数据上的损失函数,而是在每轮迭代中,随机优化某一条训练数据上的损失函 数,这样每一轮参数的更新速度大大加快。
缺点:
(1)准确度下降。由于即使在目标函数为强凸函数的情况下,SGD仍旧无法做到线性收敛。
(2)可能会收敛到局部最优,由于单个样本并不能代表全体样本的趋势。
(3)不易于并行实现。