【发布时间】:2016-11-14 12:00:17
【问题描述】:
我已经通过 pickle 丢弃了 scikit-learn 的分类器。我的计划是在不同的机器(armv7l)上部署这个分类器。但是当我想加载这个对象时,我得到了这个错误:
ValueError: Buffer dtype mismatch, expected 'SIZE_t' but got 'long long'
我预计由于不同的架构和 numpy 的 C 实现会出现问题。
有没有办法为不同的 CPU 架构腌制对象?
【问题讨论】:
-
这听起来很明显,但您是否检查过 Python 和 Scikit-learn 在两个系统上的版本相同?
-
当你通过 pickle 转储分类器时,它是否已经有序列化它的方法,还是你自己编写的?
-
@Chachmu 我按照文档的建议做了 (scikit-learn.org/stable/modules/model_persistence.html)
-
@Balzola 是的,我检查了 Python、numpy 和 scikit-learn 版本。
标签: python numpy arm pickle cpu-architecture