我正试图在训练后保存我的强化学习剂类,以便稍后通过酸洗进行进一步训练。
使用的脚本是:
with open('agent.pickle','wb') as agent_file:
pickle.dump(agent,agent_file)
我收到一个错误:
TypeError: can't pickle _thread.RLock objects
我已经搜索了这个错误消息,但不确定错误的实际来源是什么。关于具体是哪行代码导致了这个错误,回溯是没有信息的。使用的脚本来自3个独立的.py文件。其中一个已经建立了tensorflow,keras模型,但再次不确定这是从哪里来的!我读过这个错误可能来自lambda函数,但这些函数都不是我自己定义的,除非它们被tensorflow等包内部使用。
我也遇到了同样的错误,但找到了解决方法。在model.fit()
之后,使用model.save("modelName")
。它将创建一个文件夹,模型将保存在该文件夹中。
要加载模型,请使用keras.models.load_model("modelName")