针对 mean estimation 问题进行研究,因为在 RL 中 无论是 state value 还是 action value 其定义都是一个均值 (means)
Stochastic approximation(SA): SA refers to a broad class of stochastic iterative algorithms soloving root finding or optimization problems.
第一种:直接通过 E[x]≈xˉ:=N1∑i=1Nxi,进行估计,只有当样本全部收集完才能估计.
第二种: 增量式的迭代算法.
假设:
wk+1=k1i=1∑kxi,k=1,2,…
对应的
wk=k−11i=1∑k−1xi,k=2,3,…
那么,wk+1可以由wk推导出来,即
wk+1=k1∑i=1kxi=k1(∑i=1k−1xi+xk)=k1((k−1)wk+xk)=wk−k1(wk−xk)
因此,wk+1=wk−k1(wk−xk)
假设我们需要求解如下方程:
g(w)=0
其中, w∈R 且需要被求解出来,g:R→R 为一个函数方程.
显然,如果对于 g(w) 已知的情况,我们可以通过一些特定的算法进行求解。
如果 g(w) 未知,就需要新的算法进行解决。
RM 算法就可以用来求解当 g(w) 未知时的情况,即函数 g(w) 是一个黑盒,我们只能通过 输入序列: wk, 得到含有噪音的观测值序列: g(wk,ηk)
具体解决如下:
wk+1=wk−akg(wk,ηk),k=1,2,3,…
其中:
- wk 是第 k 次方程根的估计.
- g(wk,ηk)=g(wk)+ηk 是第 k 次的观测值(含噪音).
- ak 是一个 positive coefficient.
Robbins-Monro Theorem
In the Robbins-Monro algorithm, if
0<c1≤▽wg(w)≤c2,for all w; 要求g(w)必须是递增的,确保根是存在且唯一的。
∑k=1∞ak=∞ 且 ∑k=1∞ak2<∞;∑k=1∞ak2=∞ 保证 ak→0,k→0
∑k=1∞ak=∞ 保证 ak→0不要过快.

E[ηk∣Hk]=0 且 E[ηk2∣Hk]<∞; 其中Hk=wk,wk−1,…, 那么 wk converges with probability 1 (w.p.1) to the root w∗ satisfying g(w∗)=0.
ak=k1是满足上面三个条件的. 但实际上我们往往是选择一个非常小的常数。
比如我们要估计某个随机变量X的 E[X]
我们可以设计如下方程:
g(w)≐w − E[X].
那么只要求解 g(w)=0, 我们就可以得到 E[X] 的值。
同样,我们不能直接得到随机变量的值,而是对应的样本 x,sample of X. 即,我们得到的观测值是:
g(w,x)≐w−x
我们可以修改为噪音 η 的形式,
g(w,η)=w−x=w−x+E[X]−E[X]=(w−E[X])+(E[X]−x)≐g(w)+η
因此我们可以通过 RM 算法来进行求解
wk+1=wk−αkg(wk,ηk)=wk−αk(wk−xk)
需要求解一个优化问题:
wargmin J(w)=E[f(w,X)]
其中,
- w 是需要被优化的参数
- X 是一个随机变量
- w 和 X 可以是标量,也可以是向量. 对于函数 f(⋅) 输出为标量.
对于这个问题,我们有以下几种方法:
Method 1: 梯度下降法 (gradient descent, GD)
wk+1=wk−αk▽wE[f(wk,X)]=wk−αkE[▽wf(wk,X)]
但由于 j(w) 是一个期望值,我们很难直接获得.
Method 2: batch gradient descent (BGD) 借用 MC 的思想,我们可以将:
E[▽wf(wk,X)]≈n1i=1∑n▽wf(wk,xi).
因此
wk+1=wk−αkn1i=1∑n▽wf(wk,xi)
但需要大量的 samples 收集完毕才能进行一次迭代.
Method 3: 随机梯度下降(SGD) 考虑能否仅用一次 sample 进行迭代.
wk+1=wk−αk▽wf(wk,xk)
但能否保证其精确度,以及是否可以到最后优化的成果。
我们可以将 均值估计 问题 转化为 一个 优化问题 进行求解:

20240814014058
从 GD 到 SGD:
wk+1=wk−αkE[▽wf(wk,X)]⇓wk+1=wk−αk▽wf(wk,x)
显然我们可以将 ▽wf(wk,x) 视为 E[▽wf(wk,x)] 的一个观测值(含噪声):
▽wf(wk,x)=E[▽wf(wk,x)]+η▽wf(wk,x)−E[▽wf(wk,x)]
因为
▽wf(wk,x)=E[▽wf(wk,x)]
因此,我们需要思考使用 SGD 时wk→w∗ as k→∞ 是否成立。
我们可以将 SGD 视为一个特殊情况下的 RM 算法
SGD的目标是 minimize
J(w)=E[f(w,X)]
而最小值问题,往往可以转化为导数为 0 的情况,
▽wJ(w)=E[▽wf(w,X)]=0
显然,可以参考 RM 算法, 让
g(w)=▽wJ(w)=E[▽wf(w,X)]
从而转换为一个 root-finding 问题.
相应的,对于观测值g(w,η),
g~(w,η)=∇wf(w,x)=g(w)E[∇wf(w,X)]+η∇wf(w,x)−E[∇wf(w,X)].
因此,我们就可以通过 RM 算法进行求解g(w)=0,
wk+1=wk−αkg(wk,ηk)=wk−αk▽wf(wk,xk)
对应收敛性证明

在之前关于使用 SGD 算法的问题描述中,我们是引入了 随机变量 和 期望的情况.
我们可以将这个问题可以转化为一个随机变量的方法,从而引入 SGD 算法.


20240814230747