随机近似理论(Stochastic Approximation)
1 平均近似(Mean Estimation)
与 MC 的方法相同,对于独立同分布随机变量的期望,用采样值的平均值去近似。但是平均值的计算方法不再是所有样本相加后再求平均,而是对每一个采样都对这个近似值进行更新。
MC 的方法:E(X)≈N1i=1∑Nxi
ME 的方法:wk+1=wk−k1(wk−xk),k→∞
2 Robbin Monro Algorithm
这是随机近似理论的一种算法,在不知道方程g(w)形式的情况下,求解出g(w)=0的根。
核心:wk+1=wk−αkg~(wk,ηk),k→∞
条件:1、0<c1≤∇wg(w)≤c2,该函数是单调递增的。
2、k∑αk→∞,k∑αk2<∞
3、E(ηk∣Hk)=0,E(ηk2∣Hk)<∞
其中第二项条件保证了α不会以很快的速度收敛到0,同时一定会收敛到0。
2.1 Mean Estimation 是 RM 算法的特殊情况
g(w) = w - E(X)\
\
w_{k+1} = w_k - \alpha_k \tilde{g}(w_k,\eta_k) = w_k- \alpha_k (w_k-x_k)
最后一项当αk=k1就变成了 mean estimation。
3 随机梯度下降(Stochastic Gradient Descent)
RM 算法解决的是求根问题,而 SGD 解决优化问题,但本质是相通的。
问题:minJ(w)=E[f(w,X)](X是随机变量)或者minJ(w)=n1i=0∑nf(w,xi)(xi是序列{xi}i=1n的抽样,而且{xi}i=1n符合均匀分布)
核心:wk+1=wk−αk∇wkf(wk,xi)
条件:1、0<c1≤∇w2f(w,X)≤c2,该函数是单调递增的。
2、k∑αk→∞,k∑αk2<∞
3、{xk}k=1∞is iid.
3.1 SGD 与 RM 算法互通
minJ(w)=E[f(w,X)]可以转换成g(w)=E[∇wf(w,X)]=0
g~(w,η)=∇wf(w,x)=E[∇wf(w,X)]+(∇wf(w,x)−E[∇wf(w,X)])
wk+1=wk−αkg~(w,η)=wk−αk∇wkf(wk,xk),x是随机变量X的一次采样。
当f(w,x)=21∥w−x∥2,就SGD变成了wk+1=wk−αk(wk−xk)
3.2 小批量梯度下降、随机梯度下降、批量梯度下降(MBGD、SGD、BGD)
MBGD:wk+1=wk−αkm1∑m∇wkf(wk,xi)(在总共n个样本中再次随机采样m个)
SGD:wk+1=wk−αk∇wkf(wk,xi)(在总共n个样本中再次随机采样1个)
BGD:wk+1=wk−αkn1∑n∇wkf(wk,xi)(总共n个样本中全部采用)