gpt4 book ai didi

neural-network - 具有神经网络的情景半梯度 Sarsa

转载 作者:行者123 更新时间:2023-12-01 03:20:50 25 4
gpt4 key购买 nike

在尝试将 Episodic Semi-gradient Sarsa with 神经网络实现为逼近器时,我想知道如何根据当前学习到的网络权重选择最佳 Action 。如果 Action 空间是离散的,我可以计算当前状态下不同 Action 的估计值,然后选择给出最大值的 Action 。但这似乎不是解决问题的最佳方式。此外,如果 Action 空间可以是连续的(例如自动驾驶汽车的加速),则它不起作用。

所以,基本上我想知道如何解决这个 Sutton 伪代码中的第 10 行 Choose A' as a function of q(S', , w):
enter image description here

这些问题通常如何解决?可以推荐一个使用 Keras 的算法的好例子吗?

编辑:使用网络作为逼近器时是否需要修改伪代码?所以,我只是简单地最小化网络预测的 MSE 和奖励 R 例如?

最佳答案

I wondered how I choose the optimal action based on the currently learned weights of the network



您有三个基本选择:
  • 多次运行网络,对 A' 的每个可能值运行一次,以与您正在考虑的 S' 值匹配。取最大值作为预测的最优 Action (概率为 1-ε,否则随机选择用于 SARSA 中通常使用的 ε-greedy 策略)
  • 设计网络以一次估计所有 Action 值 - 即具有 |A(s)|输出(可能被填充以覆盖您需要过滤掉的“不可能”操作)。这将稍微改变梯度计算,应该将零梯度应用于最后一层非事件输出(即任何与 (S,A) 的 A 不匹配的东西)。同样,只需将最大有效输出作为估计的最佳 Action 。这比多次运行网络更有效。这也是最近的 DQN Atari 博弈机器人和 AlphaGo 的策略网络所使用的方法。
  • 使用 policy-gradient method ,它通过使用样本来估计梯度来改进策略估计器。您可以查看 Sutton and Barto's second edition of Reinforcement Learning: An Introduction 的第 13 章了解更多详细信息。当有大量可能的 Action 并且可以处理连续 Action 空间时,策略梯度方法变得有吸引力(通过估计最优策略的分布函数 - 例如选择正态分布的均值和标准差,您可以从中采样采取你的行动)。您还可以将策略梯度与 actor-critic methods 中的状态值方法相结合,这可以成为比纯策略梯度方法更有效的学习器。

  • 请注意,如果您的 Action 空间是连续的,则不必使用策略梯度方法,您只需量化 Action 即可。此外,在某些情况下,即使 Action 理论上是连续的,您可能会发现最优策略只涉及使用极值(经典的 mountain car example 属于这一类,唯一有用的 Action 是最大加速度和最大向后加速度)

    Do I need to modify the pseudo-code when using a network as the approximator? So, that I simply minimize the MSE of the prediction of the network and the reward R for example?



    不。伪代码中没有单独的损失函数,例如您在监督学习中会看到的 MSE。误差项(通常称为TD误差)由方括号中的部分给出,并达到类似的效果。从字面上看,术语 ∇q(S,A, w )(抱歉丢帽子,SO 上没有 LaTex)意味着估计器本身的梯度 - 不是任何损失函数的梯度。

    关于neural-network - 具有神经网络的情景半梯度 Sarsa,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45377404/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com