Почему я получаю ноль баллов, используя кросс-балл? - PullRequest
0 голосов
/ 22 декабря 2019

Когда я запускаю эту обработку с 10-кратной перекрестной проверкой, результаты прогноза точно противоположны данным метки, и я получаю нулевую точность. Я не могу решить, почему это так?

kfold = model_selection.KFold(n_splits=5,random_state=+7,shuffle=False)
predictions = model_selection.cross_val_predict(SVC(),features_list,labels_list,cv=kfold)
accuracy=metrics.accuracy_score(labels_list,predictions)
print(confusion_matrix(labels_list,predictions))
print(classification_report(labels_list,predictions))
print("Accuracy Score:",accuracy)

1 Ответ

0 голосов
/ 22 декабря 2019

Не используйте cross_val_predict для оценки модели в scikit-learn (раздел предупреждения там: https://scikit -learn.org / stable / modules / cross_validation.html # получение-предсказания-путем-перекрестной проверки)

Вместо этого используйте cross_val_score, который вернет 10 точности для 10 моделей, протестированных на 10 различных наборах данных, построенных из перекрестной проверки. Посмотрите на средний балл и станд. девиациядля оценки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...