深度强化学习(2):价值学习DQN篇

  • 王树森老师《深度强化学习基础》学习笔记

二、价值学习(Value-Based Reinforcement Learning)

Deep Q-Network (DQN)

DQN

  • 用神经网络近似 Q ∗ Q^* Q 函数。

  • 目标:获得最大的奖励总和(打赢游戏)

  • 如果知道 Q ∗ Q^* Q 函数,动作 a a a 就应该做 Q ∗ Q^* Q 打分最高的动作。( Q ∗ Q^* Q 函数告诉每个动作的平均回报,应该选平均回报最高的动作。)

  • 价值学习的基本思路:学习一个函数来近似 Q ∗ Q^* Q 函数。

    • 方法:DQN
    • 使用一个神经网络 Q ( s , a ; w ) Q(s,a;w) Q(s,a;w) 来近似 Q ∗ Q^* Q
    • 使用DQN:
      深度强化学习(2):价值学习DQN篇_第1张图片

Temporal Difference (TD) Learning

  • TD 算法用于训练DQN。

  • TD算法:

    • 比如机器预测从纽约开车去亚特山大的时间,正常更新模型要走完全程,梯度下降。
      深度强化学习(2):价值学习DQN篇_第2张图片

    • TD 算法不需要走完全程,比如走到中间城市华盛顿用了300min(真实),接下来机器预测到亚特山大用600min(预测),(300+600)900min就叫做 TD target,它比一开始预测的1000min更准确,因为其中包含部分真实值。初始预测(1000)和 TD target(900)之间的差值叫做 TD error。TD算法更新模型:
      深度强化学习(2):价值学习DQN篇_第3张图片

TD Learning for DQN

  • 类比 预测出行时间:
    深度强化学习(2):价值学习DQN篇_第4张图片

  • U t U_t Ut 公式中 r r r提出,可以得到 U t = R t + r ∗ U t + 1 U_t = R_t +r*U_{t+1} Ut=Rt+rUt+1
    深度强化学习(2):价值学习DQN篇_第5张图片

  • U t U_t Ut是当前时刻做出的预测, U t + 1 U_{t+1} Ut+1是下一时刻做出的预测。
    深度强化学习(2):价值学习DQN篇_第6张图片

  • 用 TD learning 训练 DQN
    深度强化学习(2):价值学习DQN篇_第7张图片

  • TD Learning 流程:
    深度强化学习(2):价值学习DQN篇_第8张图片

参考与感谢:

  • 王树森老师《强化学习基础》课程:https://www.youtube.com/playlist?list=PLvOO0btloRnsiqM72G4Uid0UWljikENlU
  • 王树森老师GitHub主页:https://github.com/wangshusen?tab=stars
  • 课件:https://github.com/wangshusen/DeepLearning
  • 讲义:https://github.com/wangshusen/DRL/blob/master/Notes_CN/

你可能感兴趣的:(科研,学习,深度学习,机器学习)