Многоклассовая классификация
Материал из MachineLearning.
Содержание |
Многоклассовая классификация
- Многоклассовая классификация** — задача машинного обучения, в которой требуется отнести каждый объект к одному из более чем двух классов. В отличие от бинарной классификации, где есть только два возможных исхода (например, «спам» или «не спам»), в многоклассовой постановке пространство меток содержит
классов:
.
- Многоклассовая классификация** — задача машинного обучения, в которой требуется отнести каждый объект к одному из более чем двух классов. В отличие от бинарной классификации, где есть только два возможных исхода (например, «спам» или «не спам»), в многоклассовой постановке пространство меток содержит
Эта задача встречается повсеместно: от распознавания рукописных цифр до определения жанра фильма по кадру, от классификации видов растений до маршрутизации обращений в техподдержку.
---
Постановка задачи
Пусть дана обучающая выборка , где
— признаковое описание объекта (вектор, изображение, текст), а
— его истинная метка класса. Цель — построить функцию
, которая будет правильно предсказывать класс для новых объектов.
Часто модель выдаёт не жёсткое решение, а вектор вероятностей принадлежности к классам: , где
и
. Тогда финальный класс выбирается как
.
---
Подходы к решению
- Прямые методы (native multiclass)
Некоторые алгоритмы изначально поддерживают многоклассовую постановку:
- деревья решений и ансамбли на их основе (случайные леса, градиентный бустинг) — строят правила разделения пространства признаков сразу на несколько классов.
- SVM с многоклассовыми стратегиями (например, one-vs-rest или структурные SVM).
- нейронные сети с выходным слоем из нейронов и активацией softmax.
- Стратегии сведения к бинарным задачам
Когда базовый алгоритм умеет решать только бинарные задачи, применяют стратегии композиции:
- **One-vs-Rest (OvR)**: для каждого класса обучается отдельный классификатор «этот класс против всех остальных». Итого бинарных моделей.
- **One-vs-One (OvO)**: обучается
классификаторов, каждый различает пару классов. Финальный класс определяется голосованием.
- **Древовидные стратегии**: классы организуются в бинарное дерево, и объект последовательно проходит по узлам, пока не достигнет листа.
На практике OvR и OvO часто реализуются как «обёртки» над бинарными алгоритмами и широко используются в библиотеках типа scikit-learn.
---
Функции потерь и обучение
Для нейронных сетей и многих вероятностных моделей стандартом является **кросс-энтропийная потеря** (categorical cross-entropy):
где — индикаторная переменная:
, если объект
принадлежит классу
, и
иначе.
Для алгоритмов, не выдающих вероятности напрямую, используют другие критерии: например, долю ошибок (accuracy) или более устойчивые метрики при дисбалансе.
---
Метрики качества
Помимо общей точности (accuracy), важно оценивать качество по каждому классу:
- точность и полнота для каждого класса. - F1-мера, в том числе макро- и микроусреднённые версии. - Матрица ошибок (confusion matrix) — наглядно показывает, какие классы чаще всего путают.
При сильном дисбалансе классов accuracy может быть обманчиво высокой, поэтому используют взвешенные метрики и анализ по слабым классам.
---
Практические сложности и нюансы
- **Дисбаланс классов**: некоторые классы представлены гораздо реже остальных. Помогают техники вроде взвешивания классов, oversampling/undersampling, focal loss. - **Перекрытие классов**: объекты разных классов могут иметь схожие признаки. Здесь полезны ансамбли и более сложные модели. - **Интерпретируемость**: в критических областях (медицина, финансы) важно понимать, почему модель выбрала тот или иной класс.
---
Примеры применения
- Распознавание изображений: определение объекта среди десятков или сотен категорий (ImageNet). - Обработка естественного языка: классификация текста по темам, тональности, языку. - Медицина: дифференциальная диагностика по набору признаков.
Интересно, что задача определения фильма по кадру — это тоже многоклассовая классификация: каждый фильм выступает как отдельный класс, а модель должна выбрать наиболее вероятный из тысяч кандидатов.
---
Современные тенденции
В последние годы развитие многоклассовой классификации тесно связано с прогрессом в глубоком обучении:
- Большие предобученные модели (трансформеры, сверточные сети) дают сильные признаки, которые затем дообучаются под конкретную задачу. - Методы борьбы с дисбалансом и «длинным хвостом» классов (long-tail classification) активно исследуются. - Важным направлением остаётся интерпретируемость и надёжность предсказаний.
---
Литература и источники
- Hastie T., Tibshirani R., Friedman J. The Elements of Statistical Learning // Springer Series in Statistics. — 2009.
- Murphy K. P. Machine Learning: A Probabilistic Perspective. — MIT Press, 2012.
- Bishop C. M. Pattern Recognition and Machine Learning. — Springer, 2006.
- Multiclass and multilabel algorithms // scikit-learn documentation.
- He K., Zhang X., Ren S., Sun J. Deep Residual Learning for Image Recognition. — 2016.
- Dosovitskiy A. et al. An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale. — 2021.
---

