我在一台PC上构建了一个sklearn模型并将其腌制。当我试图在另一台PC上使用相同的型号时,我得到以下错误:
属性错误:模型没有属性类_
当我构建模型时,我确实检查了
Model.classes _
它打印了这些课程。这可能是什么原因?
答案 0 :(得分:0)
它有助于了解两台PC中scikit-learn的版本细节,但website上的信息告诉它可能由于版本不同而发生。希望它有所帮助。
答案 1 :(得分:0)
将pickle
视为在给定时刻转储和加载对象及其环境的快照的方法。
有时你处理的对象本身并不意味着什么。您必须提供额外的数据。
特别是训练有素的分类器的情况。在您的情况下,当您拥有数据并安装分类器时,model_classes
可在您的脚本中完美运行。现在假设您已经转储了分类器并稍后在另一个脚本中加载它:您正在谈论的类是什么?关于我们在谈论什么数据? ......知道了吗?
您需要做什么然后在酸洗时提供额外的元数据。
sklearn
文档的This部分描述了分类器中需要腌制的内容(培训数据,源代码......)。
<强> NB 强>:
首先检查两个版本的sklearn是否相同。有时可能就是这样。