为什么添加基线不会影响策略梯度?

人工智能 政策梯度 证明 开放式 加强
2021-10-20 06:07:00

OpenAI 的 Spinning Up中,他们证明了添加基线的事实b(st)在策略梯度中并不会通过说这是

EGLP 引理的直接后果

但是,我没有设法用这个引理证明这一点。有人可以帮我吗?

证明是微不足道的b是一个常数,但无论何时我都很难推导出它b是当前状态的函数s因为你不能把它从积分中取出。

1个回答

策略梯度表明

J(θ)sμ(s)aqπ(s,a)π(a|s;θ)
其中导数取参数θ.

现在,如果我们说合并一个基线,我们得到

J(θ)sμ(s)a(qπ(s,a)b(s))π(a|s;θ)
这根本不会影响渐变。要看到这一点,请注意
ab(s)π(a|s;θ)=b(s)aπ(a|s;θ)=b(s)1=0;
我所做的就是在总和中扩展括号内的项a从第二个方程,并表明新项等于 0 - 因此梯度不变。

如果您真的想确认这一点,那么您可以完全写下第二个方程的展开式,并使用我在第三个方程中向您展示的技巧来查看展开后的第二个方程等于第一个方程。

我想作者提到的 EGLP 引理将在对随机变量的支持进行求和(/积分)时使用等于 0 的概率分布的导数的类似技巧,这就是我在这里使用的aπ(a|s;θ)=1.