我已经使用Google colab训练了模型,并将其另存为model.pkl。当我尝试在笔记本电脑中加载模型时,抛出以下错误:
Traceback (most recent call last):
File "app.py", line 8, in <module>
model = pickle.load(open('model.pkl', 'rb'))
File "sklearn\tree\_tree.pyx", line 606, in sklearn.tree._tree.Tree.__cinit__
ValueError: Buffer dtype mismatch, expected 'SIZE_t' but got 'long long'
我已经对上述错误进行了一些研究,并且知道随机森林代码在32位和64位计算机上对索引使用不同的类型。我在这个平台上看到过类似的question,但对接受的答案不满意,因为该答案建议再次训练模型,这种情况不合适,因为有很多事情要做,我不愿意这样做想要再次在服务器上增加负载。
有什么建议或解决方案吗?
答案 0 :(得分:0)
不确定'.pkl'格式,但是您可以尝试将其另存为
model.save('modelweight.h5'),然后将其加载为model.load('modelweight.h5')。
这将起作用。
谢谢。
答案 1 :(得分:0)
尝试用腌料代替泡菜
try:
import cPickle as pickle
except:
import pickle
f = open('model.pkl','w+')
pickle.dump(model, f)#to save the model into file
f = open('model.pkl','r')
model = pickle.load(f)