【发布时间】:2021-08-18 22:41:26
【问题描述】:
我收到了一个带有经过训练的梯度提升模型的 pickle 文件,该模型是由其他人在另一台机器上训练的。我意识到我无法使用
在我的机器上加载这个泡菜文件with open('gb_model.pickle','rb') as f:
gbmodel = pickle.load(f)
我当前版本的scikit-learn==0.24.2。我收到错误ModuleNotFoundError: No module named 'sklearn.ensemble.gradient_boosting'。然后我尝试安装其他版本的sklearn,但我不断收到与sklearn 相关的其他错误。我也尝试过使用joblib,但得到了相同的结果:
from joblib import load
clf = load('gb_model.pickle')
我意识到我需要使用与安装时相同的sklearn 版本加载腌制文件。 I saw here that one is able to check the version after loading it,但似乎我什至无法加载泡菜文件。还有另一种方法吗?我希望最终能够加载腌制模型。根据official documentation,理想情况下应该沿着pickle模型保存元数据,但我没有提供这个,有没有办法单独从pickle文件中获取这个?
【问题讨论】:
标签: python machine-learning scikit-learn