在CreateML中使用序列记录设备运动

我想训练一个MLClassifier来识别特定的设备运动。因此,我记录了运动数据,并对每条记录的数据进行了相应的标记。当这种方法没有如我所愿的那样有效时,我开始意识到我需要记录“运动”本身,而不仅仅是某一时刻的运动数据。

于是,我将5个数据集(字典)连续打包,作为我的新训练特征。我这样想过,但当我尝试训练新数据时,创建分类器时遇到了以下错误:

在列’s’中遇到的值类型为’字典’,无法映射到分类值。分类值必须是整数、字符串或None。

现在我慢慢开始放弃了……你们中有没有人有建议,或者知道为什么我不能使用序列(数组)作为特征?

顺便说一下,这里有一些我的JSON样本数据:

[{"s":[{"rZ":-1.0,"p":0.2,"aY":-0.0,"rX":1.5,"y":0.1,"r":-1.3,"aZ":0.2,"rY":-2.8,"aX":0.6},{"rZ":-1.9,"p":0.2,"aY":0.0,"rX":2.0,"y":0.2,"r":-1.4,"aZ":0.0,"rY":-3.2,"aX":0.5},{"rZ":-1.8,"p":0.3,"aY":0.0,"rX":2.4,"y":0.2,"r":-1.5,"aZ":0.9,"rY":-4.8,"aX":0.5},{"rZ":-1.6,"p":0.3,"aY":0.0,"rX":2.5,"y":0.3,"r":-1.6,"aZ":0.9,"rY":-3.8,"aX":0.6},{"rZ":-1.8,"p":0.3,"aY":0.1,"rX":2.2,"y":0.3,"r":-1.7,"aZ":0.1,"rY":-3.0,"aX":0.6}],"v":0}]

这是我用来创建模型的代码:

do{    let a = try MLDataTable(contentsOf: dummyJSONurl)    let recognizer = try MLClassifier(trainingData: a, targetColumn: "v")}catch let er{    er} 

回答:

你不能使用序列,因为MLClassifier不是一个能够处理序列的分类器。或许苹果公司会在未来的版本中添加这一功能,但目前看来,你需要使用更强大的工具。

Related Posts

在使用k近邻算法时,有没有办法获取被使用的“邻居”?

我想找到一种方法来确定在我的knn算法中实际使用了哪些…

Theano在Google Colab上无法启用GPU支持

我在尝试使用Theano库训练一个模型。由于我的电脑内…

准确性评分似乎有误

这里是代码: from sklearn.metrics…

Keras Functional API: “错误检查输入时:期望input_1具有4个维度,但得到形状为(X, Y)的数组”

我在尝试使用Keras的fit_generator来训…

如何使用sklearn.datasets.make_classification在指定范围内生成合成数据?

我想为分类问题创建合成数据。我使用了sklearn.d…

如何处理预测时不在训练集中的标签

已关闭。 此问题与编程或软件开发无关。目前不接受回答。…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注