我正在构建一个将在生产中使用的决策树模型。
在此处的文档中, pickle 用于序列化模型,但是对这种技术的担忧让我认为可能有更好的解决方案将模型导出到生产环境。
pickle(以及扩展的 joblib)在可维护性和安全性方面存在一些问题。因为这,
- 永远不要解开不受信任的数据,因为它可能导致在加载时执行恶意代码。
- 虽然使用一个版本的 scikit-learn 保存的模型可能会在其他版本中加载,但这是完全不受支持且不可取的。还应记住,对此类数据执行的操作可能会产生不同的和意想不到的结果。
所以我的问题是:使用 scikit-learn,是否有一种安全便捷的技术可以将模型导出到生产环境中。
PS:将点数据转换为 python 函数可能是一个解决方案,但我很惊讶没有内置的解决方案。