Многоклассовая классификация

Материал из MachineLearning.

Перейти к: навигация, поиск

```wiki {{{заглавие}}}.

Содержание

Определение

Многоклассовая классификация — это задача обучения с учителем, в которой модель должна отнести каждый объект к одному из более чем двух классов. В отличие от бинарной классификации (где есть только два класса, например, «спам» или «не спам»), здесь пространство меток содержит K > 2 категорий.

Пример: классификация изображений по типам животных («кошка», «собака», «попугай», «черепаха») — это многоклассовая задача с K=4.

---

Формальная постановка задачи

Пусть дано множество объектов \mathcal{X} и множество меток \mathcal{Y} = \{1, 2, \dots, K\}, где K>2. Имеется обучающая выборка \{(x_i, y_i)\}_{i=1}^N, где x_i \in \mathcal{X}, y_i \in \mathcal{Y}. Цель — построить функцию f: \mathcal{X} \to \mathcal{Y}, которая минимизирует ошибку на новых данных.

Часто модель сначала предсказывает вектор оценок (логитов) z(x) \in \mathbb{R}^K, а затем преобразует их в вероятности с помощью softmax-функции:


p_k(x) = \frac{\exp(z_k(x))}{\sum_{j=1}^{K} \exp(z_j(x))}

Класс выбирается как индекс максимального значения: \hat{y}(x) = \arg\max_k p_k(x).

---

Основные подходы

Прямые методы

Модель обучается сразу на K классах. Это стандартный подход для большинства современных алгоритмов:

Методы сведения к бинарным задачам

Когда алгоритм изначально разработан для бинарной классификации, используют стратегии сведения:

  • **One-vs-Rest (OvR)**: обучается K бинарных классификаторов, каждый из которых отделяет один класс от всех остальных. Итоговый прогноз — класс с наибольшей оценкой.
  • **One-vs-One (OvO)**: обучается \binom{K}{2} классификаторов для каждой пары классов. Прогноз определяется голосованием.

Эти стратегии полезны, когда нужно применить бинарный метод к многоклассовой задаче, но при больших K могут быть вычислительно затратными.

---

Функции потерь

Для обучения моделей в многоклассовой классификации чаще всего используют кросс-энтропийную функцию потерь:


\mathcal{L} = -\frac{1}{N} \sum_{i=1}^{N} \log p_{y_i}(x_i)

Она штрафует модель за низкую вероятность правильного класса. В задачах с дисбалансом классов применяют модификации, например, взвешенную кросс-энтропию или focal loss.

---

Практические сложности и нюансы

  • **Дисбаланс классов**: если одни классы встречаются значительно чаще других, модель может игнорировать редкие категории. Решения: взвешивание классов, аугментация меньшинства, специальные функции потерь.
  • **Неопределённость и калибровка**: вероятности, выдаваемые моделью, не всегда отражают реальную уверенность. Для калибровки применяют методы вроде Platt scaling или изотонической регрессии.
  • **Оценка качества**: вместо простой точности (accuracy) используют более информативные метрики:
 * macro-average F1 — усреднение по классам, полезно при дисбалансе.
 * micro-average F1 — учитывает размер классов.
 * Матрица ошибок (confusion matrix) помогает увидеть, какие классы модель путает.

---

Примеры применения

  • Классификация текстов по темам (новости, спорт, наука и т. д.).
  • Распознавание рукописных цифр и символов.
  • Медицинская диагностика по снимкам (несколько типов патологий).
  • Определение жанра музыки или типа сцены в видео.

---

Связь с родственными задачами

---

Актуальные направления исследований

Современные работы в области многоклассовой классификации фокусируются на:

  • Улучшении обобщения при малом числе примеров на класс (few-shot learning).
  • Балансировке качества между частыми и редкими классами.
  • Интерпретируемости решений моделей, особенно в критических областях (медицина, финансы).

Среди значимых публикаций можно отметить работы, посвящённые:

  • Стратегиям борьбы с дисбалансом в глубоких сетях (например, исследования по взвешиванию классов и ресемплингу).
  • Калибровке вероятностей в современных архитектурах.
  • Эффективным методам сведения многоклассовых задач к бинарным в условиях больших K.

Для поиска актуальных статей рекомендуется использовать базы: arXiv, Google Scholar, IEEE Xplore. Ключевые запросы: «multiclass classification», «class imbalance», «probability calibration».

---

Литература и источники

1. Bishop, C. M. (2006). *Pattern Recognition and Machine Learning*. Springer. — фундаментальное изложение вероятностных подходов, включая многоклассовую классификацию. 2. Hastie, T., Tibshirani, R., Friedman, J. (2009). *The Elements of Statistical Learning*. Springer. — классические методы, включая линейные и нелинейные модели для многоклассовых задач. 3. Goodfellow, I., Bengio, Y., Courville, A. (2016). *Deep Learning*. MIT Press. — описание нейронных сетей и softmax-слоя для многоклассовой классификации. 4. Статьи на arXiv по запросам «multiclass imbalance» и «calibration in deep learning» — для ознакомления с последними результатами.

---

См. также

```