OneVsRest Forex_Proba () и Pregnet () не совпадают? - PullRequest
0 голосов
/ 10 октября 2019

Я использую OneVsRestClassifier для проблемы мультикласса с svm.SVC в качестве базовой оценки. Argmax из predict_proba() не соответствует прогнозируемому классу:

sample

Есть ли некоторая нормализация в фоновом режиме? Как я могу получить, чтобы предикаты () и предсказания () соответствовали?

1 Ответ

0 голосов
/ 10 октября 2019

В соответствии с SVC-документацией scikit learn по многоклассовой классификации , могут быть расхождения между выводом predict и argmax из predict_proba (выделено мной):

Метод решения_функции в SVC и NuSVC дает оценки по классам для каждой выборки (или одну оценку для выборки в двоичном случае). Когда для параметра параметра вероятности конструктора установлено значение True, оценки вероятности членства в классе (из методов Forex_Proba и Foregnate_log_proba) включаются. В двоичном случае вероятности калибруются с использованием шкалы Платта: логистическая регрессия по баллам SVM, подгонка путем дополнительной перекрестной проверки данных обучения. В случае мультикласса это расширяется согласно Wu et al. (2004).

Само собой разумеется, перекрестная проверка, используемая в масштабировании Платта, является дорогостоящей операцией для больших наборов данных. Кроме того, оценки вероятности могут быть несовместимы с оценками, в том смысле, что «argmax» оценок не может быть argmax вероятностей . (Например, в двоичной классификации образец может быть помечен предикатом как принадлежащий к классу, который имеет вероятность <1/2 согласно предикату.) Известно, что метод Платта также имеет теоретические проблемы. Если требуются доверительные оценки, но они не обязательно должны быть вероятностями, то рекомендуется установить вероятность = Ложь и использовать решение_функцию, а не предикат_проба. </p>

Невозможно заставить их совпадать, используя SVC. Вы можете попробовать другую модель, если вам нужны вероятности. Если вам не нужны вероятности, как указано в документации, вы можете использовать decision_function (подробнее см. здесь )

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