李宏毅教授A3C课程笔记总结

A3C (Asynchronous Advantage Actor-Critic)

远优于DQN

 

Alpha go用到了model-based的方法

李宏毅教授A3C课程笔记总结

 

On-policy:学习的agent和与环境互动的agent是同一个

Off-policy:学习的agent和与环境互动的agent是不同的

注意学习的agent和交互的agent之间的差别不能太大

 

Actor:是一个神经网络,输入是观察observation,输出是action

可以为连续值

李宏毅教授A3C课程笔记总结

 

衡量actor:expected total reward期望回报累加值(因为即使是相同的actor,每次得到的回报还是不同:①面对同样的画面,随机策略会导致结果不同;②即使是确定性策略,环境也有可能是随机的)

 

Actor的梯度更新:提升正向回报的几率,降低负值回报的几率,这里的回报值采用的是累计回报值而不是即时回报

李宏毅教授A3C课程笔记总结

 

Critic:评估actor π的好坏

MC方法/TD方法

MC比TD的方差更大,MC是无偏估计,TD是有偏估计

示例:

李宏毅教授A3C课程笔记总结

如果环境有马尔科夫特性,即为不受前一状态影响,那么TD比较准确,否则MC比较准确

 

Advantage actor-critic:

将等到回合结束后累计的回报值改为用critic进行估计

李宏毅教授A3C课程笔记总结

Actor和critic训练技巧:

  • Actor和critic部分网络参数可以共享
  • 输出的熵可以尽量大->输出的分布偏向于平滑而不是集中->actor可以增加探索的机会

李宏毅教授A3C课程笔记总结

 

Asynchronous:

具有共同的参数θ1李宏毅教授A3C课程笔记总结,每个worker都有actor和critic,多个actor和critic的pair在和环境做互动,加速累积经验

 

学习过程:

  • 复制全局参数θ1李宏毅教授A3C课程笔记总结
  • 采样数据,每个worker和环境做交互
  • 计算梯度
  • 更新全局模型θ1+ηΔθ李宏毅教授A3C课程笔记总结

 

Pathwise Derivative Policy Gradient

Critic不止会评价actor的好坏,并给予建议

原始actor-critic缺点:没有采样到的action,那么永远无法探索到这种情况,尤其是在连续空间中

Q-learning:由于已知Q函数的参数,因此可以知道比a要更好的action

李宏毅教授A3C课程笔记总结

对于better的定义:

李宏毅教授A3C课程笔记总结

但其不适用于连续动作的情况,因为要对每个action都做梯度上升

 

使用TD估计Qπ(s,a)李宏毅教授A3C课程笔记总结

若同时使用梯度下降学习两个李宏毅教授A3C课程笔记总结那么结果会非常不稳定,因此固定其中一个李宏毅教授A3C课程笔记总结当作是目标,调整另一个李宏毅教授A3C课程笔记总结,当这个李宏毅教授A3C课程笔记总结学习好以后,再将其参数复制给之前固定住的李宏毅教授A3C课程笔记总结

李宏毅教授A3C课程笔记总结

 

因为李宏毅教授A3C课程笔记总结,所以通常倾向于高估Q值

解决方法:double DQN

在原始Q-learning中,决定采取action和计算Q值都是同一个Q函数

而在double DQN中采用两个Q函数Q和Q’,其中Q决定采用哪个action,Q’用于计算Q值来防止高估的问题

两个Q函数会互相制衡

李宏毅教授A3C课程笔记总结

 

Dueling DQN:在网络最后分为两个部分,一个部分是标量V(s),另一个是A(s,a),两者相加等于Q(s,a)

这种方法通常会由于传统DQN,同时利于可视化

李宏毅教授A3C课程笔记总结

 

Pathwise Derivative Policy Gradient

将actor π的输出作为李宏毅教授A3C课程笔记总结的输入,将其整合为一个大的网络,在训练时先固定李宏毅教授A3C课程笔记总结,再用梯度上升调actor的参数,让整个网络的值上升

李宏毅教授A3C课程笔记总结

与GAN类似,将G和D连接一起,固定D的参数,调G的参数,使得D的值越大越好

 

训练技巧:

  • 加上replay buffer使得训练更加稳定
  • 如果策略是确定性,则需要加入噪声来帮助actor进行探索

 

DDPG

属于Pathwise Derivative Policy Gradient

李宏毅教授A3C课程笔记总结

Target网络更新比较慢会使得训练更加稳定

 

*GAN和AC的对比

(论文启发)

李宏毅教授A3C课程笔记总结