首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >保存和加载RL模型- DQN算法

保存和加载RL模型- DQN算法
EN

Stack Overflow用户
提问于 2022-10-07 11:56:15
回答 1查看 31关注 0票数 1

我正在使用DQN算法训练一个RL模型。在每次迭代时,我将模型保存如下:

代码语言:javascript
复制
agent = dqn.DQNTrainer(env=CustomEnv,config=config)
for n in range(100):
    result = agent.train()    
    agent.save()

我想在不同的环境中使用经过训练的RL模型。我不知道如何在不同的环境中加载检查点并进行评估。

我尝试加载经过训练的模型(最后一个检查点),但它抛出了一个错误。我所做的工作如下:

代码语言:javascript
复制
agent.restore('./RL_saved/checkpoint-100.tune_metadata')

这让我犯了个错误

代码语言:javascript
复制
unsupported pickle protocol: 5

当我做的时候

代码语言:javascript
复制
agent.restore('./RL_saved/checkpoint-100.tune_metadata')

这让我犯了个错误

代码语言:javascript
复制
Invalid magic number; corrupt file?

我用正确的方式加载模型吗?以及如何将环境传递给加载的模型?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-10-12 13:56:23

我找到了这个问题的答案,以防对任何人有帮助。

首先创建类DQN的一个对象,然后在不使用扩展.tune_metadata的情况下加载检查点。

代码语言:javascript
复制
agent = dqn.DQNTrainer(env=CustomEnv,config=config)
agent.restore(''./RL_saved/checkpoint-100')
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73986812

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档