Способ, которым вы сохранили модель, верен. Обучение не является монотонным процессом: оно может также показать гораздо худшие результаты после дальнейшего обучения.
Что вы можете сделать, прежде всего, это записать журналы прогресса:
model = PPO2(MlpPolicy, envs, tensorboard_log="./logs/progress_tensorboard/")
Чтобы увидеть журнал, запустите в терминале:
tensorboard --port 6004 --logdir ./logs/progress_tensorboard/
он даст вам ссылку на доску, которую вы затем сможете открыть в браузере (например, http://pc0259: 6004 / )
Во-вторых, вы можете делать снимки модели каждые X шагов:
from stable_baselines.common.callbacks import CheckpointCallback
checkpoint_callback = CheckpointCallback(save_freq=1e4, save_path='./model_checkpoints/')
model.learn(total_timesteps=total_timesteps, callback=[callback, checkpoint_callback])
Комбинируя ее с журналом, вы можете подобрать модель, которая показала наилучшие результаты!