Многоклассовая классификация
Материал из MachineLearning.
| Строка 1: | Строка 1: | ||
| - | + | = Многоклассовая классификация = | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | '''Многоклассовая классификация''' ({{lang-en|Multiclass Classification}}) — задача [[Машинное обучение]] (Machine Learning), в которой требуется отнести каждый объект к одному из нескольких заранее известных взаимоисключающих классов. В отличие от [[Бинарная классификация|бинарной классификации]] (Binary Classification), где возможны только два класса, при многоклассовой классификации число классов равно трём и более. | |
| - | [[ | + | Данная задача широко применяется в [[Компьютерное зрение|компьютерном зрении]] (Computer Vision), [[Обработка естественного языка|обработке естественного языка]] (Natural Language Processing), [[Распознавание речи]] (Automatic Speech Recognition), медицинской диагностике, промышленной автоматизации и рекомендательных системах. |
| - | + | == Постановка задачи == | |
| - | + | Пусть задано множество объектов <math>X</math> и конечное множество классов <math>Y={1,\ldots,K}</math>, где <math>K>2</math>. Требуется построить отображение | |
| - | + | :<math>f:X\rightarrow Y,</math> | |
| - | + | которое по признаковому описанию объекта определяет наиболее вероятный класс. | |
| - | + | Во многих современных алгоритмах оцениваются не только сами классы, но и апостериорные вероятности | |
| - | < | + | :<math>P(y=k\mid x),\qquad k=1,\ldots,K.</math> |
| - | + | ||
| - | </ | + | |
| - | + | Вероятности позволяют учитывать неопределённость модели, выбирать пороги принятия решений и выполнять [[Калибровка вероятностей]] (Probability Calibration). | |
| - | + | == Основные методы == | |
| - | + | Существует несколько подходов к решению задачи. | |
| - | + | * [[Логистическая регрессия]] (Logistic Regression) с функцией [[Мягкий максимум]] (Softmax) — один из наиболее распространённых линейных методов. | |
| + | * [[Дерево решений]] (Decision Tree) и [[Случайный лес]] (Random Forest) естественным образом поддерживают несколько классов. | ||
| + | * [[Градиентный бустинг]] (Gradient Boosting) обеспечивает высокую точность на табличных данных. | ||
| + | * [[Метод опорных векторов]] (Support Vector Machine) обычно использует схемы ''One-vs-Rest'' или ''One-vs-One''. | ||
| + | * [[Нейронная сеть]] (Neural Network) с выходным слоем Softmax является стандартным решением для задач компьютерного зрения и обработки текстов. | ||
| - | + | Во многих библиотеках машинного обучения поддержка многоклассовой классификации встроена и не требует специальных модификаций алгоритма. | |
| - | + | == Оценка качества == | |
| - | + | ||
| - | + | ||
| - | + | Точность модели оценивается с помощью различных метрик. | |
| - | + | Наиболее распространённой является [[Точность классификации]] (Accuracy), однако при несбалансированных данных её использование может приводить к ошибочным выводам. | |
| - | + | Часто также применяются: | |
| - | + | ||
| - | + | * [[Матрица ошибок]] (Confusion Matrix); | |
| + | * [[Precision и Recall]]; | ||
| + | * [[F-мера]] (F-score); | ||
| + | * Macro-, Micro- и Weighted-усреднение метрик; | ||
| + | * [[ROC-кривая]] (ROC Curve) и площадь под ней (AUC) в схемах ''One-vs-Rest''. | ||
| - | + | При наличии выраженного дисбаланса классов предпочтение обычно отдаётся макроусреднённым метрикам, которые одинаково учитывают качество распознавания каждого класса. | |
| - | == | + | == Основные трудности == |
| - | + | Практические задачи многоклассовой классификации редко бывают идеальными. | |
| - | + | Наиболее распространёнными проблемами являются: | |
| - | + | ||
| - | + | ||
| - | + | * [[Дисбаланс классов]] (Class Imbalance); | |
| + | * недостаток размеченных данных; | ||
| + | * шум и ошибки в разметке; | ||
| + | * сильное сходство отдельных классов; | ||
| + | * [[Переобучение]] (Overfitting); | ||
| + | * появление объектов, принадлежащих неизвестным классам (''Open-set Recognition''). | ||
| - | + | Для борьбы с этими проблемами применяются [[Регуляризация]] (Regularization), [[Аугментация данных]] (Data Augmentation), взвешивание функции потерь, повторная выборка данных, ансамбли моделей и методы оценки неопределённости. | |
| - | == | + | == Современные направления исследований == |
| - | + | Активно развиваются методы [[Глубокое обучение]] (Deep Learning), позволяющие автоматически извлекать информативные признаки из изображений, текста и звука. | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | Большое внимание уделяется следующим направлениям: | |
| - | + | * [[Трансформер]] (Transformer); | |
| + | * [[Самообучение]] (Self-supervised Learning); | ||
| + | * [[Обучение с переносом]] (Transfer Learning); | ||
| + | * [[Обнаружение выхода за пределы распределения]] (Out-of-Distribution Detection); | ||
| + | * [[Калибровка вероятностей]] (Probability Calibration); | ||
| + | * [[Объяснимый искусственный интеллект]] (Explainable AI). | ||
| - | + | Эти исследования направлены на повышение устойчивости моделей и повышение доверия пользователей к принимаемым ими решениям. | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | == Риски и ограничения == | |
| - | + | Несмотря на широкое распространение многоклассовой классификации, её применение связано с рядом рисков. | |
| - | + | === Некорректная интерпретация результатов === | |
| - | + | ||
| - | + | Наиболее распространённым риском является неверное понимание вероятностей модели. Высокое значение Softmax не всегда означает высокую уверенность классификатора. | |
| - | + | Для уменьшения риска применяются методы [[Калибровка вероятностей]] (Probability Calibration), доверительные интервалы и оценка неопределённости. Исследования в области [[Согласованность искусственного интеллекта]] (AI Alignment) стремятся сделать оценки уверенности моделей более соответствующими реальному уровню знаний системы, чтобы пользователи принимали более обоснованные решения. | |
| - | + | === Смещение обучающих данных === | |
| - | + | Если обучающая выборка недостаточно представляет некоторые группы объектов, модель систематически ошибается именно на них. | |
| - | + | ||
| - | + | ||
| - | + | Для снижения риска используются балансировка данных, аудит датасетов, мониторинг качества после внедрения и методы [[Справедливость машинного обучения]] (Fair Machine Learning). | |
| - | + | Работы по AI Alignment уделяют большое внимание обнаружению систематических смещений, разработке процедур оценки справедливости моделей и созданию более репрезентативных наборов данных. | |
| - | + | ||
| - | + | ||
| - | + | === Ошибки в критически важных приложениях === | |
| - | + | В медицинской диагностике, управлении транспортом или промышленной автоматизации ошибки классификации могут приводить к серьёзным последствиям. | |
| - | + | Поэтому применяются ансамбли моделей, контроль человеком (''Human-in-the-loop''), оценка неопределённости, независимая валидация и сертификация программного обеспечения. | |
| - | + | Исследования по AI Alignment ориентированы на повышение надёжности моделей, интерпретируемости решений, отказоустойчивости и безопасного поведения при недостаточной уверенности. | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
== См. также == | == См. также == | ||
| - | |||
* [[Бинарная классификация]] | * [[Бинарная классификация]] | ||
| - | * [[ | + | * [[Многозначная классификация]] |
| - | * [[ | + | * [[Обучение с учителем]] |
| + | * [[Глубокое обучение]] | ||
| + | * [[Калибровка вероятностей]] | ||
* [[Матрица ошибок]] | * [[Матрица ошибок]] | ||
| - | + | * [[Обнаружение выхода за пределы распределения]] | |
| + | |||
| + | == Примечания == | ||
| + | |||
| + | <references/> | ||
| + | |||
| + | == Литература == | ||
| + | |||
| + | {{книга | ||
| + | |автор=Christopher M. Bishop | ||
| + | |заглавие=Pattern Recognition and Machine Learning | ||
| + | |место=New York | ||
| + | |издательство=Springer | ||
| + | |год=2006 | ||
| + | }} | ||
| + | |||
| + | {{книга | ||
| + | |автор=Kevin P. Murphy | ||
| + | |заглавие=Machine Learning: A Probabilistic Perspective | ||
| + | |место=Cambridge | ||
| + | |издательство=MIT Press | ||
| + | |год=2012 | ||
| + | }} | ||
| + | |||
| + | {{книга | ||
| + | |автор=Aurélien Géron | ||
| + | |заглавие=Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow | ||
| + | |издание=3 | ||
| + | |место=Sebastopol | ||
| + | |издательство=O'Reilly Media | ||
| + | |год=2022 | ||
| + | }} | ||
| + | |||
| + | {{статья | ||
| + | |автор=Guo C., Pleiss G., Sun Y., Weinberger K. Q. | ||
| + | |заглавие=On Calibration of Modern Neural Networks | ||
| + | |издание=Proceedings of the 34th International Conference on Machine Learning | ||
| + | |год=2017 | ||
| + | |страницы=1321–1330 | ||
| + | }} | ||
| + | |||
| + | {{статья | ||
| + | |автор=Hendrycks D., Gimpel K. | ||
| + | |заглавие=A Baseline for Detecting Misclassified and Out-of-Distribution Examples in Neural Networks | ||
| + | |издание=International Conference on Learning Representations | ||
| + | |год=2017 | ||
| + | }} | ||
Версия 12:10, 30 июня 2026
Содержание |
Многоклассовая классификация
Многоклассовая классификация (Шаблон:Lang-en) — задача Машинное обучение (Machine Learning), в которой требуется отнести каждый объект к одному из нескольких заранее известных взаимоисключающих классов. В отличие от бинарной классификации (Binary Classification), где возможны только два класса, при многоклассовой классификации число классов равно трём и более.
Данная задача широко применяется в компьютерном зрении (Computer Vision), обработке естественного языка (Natural Language Processing), Распознавание речи (Automatic Speech Recognition), медицинской диагностике, промышленной автоматизации и рекомендательных системах.
Постановка задачи
Пусть задано множество объектов <math>X</math> и конечное множество классов <math>Y={1,\ldots,K}</math>, где <math>K>2</math>. Требуется построить отображение
- <math>f:X\rightarrow Y,</math>
которое по признаковому описанию объекта определяет наиболее вероятный класс.
Во многих современных алгоритмах оцениваются не только сами классы, но и апостериорные вероятности
- <math>P(y=k\mid x),\qquad k=1,\ldots,K.</math>
Вероятности позволяют учитывать неопределённость модели, выбирать пороги принятия решений и выполнять Калибровка вероятностей (Probability Calibration).
Основные методы
Существует несколько подходов к решению задачи.
- Логистическая регрессия (Logistic Regression) с функцией Мягкий максимум (Softmax) — один из наиболее распространённых линейных методов.
- Дерево решений (Decision Tree) и Случайный лес (Random Forest) естественным образом поддерживают несколько классов.
- Градиентный бустинг (Gradient Boosting) обеспечивает высокую точность на табличных данных.
- Метод опорных векторов (Support Vector Machine) обычно использует схемы One-vs-Rest или One-vs-One.
- Нейронная сеть (Neural Network) с выходным слоем Softmax является стандартным решением для задач компьютерного зрения и обработки текстов.
Во многих библиотеках машинного обучения поддержка многоклассовой классификации встроена и не требует специальных модификаций алгоритма.
Оценка качества
Точность модели оценивается с помощью различных метрик.
Наиболее распространённой является Точность классификации (Accuracy), однако при несбалансированных данных её использование может приводить к ошибочным выводам.
Часто также применяются:
- Матрица ошибок (Confusion Matrix);
- Precision и Recall;
- F-мера (F-score);
- Macro-, Micro- и Weighted-усреднение метрик;
- ROC-кривая (ROC Curve) и площадь под ней (AUC) в схемах One-vs-Rest.
При наличии выраженного дисбаланса классов предпочтение обычно отдаётся макроусреднённым метрикам, которые одинаково учитывают качество распознавания каждого класса.
Основные трудности
Практические задачи многоклассовой классификации редко бывают идеальными.
Наиболее распространёнными проблемами являются:
- Дисбаланс классов (Class Imbalance);
- недостаток размеченных данных;
- шум и ошибки в разметке;
- сильное сходство отдельных классов;
- Переобучение (Overfitting);
- появление объектов, принадлежащих неизвестным классам (Open-set Recognition).
Для борьбы с этими проблемами применяются Регуляризация (Regularization), Аугментация данных (Data Augmentation), взвешивание функции потерь, повторная выборка данных, ансамбли моделей и методы оценки неопределённости.
Современные направления исследований
Активно развиваются методы Глубокое обучение (Deep Learning), позволяющие автоматически извлекать информативные признаки из изображений, текста и звука.
Большое внимание уделяется следующим направлениям:
- Трансформер (Transformer);
- Самообучение (Self-supervised Learning);
- Обучение с переносом (Transfer Learning);
- Обнаружение выхода за пределы распределения (Out-of-Distribution Detection);
- Калибровка вероятностей (Probability Calibration);
- Объяснимый искусственный интеллект (Explainable AI).
Эти исследования направлены на повышение устойчивости моделей и повышение доверия пользователей к принимаемым ими решениям.
Риски и ограничения
Несмотря на широкое распространение многоклассовой классификации, её применение связано с рядом рисков.
Некорректная интерпретация результатов
Наиболее распространённым риском является неверное понимание вероятностей модели. Высокое значение Softmax не всегда означает высокую уверенность классификатора.
Для уменьшения риска применяются методы Калибровка вероятностей (Probability Calibration), доверительные интервалы и оценка неопределённости. Исследования в области Согласованность искусственного интеллекта (AI Alignment) стремятся сделать оценки уверенности моделей более соответствующими реальному уровню знаний системы, чтобы пользователи принимали более обоснованные решения.
Смещение обучающих данных
Если обучающая выборка недостаточно представляет некоторые группы объектов, модель систематически ошибается именно на них.
Для снижения риска используются балансировка данных, аудит датасетов, мониторинг качества после внедрения и методы Справедливость машинного обучения (Fair Machine Learning).
Работы по AI Alignment уделяют большое внимание обнаружению систематических смещений, разработке процедур оценки справедливости моделей и созданию более репрезентативных наборов данных.
Ошибки в критически важных приложениях
В медицинской диагностике, управлении транспортом или промышленной автоматизации ошибки классификации могут приводить к серьёзным последствиям.
Поэтому применяются ансамбли моделей, контроль человеком (Human-in-the-loop), оценка неопределённости, независимая валидация и сертификация программного обеспечения.
Исследования по AI Alignment ориентированы на повышение надёжности моделей, интерпретируемости решений, отказоустойчивости и безопасного поведения при недостаточной уверенности.
См. также
- Бинарная классификация
- Многозначная классификация
- Обучение с учителем
- Глубокое обучение
- Калибровка вероятностей
- Матрица ошибок
- Обнаружение выхода за пределы распределения
Примечания
Литература
Christopher M. Bishop Pattern Recognition and Machine Learning. — New York: Springer, 2006.
Kevin P. Murphy Machine Learning: A Probabilistic Perspective. — Cambridge: MIT Press, 2012.
Aurélien Géron Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow. — 3. — Sebastopol: O'Reilly Media, 2022.
Guo C., Pleiss G., Sun Y., Weinberger K. Q. On Calibration of Modern Neural Networks // Proceedings of the 34th International Conference on Machine Learning. — 2017. — С. 1321–1330.
Hendrycks D., Gimpel K. A Baseline for Detecting Misclassified and Out-of-Distribution Examples in Neural Networks // International Conference on Learning Representations. — 2017.

