Reinforcement Learning - An Introduction强化学习读书笔记 Ch11.1-Ch11.5

11.1 半梯度方法

在第七章中描述了一系列表格型情况下的离线策略算法,转换成半梯度的形式可以简单地使用近似价值函数及其梯度,把对于一个数组的更新替代为对于一个权值向量的更新。
单步的状态价值函数算法就是半梯度的离线策略TD(0)的更新方程,其中主要添加了一个新的参数:
在这里插入图片描述
这个新的参数的确切定义取决于这个问题是分幕式的、带折扣的,还是持续性的、无折扣的。
在这里插入图片描述
其中前者为分幕式带折扣的,后者是持续无折扣的。
而单步半梯度期望Sarsa算法的更新方程为:
在这里插入图片描述
上述算法没有使用重要度采样,在表格型问题中这样做比较有效,因为只有一个采样动作,学习过程中不需要考虑其他动作,但是在函数逼近中,则需要给不同二元组以不同的权重。
那么采用重要度采样的单步半梯度期望Sarsa对应的更新即是:
在这里插入图片描述
而第七章中提出的n步树回溯算法的半梯度版本为(参数定义同期望Sarsa):
在这里插入图片描述

11.2 离线策略发散的例子

使用函数逼近的离线策略学习的有一挑战:更新的分布与在线策略分布并不一致,本小节介绍一些反例。
考虑最简单的两个状态的结果,他们的估计价值函数形式为w和2w,第一个状态只能确定性地转移到第二个状态,收益为0,在两个状态之间转移的TD误差的形式就是:
在这里插入图片描述
并且离线策略半梯度的TD(0)的更新为:
在这里插入图片描述
这里的重要度采样为1,因为只有一个动作可选,在更新中,当折扣因子大于0.5的时候,参数更新的系数就会大于1,从而使得参数迭代趋向无穷大,而步长并不影响发散或收敛的事实,只影响发散或收敛的速度。
这个例子的关键在于一个转移重复发生,但是没有在其他转移上获得抑制这个变化的更新,是因为在离线策略中,行动策略可能会选择目标策略永远不会选择的转移,这些转移将不会被采纳,但是在在线学习中会被采纳,并且这样使得w越来越大的转移最终一定会有转移是使得w变小的,对未来总收益的考量会使得系统受到制约,但是在离线策略中,选择了目标策略永远不会做出的动作之后,就会更新之后丢弃这个转移,使得不再有可能变小,而趋向无穷。
一个更完整的例子是Baird反例,考虑七个状态和两个动作:
在这里插入图片描述
行动策略b以6/7和1/7的概率选择点划线和实现动作,一次对于所有状态而言下一个状态的分布是均匀的,而目标策略总是选择实线动作,收益对于所有的转移而言都是0,折扣率为0.99。
由于收益为0,所以每个状态的真实价值都是0,只要得出的权重w为0即可以准确近似,但是由于权值向量的个数(8)是大于非终结状态数量(7)的,所以可以得到许多个解。而将半梯度TD(0)方法应用到这个问题上,不稳定性就会发生,哪怕使用DP目标(基于期望)这种没有随机性和异步性的经典更新中,系统也还是不稳定。
但是只要更新DP更新的分布,也就是将均匀分布换成线上策略的分布,即可以完整收敛。
这个简单的例子表明,如果没有按照线上策略分布来进行更新,即使是最简单的自举法和函数逼近法的组合也可能是不稳定的。
进而,及时每一步都找到了最小二乘解,线性函数逼近可能还是不适合于DP,在w和2w的例子上扩展一个终止状态可以得到:
在这里插入图片描述
所有转移的收益均为0,在每一步都最小化估计值和单步期望回报的均方误差,可以得到:
在这里插入图片描述
可以发现一定条件下还是会发散。
在解决不稳定性时,可以考虑使用平均器,包括最近邻方法和局部加权回归,但是不包括瓦片编码和ANN等。

11.3 致命三要素

事实上使用的方法如果同时满足三个要素,就会有不稳定和发散的危险,这三个致命要素就是:

  1. 函数逼近。
  2. 自举法。
  3. 离线策略训练。
    且需要注意的是,不稳定性和发散并不是由策略控制或者广义策略迭代造成的,在比控制更简单的预测问题中,只要包含致命三要素,就会出现不稳定性。同时这种风险也不是由学习或者环境的不稳定性造成的,其在环境完全已知的规划中也会出现。
    而致命三要素之间只要有一个要素不满足就可以避免不稳定性的出现。
    其中函数逼近是最需要的,需要处理大规模问题且需要足够的表达能力,就至少需要一个带大量特征和参数的线性函数逼近器。
    而针对自举法,放弃自举法付出的代价是计算和数据上的效率,有时可能会不使用自举法而使用更长的n步更新,但是自举法对于效率的提高还是很可观的。
    而针对离线学习,将行动策略和目标策略分开来,是有用的但是不是必要的。但是在部分的多目标策略问题中,使用一个行动策略不可能同时等同于所有目标策略,在这些问题上,离线学习还是很必要的。

11.4 线性价值函数的几何性质

在考虑一个状态向量的时候,任何价值函数v都对应于一个价值向量,代表着该函数作用于每个状态上的价值取值,状态向量和价值向量的维度是一致的。
考虑只有三个状态和两个参数的问题,在线性函数逼近的情况下,因为只有两个参数,对应的子空间是一个平面。而对应的固定策略 π \pi π的价值函数的阶数很高,对其的近似函数也会不在这个平面内,而在思考究竟哪个近似函数距离其真实价值函数更近时,就要度量两个价值函数之间的距离,在这里传统的欧几里德范数是不适用的,因为状态并不能平均看待,有些状态是更重要的,因此可以使用策略分布来加权定义价值函数之间的距离:
在这里插入图片描述
而对于任何价值函数,在可表示的函数的子空间内寻找其最近邻的函数,其实就是投影操作,那么可以定义一个投影算子来找到:
在这里插入图片描述
因此这个离真实加之函数最近的可表示的价值函数其实就是它的投影,具体的平面、高维函数、投影可以从下图中更好地理解:
在这里插入图片描述
在衡量近似函数与满足贝尔曼最优函数之间的距离时,可以考虑贝尔曼最优方程的形式,定义贝尔曼误差:
在这里插入图片描述
可以从中看到,贝尔曼误差其实就是TD误差的期望。
而在所有状态下的贝尔曼误差,组成向量贝尔曼误差向量,用BE表示,通常不能把BE减小到0。但是对于线性函数逼近,有一个唯一的最小化BE的w,这个点在子空间中通常不同于最小化VE的点。
在这里插入图片描述
再回看这个图,其中包含了贝尔曼算子,也就是:
在这里插入图片描述
而作用贝尔曼算子的时候,通常会产生一个不在子空间的价值函数,如图中的灰色箭头,最终会收敛到贝尔曼不动点,但是在更新中,价值函数必须被投影回可表示的空间,之后再在子空间内进行下一次迭代,又会不在子空间中而又被投影回子空间,正如下方的灰色箭头和线。这些箭头可以表示一个带近似的类似于DP的过程。
在这种情况下,我们真正关心的是贝尔曼误差向量在子空间内的投影,这就是投影贝尔曼误差向量,用PBE表示,其定义为:
在这里插入图片描述
使用线性函数逼近,在子空间内,总有一个点会使得PBE为0,这是一个TD不动点,正如9.4节中介绍过的,但是这个点在半梯度的TD方法和离线学习中并不总是稳定的,并且这个价值函数也不同于那些优化VE或者BE得到的价值函数。

11.5 对贝尔曼误差做梯度下降

在一般的函数逼近中,可以考虑最小化均方TD误差:
在这里插入图片描述
该方法可以用于SGD,最后给出的是期望值的形式,这个期望可以从经验中采样得到(经验是从行动策略b中得到的),可以得到基于这种期望值的一个样本的单步更新:
在这里插入图片描述
该方法比半梯度TD算法多出了额外的最后一项,这一项补全了这个梯度,该方法成为朴素残差梯度算法,该方法能收敛,但是不一定收敛到对应的全局最小点。
而考虑一个三个状态的MRP:
在这里插入图片描述
该幕从A状态开始孙吉分裂,一半时间走向状态B最终得到收益1,一半时间走向状态C最终得到收益0,将折扣设为1,使用在线学习因此采样率也为1,三个状态的真实值分别是0.5、1、0,之前提到的所有方法都能收敛到真实值。
但是朴素残差梯度算法在该问题中,B收敛到了3/4,C收敛到了1/4,这样可以使得四步转移的TD误差都是1/4,这样总的TDE就是1/16。但是真实值对应的BC到终止的TD误差为0,A到BC的TD误差都是1/2,这样对应的TDE就是1/8。因此真实价值并不对应最小的TDE。
最小化TDE是朴素的,通过减小所有的TD误差,更倾向于得到时序上平滑的结果,而不是准确的预测。
对于一个状态而言,贝尔曼误差就是TD误差的期望,因此对TD误差的期望进行推导:
在这里插入图片描述
该公式包含了下一个状态,在两个相乘的期望中出现,为了得到这个乘积的无偏样本,需要下一个状态的两个独立样本,但是通常在与环境的交互过程中只能得到一个,可以一个使用期望值而一个使用采样值。
然后残差梯度方法的收敛性仍有三个缺陷:

  1. 速度慢,远远慢于半梯度方法,可以尝试与快速半梯度方法初始化合并。
  2. 最小化BE可能也会导致找到错误的价值函数(A预先分裂)。
  3. 贝尔曼误差是不可学习的。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值