1 minute read

Stochastic Approximation & Stochastic Gradient DescentPermalink

Mean estimationPermalink

  • 考虑随机变量 X

  • 目标是估计 E[X]

  • 假设已经收集了一系列 iid(independent and identical distributed)的样本xiNi=1

  • X 的期望可以由下式近似得到 E[X]ˉx:=1NNi=1xi

如何计算 ˉx

  1. 收集完所有的xi相加取平均值,需要等待

  2. 增量式的方法,对已有的k个数据 wk+1=1kki=1xi 因此 wk=1k1k1i=1xi 可以得到wk+1wk之间的关系 wk+1=wk1k(wkxk)=wk+1k(xkwk)

    推广 wk+1=wkαk(wkxk)=wk+αk(xkwk) 是特殊的随机近似算法、随机梯度下降算法

Robbins-Monro 算法Permalink

随机梯度下降是RM算法的一种特殊情况

RM算法解决的问题是: wk+1=wkak˜g(wk,ηk),k=1,2,3,

  • ˜g(wk,ηk)=g(wk)+ηk
  • ηk表示“噪音”

g(w)是一个黑盒,不知道具体函数,

  • 输入序列wk,输出序列˜g(wk,ηk)

Robbins-Monro TheoremPermalink

在Robbins-Monro算法中,如果有

  • 0<c1wg(w)c2,w
    • 要求梯度一定是要大于零且有上界的
  • k=1ak= and k=1a2k<
    • 要求 ak 是要收敛于零的,但是收敛速度不能太快,保证后加入的采样的权重不会太低
  • $\mathbb{E}[\eta_k \mathcal{H}] = 0and\mathbb{E}[\eta_k^2 \mathcal{H}] < \infty$
    • ηk 的mean等于零,且不要求 ηk高斯噪音

其中 $\mathcal{H}k = { w_k, w{k-1},\dots }w_k$ 依照 probability 1(w.p.1)收敛到根 $w^g(w^) = 0$

为什么Mean estimation是特殊的RM算法Permalink

  1. 考虑函数 g(w)=wE[X] 目标是求解 g(w)=0 的根,就可以得到 E[X]

  2. X的采样,可以得到 ˜g(w,x)=wx 注意到 ˜g(w,η)=wx=wx+E[X]E[X]=(wE[X])+(E[X]x)=g(w)+η

  3. 求解 g(x)=0 的RM算法就为 wk+1=wkαk˜g(wj,ηk)=wkα(wkxk) 即Mean estimation

Dvoretzky‘s Theorem 暂时跳过

Stochastic gradient descent(SGD)Permalink

SGD也是RM算法的一个特殊情况,而Mean estimation又是SGD的一个特殊情况

SGD算法要解决的是下面的优化问题 minwJ(w)=E[f(w,X)]

  • w 是要优化的参数
  • X 是随机变量
  • wX 可以是向量

解法一:gradient descent(GD)Permalink

wk+1=wkαkwE[f(wk,X)]=wkαkE[wf(wk,X)]

解法二:batch gradient descent(BGD)Permalink

没有模型,就使用数据,对随机变量采样,取平均值 E[wf(wk,X)]1nni=1wf(wk,xi) 因此,得到 wk+1=wkαk1nni=1wf(wk,xi)

解法三:stochastic gradient descent(SGD)Permalink

wk+1=wkαkwf(wk,xk)
  • 与GD算法相比,GD中使用的是真实的梯度 E[wf(wk,X)],而SGD中,采用的是随机梯度 wf(wk,xk)

  • 在BGD中,令n=1,即得到SGD