基础公式
来源
累计回报:
在t时刻状态下选择行为所获得累计回报,其中每个R都是个随机变量。
状态价值函数:
状态s下的累计回报是多维随机变量,服从pi分布,因此使用期望累计回报表示该状态的价值。
其贝尔曼方程为:
状态-行为价值函数:
状态行为价值函数相比状态价值函数其区别在于行为已经选定。
其贝尔曼方程为:
状态价值与状态-行为价值联系:
状态-行为价值只是状态价值确定一个行为后的分支。
状态-行为价值选定行为后会得到reward,此外该行为下有多种可能的下一状态。
互相代入后得到:
最优价值函数:
在价值函数更新时目标值构建有所不同:
因为A已经确定,回报因此确定:
Value-Based解决方案:
动态规划方法(DP)使用了上述的推导,使用bootstrapping(利用后继状态的价值估计当前价值),不过动态规划方法需要知道模型的状态转移概率P,因此需要模型可知。
但模型未知时可考虑蒙特卡罗方法(MC)利用经验平均估计期望的值函数。即原本的状态价值是累计回报的期望,可以使用多次实验的累计回报均值来代表。不过因为G是实验的累计回报,需要实验结束(回合更新)后才能学习。
时序差分方法(TD)综合二者优点(单步更新+无模型)。使用R+rV(目标值)代替G。
三种方法的区分可以以下公式分析,对于DP算法,其更新的目标值在公式(3)中,因为状态转移概率P已知,所以可以求解出期望。不过
v
(
s
t
+
1
)
v
(
s
t
+
1
)
v
(
s
t
+
1
)
v(st+1)v(st+1) v(s_{t+1})
v(st+1)v(st+1)v(st+1)J(θ)=−m1∑j=1mQ(si,ai,w),也就是想要在s状态下选择动作a,那么a的Q值就要尽可能的大。再对目标函数采用链式法则求导(对行为a,对参数theta)即可优化actor模型。
其他
几个比较经典的强化学习算法,以及在NLP中的应用
深度强化学习落地方法论
reward设计:
请问:强化学习中对于reward奖励值设定,对算法有什么影响,有没有相关的论文或者资料?
强化学习奖励函数塑形简介(The reward shaping of RL)
强化学习中reward稀疏和无法获取问题解决方案
trick:
强化学习领域有哪些巧妙的想法?
深度强化学习落地方法论(7)—— 训练篇
疑问
强化学习中,对于连续的动作,value-based是无能为力的?
强化学习,DPG是首次处理连续动作空间的论文吗,PG本身还只是输出动作而不是连续动作对吧?
深度强化学习(六):连续动作空间的问题
策略迭代算法包括策略评估和策略改进两个步骤。
策略评估:给定策略,通过数值迭代算法不断计算该策略下的值函数,直至收敛。
策略改进:利用收敛的值函数和贪婪策略得到新的策略;
几个概念:
对于REINFORCE方法,链接
1、如果采用均值方差的方式则为随机性策略,如果对输出分布采样,则为on-policy的方法;如果行为策略和评估策略不同则为off-policy的方法(需要重要性权重)。
2、如果采用输出行为值的方式则为确定性策略,由于确定性策略无法采样,因此需要用off-policy的方法解决探索问题。
3、上述两种方法前一种可以添加AC结构,后一种由于使用到q值网络,必须是AC结构。