如何在Swift CoreML中使MLModel可更新?

4

我正在尝试将 CoreML 3 的新功能“可更新模型”应用到我的应用程序中,但是我还没有弄清楚。

我使用 Keras 创建了一个有两层的神经网络,并将其转换为 Core ML 模型。然后我将模型包含在我的 iOS 项目中。 然而,self.testmodel.model.modelDescription.isUpdatable 总是为 false,我无法理解苹果文档的内容。

model = Sequential([
    Dense(10, activation="sigmoid", input_shape=(2,)),
    Dense(2, activation="relu"),
])
core_mlmodel = coremltools.converters.keras.convert(model)
core_mlmodel.save("FirstNN.mlmodel")

Swift中已经集成了Model,但无法更新它

let testmodel = FirstNN()
try testmodel.prediction(input: input) // works
testmodel.model.modelDescription.isUpdatable  // is false

我的模型为什么不能更新,我该如何更改?

1个回答

1

啊,我明白了,你还需要使用coremltools的beta版本3.0b5。这很有道理。非常感谢。 - Seb
然而,尝试更新模型会引发错误:[espresso] Training kernels not enabled for engine: 100,并且无法更新。 - Seb
@SebastianJ.Vogt 我一直收到相同的消息,但在我的情况下模型更新是有效的。您是否使用[modelName]TrainingInput类来提供训练输入? - Bghaak
我只是在完成处理程序中没有保存模型。 - Seb

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接