Я думаю, вы неправильно поняли функцию перекрестной проверки. Ваш CVSVMModel
- это так называемый ClassificationPartitionedModel
, который не имеет функции predict()
, поскольку перекрестная проверка предназначена для проверки обобщения вашей модели ДО того, как вы обучите ее с помощью набора данных ВЕСЬ (без перекрестной проверки).
Я предлагаю следующее:
- Позвоните
[Predict_Labels,Predict_Scores] = kfoldPredict(CVSVMModel);
, чтобы узнать, насколько хорошо он работает с каждым набором данных проверки во время перекрестной проверки
- Если вы удовлетворены, обучите новый
SVMModel
всему набору данных и прогнозируйте с ним.
EDIT:
A ClassificationPartitionedModel
- это коллекция моделей (в вашем случае 10 разных). Вы можете получить к ним доступ и даже позвонить predict()
, например:
[Predict_Labels,Predict_Scores] = predict(CVSVMModel.Trained{1, 1},X);