1、时间差分方法简介
强化学习中最核心也是最新奇的想法
混合DP和MC思想:
与MC类似,TD也从历史经验中学习;与DP类似使用后继状态的值函数更新当前状态的值函数
蒙特卡洛只是适用于片断性任务
属于无模型方法
未知P,R,需要交互,样本备份,需要充分的探索
同时利用采样和贝尔曼方程
可以从不完整的片段中学习(通过自举法)
可同时应用于片段性任务和连续性任务
通过估计来更新估计
自举法:通过对样本进行重采样得到的估计总体的方法
样本是总体进行采样,对样本进行采样得到重采样
不用自举法:样本-> 总体
使用自举法:重采样样本-> 样本 (重采样多次可以估计分布) 样本 -> 总体
强化学习中的自举法:利用一个估计去更新另一个估计
2、时间差分评价
时间差分策略评价算法
时间差分策略评价:
时间差分策略评价算法:
策略评价算法对比-TD和DP
DP备份:全宽备份
TD备份:
利用采样进行估计
策略评价算法对比-TD和MC
MC备份:采样终止点为止
例子:
离开办公室预计回家需要30min;开到车,下雨啦调整估计,需要40min;下高速估计到家需要15min,总估30min;蹦到卡车,在卡车后面,再次估计需要40min,40min过去还在路上,估计还需要3min
蒙特卡洛:更新状态的预估,真正到家需要43min
TD和MC 的优缺点:
TD算法在知道结果之前学习:
TD算法在每一步之后都能在线学习
MC算法必须等待回报值得到之后才能学习
TD算法即便没有最终结果也能学习
TD算法能够从不完整序列中学习
MC算法仅仅能够从完整序列中学习
TD算法适用于连续性任务和片段性任务
MC算法仅仅适用于片段性任务
TD算法有多个驱动力:
MC算法只有奖励值作为更新的驱动力
TD算法有奖励值和状态转移作为更新的驱动力
偏差和方差权衡
在监督学习中,偏差和方差有另外的理解--欠拟合和过拟合
偏差大(欠拟合):预测值和样本之间的差
方差大 (过拟合):样本值之间的方差,学出的模型适用性差
方差大意味着样本的置信度较差
不同的机器学习方法会在两者之间做权衡(trade-off)
RL中的偏差和方差权衡
TD和MC对比:
MC高方差,零偏差
收敛性较好(采用函数逼近),对初始值不太敏感,简单,容易理解和使用,随着样本数量的增加,方差逐渐减小,趋于0
TD低方差,和一些偏差
通常比MC效率更高,表格下TD(0)收敛到V(s)(函数逼近时不一定),对初始值更加敏感,随着样本数量的增加,偏差逐渐减少,趋近于0
批(batch)MC和TD
批MC指采样一部分样本
例子:
确定性等价估计
MC收敛到最小均方误差的解,是对样本回报值的最佳拟合
在上述例子中,V(A) = 0
TD(0)收敛到最大似然马尔可夫模型中的解,是对马尔科夫链的最佳拟合,假设数据是来自P,R
在例子中,V(A) = 0 + V(B) = 0.75
等价于内在动态过程是确定性的估计
TD利用马尔可夫性,一般来说TD在马尔可夫环境中更有效;MC没有利用马尔科夫性,一般对非马尔科夫环境更有效
其它比较维度
自举和采样:
自举:使用随机变量的估计去更新(后继状态计算当前状态)MC没有自举,DP和TD都有自举
采样:通过样本估计期望 MC和TD采样,DP不采样
从备份的角度分析区别:
DP和TD都是单不更新,所以是浅备份;TD和MC 采取采样的方式进行估计,所以是样本备份
3、时间差分优化
TD中的策略迭代:
广义策略迭代:
无模型得到策略评价比较难,不知道状态转移,所以采用Q函数;策略提升需要考虑到探索,必须得到有效的探索,使用带探索的提升
TD优化相比MC有几点好处:低方差:样本数据有限更新数据效率比较高;在线更新(online),每走一步都更新,MC数据离线更新,需要一个路径走完;不完整序列中学习,连续型任务
在策略策略优化:
SARSA算法:
做一次策略评价,做一次策略提升
在每个时间步骤(值迭代)
为什么是在策略的?
Sarsa收敛性:
定理:
GLIE是无限探索下的极限贪婪,保证充分他所,策略最终收敛到贪婪的策略,逐渐推荐为最优策略
Robbins-Monro保证不长足够大,足以克服任意的初始值,步长足够小,最终收敛(常量不长不满足)
期望Sarsa:
离策略TD评价:
对Q函数的离策略学习:
Q-学习:
Q学习优化算法
Q学习优化算法会收敛到最优的状态动作值函数
Q学习优化算法:
DP和TD之间的关系: