使用coremltools的CoreML模型的输入类型

时间:2017-11-07 11:16:55

标签: scikit-learn coremltools

我正在尝试使用RandomForestClassifier将MNIST数据集的coremltools模型转换为CoreML模型。

我使用fetch_mldata中的sklearn.datasets来导入数据;我的样本(数据)存储在Numpy数组X中,标签(目标)存储在Numpy数组Y中。

我的模型生成如下:

from sklearn.ensemble import RandomForestClassifier
rfc = RandomForestClassifier()
rfc.fit(X, Y)

然后我尝试转换模型:

import coremltools
model = coremltools.converters.sklearn.convert(rfc)

然后,CoreML模型输入如下所示:

input {
  name: "input"
  type {
    multiArrayType {
      shape: 784
      dataType: DOUBLE
    }
  }
}

问题是multiArrayType。在iOS中处理像素缓冲区要容易得多,因此各种来源都指向这种语法(但是,它们使用的是Caffe而不是sklearn):

model = coremltools.converters.sklearn.convert(rfc, image_input_names='data')

但是,这给了我一条错误消息:

TypeError: convert() got an unexpected keyword argument 'image_input_names'

我试图找到这些参数的文档,但我只找到了一些使用Caffe的例子,他们似乎没有得到这个错误。

0 个答案:

没有答案