stablebaseline3中如何连续训练,并且保存模型

stablebaseline3中如何连续训练,并且保存模型

stablebaseline3是rl 领域很经典的一个学习框架
其方便简单实用
不过如果想要学习并且熟练应用,了解其中的参数设置是非常重要的。
比如, 官方给出的文档只是最简单的使用方法:


env = make_vec_env("MountainCarContinuous-v0", n_envs=4)

model = PPO("MlpPolicy", env, verbose=1, tensorboard_log="./50w/mountain_con_ppo_monitor/")
model.learn(total_timesteps=500000)
model.save("./50w/save/ppo_mountain_car_expert")

这是最简单的一种,使用ppo+mlppolicy进行训练的设置方法,程序在达到50w的timestep之后便会进行模型保存并且储存模型到制定的logidir文件夹

但是如果我们想要在多个timestep都保存模型,那么就应该如下方式:

for i in range(10):
    model.learn(total_timesteps=20000, reset_num_timesteps=False, tb_log_name="PPO")
    model.save(f"{models_dir}/{TIMESTEPS * i}")

这样,使用 reset_num_timesteps这个参数之后,每次训练完不会释放模型参数,并且会继续连续下一个iteration的训练,因此可以达到多次保存结果的目的
在这里插入图片描述
respect!

Guess you like

Origin blog.csdn.net/qq_41725313/article/details/128751270