pickle读取已训练好的模型报错“_pickle.UnpicklingError: invalid load key, '\x00'.”
报错内容
在运行app.py文件时,出现如下图所示错误:
错误原因
- pickle不能和joblib混用
- 因为键为空,所以应该是pkl文件并未成功加载
解决办法
出错原因为第二点,所以解决办法如下:
- 先在本地运行mode.py文件,以保存训练好的pkl模型
with open("clf.pkl", 'wb') as file:
pickle.dump(classifier_model, file)
- 在app.py文件中加载模型:
with open("./clf.pkl", 'rb') as file:
classifier_model = pickle.load(file)
# 或者写成:classifier_model = pickle.load(open("./clf.pkl", "rb"))
- 重新运行app.py文件,运行成功如下图所示: