Получив сообщение «Произошла ошибка, которая не была обнаружена: предоставленные данные проверки должны содержать ...» при создании модели классификатора текста с помощью CreateML - PullRequest
2 голосов
/ 08 января 2020

Я использую Playground для создания модели классификатора текста с использованием CreateML и продолжаю получать сообщение об ошибке:

Playground execution terminated: An error was thrown and was not caught:
▿ The validation data provided must contain class.
  ▿ type : 1 element
    - reason : "The validation data provided must contain class."

Мой код относительно прост с использованием двух столбцов из таблицы данных. TextColumn помечен как «текст», а labelColumn помечен как «класс»:

import Cocoa
import CreateML

let data = try MLDataTable(contentsOf: URL(fileURLWithPath: "/Users/ ... .csv"))
let(trainingData, testingData) = data.randomSplit(by: 0.8, seed: 5)
let sentimentClassifier = try MLTextClassifier(trainingData: trainingData, textColumn: "text", labelColumn: "class")
let evaluationMetrics = sentimentClassifier.evaluation(on: testingData, textColumn: "text", labelColumn: "class")
let evaluationAccuracy = (1.0 - evaluationMetrics.classificationError) * 100

Единственное различие, которое я могу найти между этим и кодом, представленным в документации разработчика Apple, заключается в том, что вместо

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

их документация:

let evaluationMetrics = sentimentClassifier.evaluation(on: testingData)

, и версия 11.2.1 XCode выдает мне ошибку, если я пытаюсь использовать строку из документации разработчика Apple.

Заранее спасибо за любую помощь, которую вы можете предложить.

...