gpt4 book ai didi

recurrent-neural-network - 如何在 PyTorch 中使用 LSTM 进行强化学习?

转载 作者:行者123 更新时间:2023-12-04 17:48:38 36 4
gpt4 key购买 nike

由于观察不能揭示整个状态,我需要用循环神经网络进行强化,以便网络对过去发生的事情有某种内存。为简单起见,假设我们使用 LSTM。

现在,内置的 PyTorch LSTM 要求您为其提供形状为 Time x MiniBatch x Input D 的输入,它输出形状为 Time x MiniBatch x Output D

但是在强化学习中,要知道时间 t+1 的输入,我需要知道时间 t 的输出,因为我在一个环境中做 Action .

那么是否可以使用内置的 PyTorch LSTM 在强化学习环境中进行 BPTT?如果是,我该怎么做?

最佳答案

也许您可以将您的输入序列循环输入到您的 LSTM。像这样的东西:

h, c = Variable(torch.zeros()), Variable(torch.zeros())
for i in range(T):
input = Variable(...)
_, (h, c) = lstm(input, (h,c))

例如,您可以使用 (h,c) 和输入来评估每个时间步长的 Action 。只要您不破坏计算图,您就可以反向传播,因为变量会保留所有历史记录。

关于recurrent-neural-network - 如何在 PyTorch 中使用 LSTM 进行强化学习?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46914292/

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