在 Core ML 中使用 MLClassifier 始终为不同的输入获得相同的预测

Posted

技术标签:

【中文标题】在 Core ML 中使用 MLClassifier 始终为不同的输入获得相同的预测【英文标题】:Always getting the same prediction for the different input using MLClassifier in Core ML 【发布时间】:2020-10-21 17:14:32 【问题描述】:

我有一个非常简单的 .csv 表:

我在 Create ML 中创建模型时使用此表作为输入参数,其中目标是 PRICE,CITY 和 DATE 是特征列。我需要在特定城市的未来。

下面的代码为不同的日期给出了不同的价格,因为它应该可以工作,但是,无论给定的城市如何,它都会给出相同的结果:

let prediction = try? model.prediction(
 CITY: name, DATE: date
)

let price = prediction?.PRICE

未来给定日期在巴黎的价格不应等于同一日期在纽约的价格。 我真的需要为每个城市创建 2 个不同的模型吗? 谢谢!

【问题讨论】:

【参考方案1】:

这是您提供的所有数据吗?你需要付出更多才能摆脱它。

【讨论】:

此外,您可能希望更改处理日期的方式。 @Scott 以这张表为例,实际的要大得多,但并没有改变任何东西——对城市的结果总是一样的。 @MatthijsHollemans 日期在这种格式下可以正常工作,但更改城市不会产生任何效果。【参考方案2】:

所以,这是 .csv 文件中的一个错误,看起来 CITY 列是用不可见字符记录的。

【讨论】:

以上是关于在 Core ML 中使用 MLClassifier 始终为不同的输入获得相同的预测的主要内容,如果未能解决你的问题,请参考以下文章

Core ML iOS 11 无法正确识别图像

Core ML入门:构建一个简单的图像识别应用

教程 | Apple机器学习框架Core ML入门教程

iOS:使用 Core ML 进行机器学习初探

iOS 11 : CORE ML—浅析

Core ML 和 Turi Create 使用啥模型?