作者:日全食x_354 | 来源:互联网 | 2022-12-30 17:52
我正在运行来自iPhone 6上来自keras的mlmodel。预测通常会因错误而失败Error computing NN outputs
。有谁知道可能是什么原因,如果我有什么办法可以解决?
do {
return try model.prediction(input1: input)
} catch let err {
fatalError(err.localizedDescription) // Error computing NN outputs error
}
编辑:我尝试了苹果的示例项目,并且该项目在后台运行,因此看来它特定于我们的项目或模型类型。
1> Simon Bengts..:
最后,足以让我们设置usesCPUOnly
标志。在iOS中似乎禁止在后台使用GPU。苹果实际上也在他们的文档中写了这个。要指定此标志,我们不能再使用生成的模型类,而必须调用原始coreml类。我可以想象在将来的版本中这种变化。下面的代码片段来自生成的模型类,但MLPredictionOptions
指定了添加的内容。
let optiOns= MLPredictionOptions()
options.usesCPUOnly= true // Can't use GPU in the background
// Copied from from the generated model class
let input = model_input(input: mlMultiArray)
let output = try generatedModel.model.prediction(from: input, options: options)
let result = model_output(output: output.featureValue(for: "output")!.multiArrayValue!).output