I want to use MLImageClassifier from Create ML, and set the model parameters to include a directory containing validation data.
A simple example setting only the parameter with the maximum number of iterations works fine:
let trainDirectory = URL(fileURLWithPath: "/Users/gordon/Documents/TrainingData")
let modelParameters = MLImageClassifier.ModelParameters(maxIterations : 100)
let model = try MLImageClassifier(trainingData: .labeledDirectories(at: trainDirectory), parameters: modelParameters)
But if I add the validation directory (for simplicity I have removed the maximum number of iterations) by:
let trainDirectory = URL(fileURLWithPath: "/Users/gordon/Documents/TrainingData")
let validationDirectory = URL(fileURLWithPath: "/Users/gordon/Documents/ValidationData")
let modelParameters = MLImageClassifier.ModelParameters(validationData: validationDirectory) // ERROR HERE
let model = try MLImageClassifier(trainingData: .labeledDirectories(at: trainDirectory), parameters: modelParameters)
I get an error on the third line which is trying to set the validationData parameter:
Cannot convert value of type 'URL' to expected argument type '[String : [URL]]?'
Am I doing something wrong, or is this a bug in the beta?
Thanks in advance.