🎯 Задача многоклассовой классификация: способы построения ML-моделей [1/2]
Задачи такого рода строятся на двух основных подходах: мультиклассовая классификация и многозадачная классификация. В рамках этого поста остановимся на первом и разберем несколько подходов к реализации ML-алгоритмов мультиклассовой классификации.
❗️Важно отметить, что подходы ниже актуальны для линейных моделей, «деревянные» алгоритмы и KNN и так умеют работать с мультиклассами.
1. One-vs-Rest (OvR), известный как One-vs-All (OvA).
Для каждого класса обучается один бинарный классификатор, который учится отделять целевой класс от всех остальных.
При классификации нового объекта все модели предсказывают вероятность принадлежности этого объекта к своему классу, затем выбирается класс с наибольшей уверенностью.
2. One-vs-One (OvO).
Отбираются все возможные пары классов, затем обучается бинарный классификатор для каждой такой пары. Всего создается N(N-1)/2 классификаторов, где N - число классов.
При классификации нового объекта все классификаторы голосуют, и выбирается класс, получивший наибольшее число голосов.
3. Логистическая Softmax-регрессия.
Обобщение бинарной логистической регрессии на случай множества классов.
Модель оценивает вероятности принадлежности объекта ко всем классам одновременно.
Использует функцию активации Softmax вместо сигмоиды, отсюда и появляется возможность выдавать вероятности объекту для всех классов. Обучение обычно производится методом максимального правдоподобия.
📚Также дополнительный материал по данной теме можно найти тут и на Хабре.
💯 Мультиклассовая и многозадачная классификация в sklearn.
Тем, кто дочитал этот пост до конца, небольшой бонус - репозиторий с kaggle-соревнованиями по задаче "классификации".
В следующем посте данной серии разберем ключевые метрики для оценки моделей в задачах многоклассовой классификации.
Ставьте ❤️ или 🔥 и не забывайте писать свои комментарии и вопросы!
До встречи👋🏻
Post #465
8.01K
- ❤ 24
- 👍 8
- 🔥 5