我有一个 MLModel
,它包含一个名为 length
的输入列和一个名为 depth
的输出列。
你给它一个长度,它就预测一个深度。
我知道还有其他方法可以做到这一点,但这是为了学习 CoreML 的全部目的。
我需要构建一个 MLFeatureProvider
类来获取该长度并输出深度。
我不确定如何创建该类,因为这是我第一次处理 CoreML,而且像往常一样,Apple 不关心创建像样的文档。
这就是我所拥有的
class FeatureProviderX: MLFeatureProvider {
var featureNames: Set<String> {
get {
return ["length", "depth"]
}
}
func featureValue(for featureName: String) -> MLFeatureValue? {
guard featureName == "length" else {
return MLFeatureValue(????????????) \\1
}
}
}
我不确定这个类是否正确。
如果正确,\\1
应该怎么写?
最佳答案
像这样:
class FeatureProviderX: MLFeatureProvider {
let length: Double
init(length: Double) {
self.length = length
}
func featureValue(for featureName: String) -> MLFeatureValue? {
guard featureName == "length" else {
return MLFeatureValue(double: length)
}
}
...
要使用它进行预测,请创建一个新的 FeatureProviderX
实例并将其传递给您的 MLModel
类。
关于swift - CoreML – 如何创建一个简单的 MLFeatureProvider 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54425495/