fast-ai
包中的一些函数。事实上,我在Windows上定义路径时,fast-ai
中名为load_learner
的函数无法加载模型。我尝试将包中的函数更改为:
state = pickle.load(open(str(path) + '/' + str(fname), 'rb'))
而不是:
state = pickle.load(open(path/fname, 'rb'))
但是我得到了这个错误: File "lib\site-packages\fastai\basic_train.py", line 462, in load_learner
state = pickle.load(open(path/fname, 'rb'))
File "\lib\pathlib.py", line 1006, in __new__
% (cls.__name__,))
NotImplementedError: cannot instantiate 'PosixPath' on your system
我的路径定义如下:
folder_path = './models/model1'
fname = 'model.pkl'
我调用函数的方式为:
model = load_learner(folder_path, fname)
在这个函数中,如何使用Windows路径呢?
更新1
之前发布的答案只适用于Linux。我在Windows上仍然存在这个问题。我没有找到在Windows上通过PosixPath的方法。唯一的解决办法是更改我的模块内部包,但这不是解决此类问题的安全方法。
提前感谢您的帮助。
os.sep
参见轻松获取所有系统的正确分隔符。尝试将所有“/”替换为Windows格式的分隔符。 - Albo