2017-05-08 57 views
0

我创建grid_search.pkl文件model persitence它Jupyter笔记本电脑这样的拟合之后:无法加载.pkl坚持模型时.ipynb在子目录

joblib.dump(grid_search, 'grid_search_rf.pkl', compress=3)

了一段时间后,我提出我的.ipynb文件子目录称为notebooks,也是我做了一些重构我模块的notebooks

父目录现在,当试图加载该文件grid_search.pkl到我的笔记本是在子目录(父与目录包含我的模块)是这样的:

grid_search = joblib.load('../grid_search_rf.pkl')

我得到this weird error关于我的模块,这似乎并不相关的。

但是,当jupyter笔记本直接在我的父目录与所有.py模块和.pkl文件,grid_search.pkl文件正确加载。

为什么?我该如何加载这个.pkl文件,而.ipynb文件在该父目录的子目录中?

编辑:我加入(基于奇怪的错误)类TextParser我在我的模块的一个重构过程中已经删除了,现在一切工作正常,我可以从父目录加载grid_search.pkl到jupyter笔记本电脑,因为它们在子目录notebooks,请问有人能解释酸洗的这种行为吗?

回答

0

我怀疑Pickle文件引用了一些不在您的PYTHONPATH上的模块。尝试在加载酸菜前插入以下代码:

import sys 
sys.path.append("..")