关于TD Learning算法的分析

导读:人工智能之机器学习主要有三大类:1)分类;2)回归;3)聚类。今天我们重点探讨一下td learning算法。
td learning时序差分学习结合了动态规划dp和蒙特卡洛mc方法,且兼具两种算法的优点,是强化学习的核心思想。
虽然蒙特卡罗mc方法仅在最终结果已知时才调整其估计值,但td learning时序差分学习调整预测以匹配后,更准确地预测最终结果之前的未来预测。
td learning算法概念: td learning(temporal-difference learning) 时序差分学习指的是一类无模型的强化学习方法,它是从当前价值函数估计的自举过程中学习的。这些方法从环境中取样,如蒙特卡洛方法,并基于当前估计执行更新,如动态规划方法。
td learning算法本质: td learning(temporal-differencelearning)时序差分学习结合了动态规划和蒙特卡洛方法,是强化学习的核心思想。
时序差分不好理解。改为当时差分学习比较形象一些,表示通过当前的差分数据来学习。
蒙特卡洛mc方法是模拟(或者经历)一段序列或情节,在序列或情节结束后,根据序列或情节上各个状态的价值,来估计状态价值。td learning时序差分学习是模拟(或者经历)一段序列或情节,每行动一步(或者几步),根据新状态的价值,然后估计执行前的状态价值。可以认为蒙特卡洛mc方法是最大步数的td learning时序差分学习。
td learning算法描述: 如果可以计算出策略价值(π状态价值vπ(s),或者行动价值qπ(s,a)),就可以优化策略。
在蒙特卡洛方法中,计算策略的价值,需要完成一个情节,通过情节的目标价值gt来计算状态的价值。其公式:
mc公式: v(st)←v(st)+αδt
δt=[gt?v(st)]
这里:
δt – mc误差
α – mc学习步长
td learning公式: v(st)←v(st)+αδt
δt=[rt+1+γv(st+1)?v(st)]
这里:
δt – td learning误差
α – td learning步长
γ – td learning报酬贴现率
td learning时间差分方法的目标为rt+1+γ v(st+1),若v(st+1) 采用真实值,则td learning时间差分方法估计也是无偏估计,然而在试验中v(st+1) 用的也是估计值,因此td learning时间差分方法属于有偏估计。然而,跟蒙特卡罗mc方法相比,td learning时间差分方法只用到了一步随机状态和动作,因此td learning时间差分方法目标的随机性比蒙特卡罗mc方法中的gt 要小,因此其方差也比蒙特卡罗mc方法的方差小。
td learning分类: 1)策略状态价值vπ的时序差分学习方法(单步多步)
2)策略行动价值qπ的on-policy时序差分学习方法: sarsa(单步多步)
3)策略行动价值qπ的off-policy时序差分学习方法: q-learning(单步),double q-learning(单步)
4)策略行动价值qπ的off-policy时序差分学习方法(带importance sampling): sarsa(多步)
5)策略行动价值qπ的off-policy时序差分学习方法(不带importance sampling): tree backup algorithm(多步)
6)策略行动价值qπ的off-policy时序差分学习方法: q(σ)(多步)
td learning算法流程: 1)单步td learning时序差分学习方法:
initializev(s) arbitrarily ?s∈s+
repeat(for each episode):
?initialize s
?repeat (for each step of episode):
?? a←actiongiven by π for s
??take action a, observe r,s′
??v(s)←v(s)+α[r+γv(s′)?v(s)]
?? s←s′
?until s is terminal
2)多步td learning时序差分学习方法:
input:the policy π to be evaluated
initializev(s) arbitrarily ?s∈s
parameters:step size α∈(0,1], a positive integer n
allstore and access operations (for st and rt) can take their index mod n
repeat(for each episode):
?initialize and store s0≠terminal
? t←∞
? fort=0,1,2,?:
?? ift<tt<t, then:
???take an action according to π( ˙|st)
???observe and store the next reward as rt+1 and the next state as st+1
???if st+1 is terminal, then t←t+1
?? τ←t?n+1(τ is the time whose state's estimate is being updated)
?? ifτ≥0τ≥0:
??? g←∑min(τ+n,t)i=τ+1γi?τ?1ri
???if τ+n≤tτ+n≤t then: g←g+γnv(sτ+n)(g(n)τ)
???v(sτ)←v(sτ)+α[g?v(sτ)]
?until τ=t?1
注意:v(s0)是由v(s0),v(s1),…,v(sn)计算所得;v(s1)是由v(s1),v(s1),…,v(sn+1)计算所得。
td learning理论基础 td learning理论基础如下:
1)蒙特卡罗方法
2)动态规划
3)信号系统
td learning算法优点: 1)不需要环境的模型;
2)可以采用在线的、完全增量式的实现方式;
3)不需等到最终的真实结果;
4)不局限于episode task;
5)可以用于连续任务;
6)可以保证收敛到 vπ,收敛速度较快。
td learning算法缺点: 1) 对初始值比较敏感;
2) 并非总是用函数逼近。
td learning算法应用: 从应用角度看,td learning应用领域与应用前景都是非常广阔的,目前主要应用于动态系统、机器人控制及其他需要进行系统控制的领域。
结语: td learning是结合了动态规划dp和蒙特卡洛mc方法,并兼具两种算法的优点,是强化学习的中心。td learning不需要环境的动态模型,直接从经验经历中学习;也不需要等到最终的结果才更新模型,它可以基于其他估计值来更新估计值。输入数据可以刺激模型并且使模型做出反应。反馈不仅从监督学习的学习过程中得到,还从环境中的奖励或惩罚中得到。td learning算法已经被广泛应用于动态系统、机器人控制及其他需要进行系统控制的领域。

受新冠疫情和苹果下调5G手机预期 射频厂商预警5G需求放缓
二维材料于场效晶体管的应用
cd4027中文资料汇总(cd4027引脚图及功能_工作原理及应用电路)
基于MSP430单片机的发控时序检测系统电路设计
连网汽车的渗透率逐渐上升 安全为首要考量
关于TD Learning算法的分析
VR界的一股清流_炬芯VR PAD
成为单片机达人需要的三步
铅蓄电池在充电和修理过程中应注意的安全事项
广西汽车集团携手时习知打造数字化学习平台,加速人才转型
2022年云计算全球市场规模将超过2700亿美元
程序创业项目未来趋势与展望!OMO入口项目有红利
克劳斯突破传统思维,填补单芯片清洗的空白
互锁或非锁或自锁什么区别
芯鼎科技与普诺飞思合作开发Metavision传感器应用方案
新能源汽车产销“半年考”:旺盛需求给配套部件材料带来新商机
MySQL巨坑:永远不要在MySQL中使用UTF-8!!
特斯拉正在柏林建造超级工厂
LLC变压器设计需特别注意的4方面问题
高通发起价格战,消费市场低迷持续挑战