随机梯度下降

2022-03-10 14:47:21 浏览数 (1)

1. 简介

梯度下降法即沿着训练集的梯度方向下降。随机梯度下降(stochastic gradient descent:SGD)按照数据生成分布抽取 m 个小批量(独立同分布的)样本,通过计算它们的梯度均值,从而得到梯度的无偏估计;然后随机梯度下降算法沿着随机挑选的小批量数据的梯度下降方向,能够很大程度加速梯度下降的过程。

2. 思路

2.1 梯度下降

t 次迭代时:

begin{array}{c} boldsymbol{W}_t = boldsymbol{W}_{t-1} - eta frac{partial L}{partial boldsymbol{W}_{t-1}} end{array}

其中,boldsymbol{W} 为需要更新的参数,L 为损失函数,eta 为学习率。

2.2 伪代码

代码语言:javascript复制
Require: 学习率 e
Require: 初始参数 o
    while 停止准则未满足 do
        从训练集中采集包含 m 个样本的小批量 {x1,...,xm},对应的目标为 {y1,...,ym}
        计算梯度估计: g = 
        应用更新:o = o - eg
    end while

0 人点赞