尝试训练数据模型时出现 Swift CreateML 错误。非常感谢任何输入

Posted

技术标签:

【中文标题】尝试训练数据模型时出现 Swift CreateML 错误。非常感谢任何输入【英文标题】:Swift CreateML error while trying to train data model. Any input is greatly appreciated 【发布时间】:2019-12-10 10:52:36 【问题描述】:

我正在编写有关如何使用 Swift CoreML 和 CreateML 创建机器学习数据模型的教程。尝试将训练数据从 .csv 文件加载到 MLTextClassifier 对象时,我遇到了一个奇怪的错误。

我期望它做的只是训练分类器对象并根据给定的数据显示我的评估结果,了解它的学习情况,但我得到了如下所示的错误。非常感谢任何输入。

我已确保我的代码没有拼写错误,并且 .csv 文件路径正确。我还阅读了 Apple 的文档,并针对此设置进行了相应的操作。我也在网上寻找解决方案,但一无所获。

控制台显示我的 csv 文件正在加载,并且“randomSplit()”函数正在正确解析数据,但是一旦我尝试创建“sentimentClassifier”,就会出现错误。

这是我的代码:

import Cocoa
import CreateML

let data = try MLDataTable(contentsOf: URL(fileURLWithPath: "/path/file.csv"))

let (trainingData, testingData) = data.randomSplit(by: 0.8, seed: 5)

let sentimentClassifier = try MLTextClassifier(trainingData: trainingData, textColumn: "text", labelColumn: "sentiment")

let evaluationMetrics = sentimentClassifier.evaluation(on: testingData, textColumn: "text", labelColumn: "sentiment")

let evaluationAccuracy = (1.0 - evaluationMetrics.classificationError) * 100

这是错误:

错误:无法查找符号:

静态 CreateML.MLTextClassifier.defaultParameters.getter : CreateML.MLTextClassifier.ModelParameters

【问题讨论】:

我之前也遇到过这个错误,使用的是 Xcode 的 beta 版本。使用不同版本的 XCode(在我的例子中是非 beta 版本;Xcode 10.3)效果很好。 我也处于测试阶段,所以听起来这只是一个测试错误。我要把这篇文章打开几天,看看有没有其他人有关于这个问题的更多细节,然后我会在解决后关闭它。谢谢分享! 【参考方案1】:

let evaluationMetrics = sentimentClassifier.evaluation(on: testingData, textColumn: "text", labelColumn: "class")

请输入此代码。希望这会奏效。

【讨论】:

以上是关于尝试训练数据模型时出现 Swift CreateML 错误。非常感谢任何输入的主要内容,如果未能解决你的问题,请参考以下文章

使用 AutoML 训练模型时出现“内部”错误

在 Keras 中训练对象检测模型时出现不兼容张量形状的问题

尝试在 Keras 中加载顺序模型时出现“KeyError:0”

加载图像时出现numpy memory错误

如何使用在 Swift 中返回 MultiArray(Double) 的模型进行预测

训练模型时出现不兼容行维度的值错误