A2C 和 stable_baselines3

问题描述 投票:0回答:1

我正在尝试使用 GitHub (https://github.com/nicknochnack/Reinforcement-Learning-for-Trading-Custom-Signals/blob/main/Custom%20Signals.ipynb) 中的代码第 3 点:

model = A2C('MlpLstmPolicy', env, verbose=1)
model.learn(total_timesteps=1000000)

我在另一条线的稳定基线方面遇到了很多问题,所以我尝试使用稳定基线3 但我认为 MlpLstmPolicy 不起作用。 ChatGPT 说要改变这个:


from stable_baselines3 import PPO
from stable_baselines3.common.vec_env import DummyVecEnv
from stable_baselines3.common.env_util import make_vec_env
from stable_baselines3.common.callbacks import CheckpointCallback

env = make_vec_env('env', n_envs=4, seed=0)
env = DummyVecEnv([lambda: env])

model = PPO('MlpLstmPolicy', env, verbose=1)

但我收到此错误:错误:尝试查找格式错误的环境 ID:b'env'。 (目前所有的 ID 必须是 ^(?:[\w:-]+/)?([\w:.-]+)-v(\d+)$ 的形式。)

我看到在第一个选项“model =”中使用了 env。所以这就是我所做的。

我用代码中发现的所有其他内容更改了“env”,但没有任何效果。

任何帮助将不胜感激。

tensorflow reinforcement-learning openai-gym stable-baselines
1个回答
0
投票

sb3 还不直接支持经常性政策,但您可以使用 sb3-contrib 中的

RecurrentPPO
,我想这就是您想要的。

© www.soinside.com 2019 - 2024. All rights reserved.