#machine-learning #scikit-learn #multiclass-classification
#машинное обучение #scikit-learn #многоклассовая классификация
Вопрос:
Я использую scikit-learn для построения модели многоклассовой классификации. До сих пор я пробовал алгоритмы RandomForestClassifier, KNeighborsClassifier, LogisticRegression, MultinomialNB и SVC. Я доволен сгенерированным результатом. Однако у меня есть вопрос о механизме по умолчанию, используемом алгоритмами для многоклассовой классификации. Я читал, что все классификаторы scikit-learn способны к многоклассовой классификации, но я не смог найти никакой информации о механизме по умолчанию, используемом алгоритмами.
Комментарии:
1. Некоторые классификаторы, такие как KNeighborsClassifier или RandomForestClassifier, по умолчанию поддерживают многоклассовую классификацию. Другие, такие как LogisticRegression, которые способны говорить только «да» или «сейчас», адаптируются к мультиклассу с помощью OVR. Я не думаю, что существует такая вещь, как «механизм» по умолчанию.
Ответ №1:
Один против всех или Один против всех — наиболее часто используемая и справедливая стратегия по умолчанию для алгоритмов многоклассовой классификации. Для каждого классификатора класс сопоставляется со всеми другими классами. Проверьте здесь для получения дополнительной информации https://scikit-learn.org/stable/modules/generated/sklearn.multiclass .OneVsRestClassifier.html
Комментарии:
1. Как ваш ответ будет применяться к
KNeighborsClassifier
orRandomForestClassifier
?2. Отредактировано, спасибо! Мультикласс в KNN и случайном лесу работает по своей сути.
3. Извините за глупый вопрос, но что это значит под «работает по своей сути»? Я заметил, что в документации scikit-learn упоминается то же самое, но не понял, что это значит.
4. Это означает, что он поддерживает мультикласс изначально, не требует никаких дополнительных манипуляций или адаптации, таких как OVR