保存sklearn模型的最佳方法是什么?

2024-04-20 12:23:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在开发一个python桌面应用程序。这个应用程序做了一些预测。现在我使用python脚本训练sklearn模型,将模型的参数保存为yaml文件中的字典。然后,我将这个yaml构建到python应用程序中。然后,当我使用该应用程序时,使用字典中的参数重新创建模型。我意识到,使用不同版本sklearn的人会出错。我试图将我的模型保存在pickle文件中,但在本例中,当应用程序在具有不同版本sklearn的计算机上运行时,它会产生一些警告。在


Tags: 文件模型版本脚本应用程序yaml参数字典
3条回答

I realized, that people who have a different version of sklearn get an error.

在本例中,使用virtualenvs创建独立的Python环境

不能保证给定的sklearn模型在sklearn的版本之间是兼容的。实际上,实现或内部API可能在版本之间发生变化。查看更多信息here。在

如果考虑一个版本,最好的方法确实是pickle,而不是将参数保存在yaml文件中。使用joblib更好。查看更多信息here。在

或者,您可以从一个经过训练的模型生成一个Python代码。这样可以消除任何对象不兼容的可能性。这里有一个工具可以帮助您https://github.com/BayesWitnesses/m2cgen

相关问题 更多 >