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

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

(Различия между версиями)
Перейти к: навигация, поиск
(Ключевые идеи и подходы)
 
(10 промежуточных версий не показаны.)
Строка 1: Строка 1:
 +
{{well|Статья написана с использованием LLM '''ChatGPT 5.5''' и проверена участником [[Liliia Davletova]]}}
 +
= Многоклассовая классификация =
= Многоклассовая классификация =
-
[[Многоклассовая классификация]] — задача машинного обучения, в которой модель должна отнести входной объект к одному из более чем двух классов. В отличие от [[бинарная классификация|бинарной классификации]] (где есть только два класса, например «спам»/«не спам»), здесь пространство решений богаче: например, классификация изображений по типам животных («кошка», «собака», «попугай», «черепаха») или определение жанра текста («новости», «спорт», «культура», «экономика»).
+
'''Многоклассовая классификация''' — задача [[машинное обучение|машинного обучения]], в которой требуется отнести каждый объект к одному из трёх и более взаимоисключающих [[класс (машинное обучение)|классов]] на основании наблюдаемых [[признак (машинное обучение)|признаков]]. Является одним из фундаментальных разделов [[обучение с учителем|обучения с учителем]] и применяется в [[компьютерное зрение|компьютерном зрении]], [[обработка естественного языка|обработке естественного языка]], [[биоинформатика|биоинформатике]], медицинской диагностике, рекомендательных системах и других областях.
 +
 
 +
В отличие от [[бинарная классификация|бинарной классификации]], где возможны только два класса, при многоклассовой классификации алгоритм выбирает один класс из множества возможных. Примерами являются распознавание рукописных цифр (10 классов), классификация видов растений, определение языка текста или диагностика заболевания по нескольким категориям.
== Постановка задачи ==
== Постановка задачи ==
-
Формально задача ставится так:
+
Пусть задано множество объектов
-
- Дано множество объектов $X$ (например, векторы признаков).
+
 
-
- Дано конечное множество классов $Y = \{c_1, c_2, \dots, c_K\}$, где $K > 2$.
+
:<tex>\mathcal{D} = {(x_i, y_i)}_{i=1}^{N},</tex>
-
- Требуется построить функцию (модель) $f: X \to Y$, которая по объекту $x$ предсказывает его класс $y$.
+
 
 +
где <tex>x_i \in \mathbb{R}^{d}</tex> — вектор признаков, а
 +
 
 +
:<tex>y_i \in {1,\ldots,K}</tex>
 +
 
 +
— номер одного из <tex>K</tex> классов.
 +
 
 +
Требуется построить функцию
 +
 
 +
:<tex>f : X \rightarrow {1,\ldots,K},</tex>
 +
 
 +
которая минимизирует вероятность ошибки на новых данных.
 +
 
 +
Во многих современных алгоритмах модель оценивает вероятности принадлежности объекта каждому классу
 +
 
 +
:<tex>P(y=k\mid x),</tex>
 +
 
 +
после чего выбирается класс с максимальной вероятностью:
 +
 
 +
:<tex>\hat y=\arg\max_k P(y=k|x).</tex>
 +
 
 +
== История ==
 +
 
 +
Первые методы многоклассовой классификации появились в статистической теории распознавания образов в середине XX века. Существенный вклад внесли работы по [[линейный дискриминантный анализ|линейному дискриминантному анализу]], [[логистическая регрессия|логистической регрессии]] и [[байесовский классификатор|байесовским классификаторам]].
 +
 
 +
В 1990-х годах широкое распространение получили методы, основанные на [[метод опорных векторов|методе опорных векторов]], для которых были предложены схемы сведения многоклассовой задачи к нескольким бинарным задачам.
 +
 
 +
С начала 2010-х годов доминирующими стали методы [[глубокое обучение|глубокого обучения]], использующие многослойные [[искусственная нейронная сеть|нейронные сети]] и функцию потерь [[Softmax|Softmax]] с [[кросс-энтропия|кросс-энтропией]].
 +
 
 +
== Основные подходы ==
 +
 
 +
=== Прямые многоклассовые модели ===
 +
 
 +
Некоторые алгоритмы непосредственно оптимизируют многоклассовую постановку:
 +
 
 +
* [[логистическая регрессия|многономиальная логистическая регрессия]];
 +
* [[дерево решений|деревья решений]];
 +
* [[случайный лес]];
 +
* [[градиентный бустинг]];
 +
* [[искусственная нейронная сеть|нейронные сети]];
 +
* [[наивный байесовский классификатор]].
 +
 
 +
В нейронных сетях обычно используется последний слой Softmax, который преобразует выходы модели в вероятностное распределение по классам.
 +
 
 +
=== Сведение к бинарной классификации ===
 +
 
 +
Для алгоритмов, ориентированных на бинарные задачи, применяются специальные схемы.
 +
 
 +
==== One-vs-Rest ====
 +
 
 +
Каждый классификатор обучается отличать один класс от всех остальных.
 +
 
 +
Преимущества:
 +
 
 +
* простота реализации;
 +
* небольшое число моделей (<tex>K</tex>).
 +
 
 +
Недостатки:
 +
 
 +
* возможен сильный дисбаланс классов;
 +
* вероятности различных моделей плохо согласованы между собой.
 +
 
 +
==== One-vs-One ====
 +
 
 +
Строится отдельный классификатор для каждой пары классов.
 +
 
 +
Количество моделей составляет
 +
 
 +
:<tex>\frac{K(K-1)}{2}</tex>
 +
 
 +
Итоговое решение принимается голосованием либо агрегированием вероятностей.
 +
 
 +
==== Error-Correcting Output Codes ====
 +
 
 +
Метод использует кодирование классов длинными двоичными кодами, что позволяет повысить устойчивость к ошибкам отдельных бинарных классификаторов.
 +
 
 +
== Методы машинного обучения ==
 +
 
 +
=== Логистическая регрессия ===
 +
 
 +
Многономиальная логистическая регрессия моделирует вероятности всех классов одновременно посредством функции Softmax. Благодаря выпуклой оптимизации является одним из наиболее интерпретируемых методов.
 +
 
 +
=== Метод опорных векторов ===
 +
 
 +
Классический [[метод опорных векторов]] первоначально был разработан для бинарной классификации. Для многоклассовых задач обычно используются схемы One-vs-One, One-vs-Rest либо специализированные многоклассовые постановки.
 +
 
 +
=== Деревья решений ===
 +
 
 +
[[Дерево решений|Деревья решений]] разбивают пространство признаков на области, соответствующие различным классам. Они легко интерпретируются и способны учитывать нелинейные зависимости.
 +
 
 +
=== Ансамблевые методы ===
 +
 
 +
[[Случайный лес]] и [[градиентный бустинг]] являются одними из наиболее успешных классических алгоритмов. Они эффективно работают с табличными данными и устойчивы к шуму.
 +
 
 +
=== Глубокие нейронные сети ===
 +
 
 +
Современные [[искусственная нейронная сеть|нейронные сети]] являются стандартом де-факто для задач компьютерного зрения и обработки естественного языка. Архитектуры [[свёрточная нейронная сеть|CNN]], [[трансформер (машинное обучение)|Transformer]] и [[Vision Transformer]] позволяют классифицировать тысячи категорий с высокой точностью.
 +
 
 +
== Функции потерь ==
 +
 
 +
Наиболее распространённой является категориальная кросс-энтропия:
 +
 
 +
:<tex>L=-\sum_{k=1}^{K} y_k \log p_k.</tex>
 +
 
 +
Для несбалансированных данных применяются:
 +
 
 +
* [[Focal Loss]];
 +
* взвешенная кросс-энтропия;
 +
* Label Smoothing;
 +
* Balanced Softmax.
 +
 
 +
== Оценка качества ==
 +
 
 +
Для оценки качества многоклассовых моделей используются:
 +
 
 +
* [[accuracy]];
 +
* [[precision]];
 +
* [[recall]];
 +
* [[F-мера]];
 +
* [[матрица ошибок]];
 +
* Macro Average;
 +
* Micro Average;
 +
* Weighted Average;
 +
* Top-k Accuracy;
 +
* Log Loss.
 +
 
 +
При сильном дисбалансе классов точность (Accuracy) может быть недостаточно информативной, поэтому обычно дополнительно анализируются Precision, Recall и F-мера.
 +
 
 +
== Дисбаланс классов ==
 +
 
 +
Во многих практических задачах различные классы представлены неодинаково.
 +
 
 +
Для борьбы с дисбалансом применяются:
 +
 
 +
* повторная выборка данных;
 +
* генерация примеров ([[SMOTE]]);
 +
* взвешивание функции потерь;
 +
* Focal Loss;
 +
* ансамблевые методы.
 +
 
 +
== Современные исследования ==
 +
 
 +
В последние годы исследования сосредоточены на нескольких направлениях.
 +
 
 +
=== Большое число классов ===
 +
 
 +
В задачах поиска изображений и интернет-каталогов число классов может достигать миллионов. Для таких случаев разрабатываются иерархические Softmax, Approximate Nearest Neighbor и методы поиска по эмбеддингам.
 +
 
 +
=== Few-shot и Zero-shot классификация ===
-
На практике модель часто выдаёт не жёсткий класс, а вектор вероятностей $p = (p_1, \dots, p_K)$, где $p_k$ — оценка вероятности принадлежности к классу $c_k$. Затем выбирается класс с максимальной вероятностью: $\hat{y} = \arg\max_k p_k$.
+
Современные модели способны распознавать новые категории по небольшому числу примеров (Few-shot Learning) либо исключительно по текстовому описанию (Zero-shot Learning).
-
== Ключевые идеи и подходы ==
+
Наиболее известными моделями являются [[CLIP]] и последующие мультимодальные архитектуры.
-
=== Один против всех (One-vs-Rest, OvR) ===
+
=== Самообучение ===
-
Идея: обучить <tex>K</tex> бинарных классификаторов, каждый из которых отделяет один класс от всех остальных. При предсказании выбирается класс, чей классификатор выдал наибольшую уверенность.
+
Всё большую популярность приобретают методы [[самообучение|самообучения]], позволяющие предварительно обучать представления без разметки, после чего выполнять многоклассовую классификацию с небольшим количеством размеченных данных.
-
Подходит для многих базовых моделей (логистическая регрессия, SVM и т.д.), но может быть менее согласованным, чем методы, изначально многоклассовые.
+
=== Калибровка вероятностей ===
-
=== Один против одного (One-vs-One, OvO) ===
+
Одной из актуальных задач является получение хорошо откалиброванных вероятностей. Наиболее распространены методы Temperature Scaling, Platt Scaling и Isotonic Regression.
-
Строится <tex>\binom{K}{2}</tex> классификаторов, каждый из которых различает пару классов. Итоговый класс определяется голосованием. Часто используется с [[SVM|методом опорных векторов]], когда число классов не слишком велико.
+
== Области применения ==
-
=== Нативные многоклассовые модели ===
+
Многоклассовая классификация используется в:
-
Некоторые алгоритмы изначально поддерживают многоклассовость:
+
* [[компьютерное зрение|компьютерном зрении]];
-
- [[Деревья решений]] и ансамбли на их основе (Random Forest, Gradient Boosting) умеют напрямую предсказывать распределение по классам.
+
* [[обработка естественного языка|обработке естественного языка]];
-
- [[Нейронные сети]] обычно завершаются слоем [[softmax]], который преобразует логиты в вероятности по всем классам.
+
* [[медицинская диагностика|медицинской диагностике]];
-
- Многие реализации [[логистическая регрессия|логистической регрессии]] поддерживают многоклассовый вариант (multinomial logistic regression).
+
* [[биоинформатика|биоинформатике]];
 +
* анализе спутниковых изображений;
 +
* промышленном контроле качества;
 +
* рекомендательных системах;
 +
* робототехнике;
 +
* финансовом анализе;
 +
* обнаружении вредоносного программного обеспечения.
-
== Функции потерь и метрики ==
+
== См. также ==
-
Для обучения многоклассовых моделей чаще всего используют:
+
* [[Машинное обучение]]
-
- [[Cross-entropy loss|Категориальную кросс-энтропию]] (categorical cross-entropy) — стандарт для нейросетей и вероятностных моделей.
+
* [[Обучение с учителем]]
-
- Потери на основе маржи (в SVM) с многоклассовыми формулировками.
+
* [[Бинарная классификация]]
 +
* [[Логистическая регрессия]]
 +
* [[Метод опорных векторов]]
 +
* [[Дерево решений]]
 +
* [[Случайный лес]]
 +
* [[Глубокое обучение]]
 +
* [[Кросс-энтропия]]
 +
* [[Матрица ошибок]]
-
Распространённые метрики качества:
+
== Примечания ==
-
- [[Accuracy|Точность (accuracy)]] — доля правильно классифицированных объектов.
+
-
- [[Precision, Recall, F1|Precision, recall, F1]] — часто усредняют по классам (macro/micro/weighted).
+
-
- [[Confusion matrix|Матрица ошибок]] — помогает увидеть, какие классы чаще всего путаются.
+
-
== Практические сложности и решения ==
+
{{примечания}}
-
- [[Дисбаланс классов]]: некоторые классы встречаются намного реже. Решения: взвешивание классов в функции потерь, перебалансировка выборки, использование метрик, устойчивых к дисбалансу.
+
== Литература ==
-
- Переобучение при большом числе классов: регуляризация, ансамбли, трансферное обучение (особенно в задачах компьютерного зрения и NLP).
+
-
- Интерпретируемость: в сложных моделях (глубокие сети) полезно применять методы вроде [[SHAP]] или [[LIME]].
+
-
== Примеры задач и областей применения ==
+
* {{статья
 +
| автор = Bishop C. M.
 +
| заглавие = Pattern Recognition and Machine Learning
 +
| язык = en
 +
| издательство = Springer
 +
| год = 2006
 +
}}
-
- Распознавание изображений (ImageNet, CIFAR-100): сотни классов объектов.
+
* {{книга
-
- Классификация текстов по темам или тональности.
+
| автор = Hastie T., Tibshirani R., Friedman J.
-
- Медицинская диагностика: выбор из нескольких заболеваний.
+
| заглавие = The Elements of Statistical Learning
-
- Распознавание речи и классификация намерений (intent classification) в чат-ботах.
+
| издание = 2-е
 +
| издательство = Springer
 +
| год = 2009
 +
| язык = en
 +
}}
-
== Современные тренды и научные результаты ==
+
* {{статья
 +
| автор = Rifkin R., Klautau A.
 +
| заглавие = In Defense of One-vs-All Classification
 +
| издание = Journal of Machine Learning Research
 +
| год = 2004
 +
| том = 5
 +
| страницы = 101–141
 +
}}
-
В последние годы акцент смещается на:
+
* {{статья
-
- Масштабирование числа классов (extreme classification) с миллионами категорий.
+
| автор = Dietterich T., Bakiri G.
-
- Эффективные архитектуры и методы нормализации (BatchNorm, LayerNorm), улучшающие сходимость softmax-слоёв.
+
| заглавие = Solving Multiclass Learning Problems via Error-Correcting Output Codes
-
- Контрастивные и метрические подходы (metric learning), где классификация сводится к поиску ближайшего представителя класса в эмбеддинг-пространстве.
+
| издание = Journal of Artificial Intelligence Research
 +
| год = 1995
 +
| том = 2
 +
| страницы = 263–286
 +
}}
-
Актуальные обзоры по теме:
+
* {{статья
-
- Bengio et al., «Deep Learning» (книга, глава про классификацию и softmax).
+
| автор = Deng J., Dong W., Socher R., Li L.-J., Li K., Fei-Fei L.
-
- Goodfellow, Bengio, Courville, «Deep Learning», MIT Press, 2016 — классический учебник с подробным разбором многоклассовой классификации и кросс-энтропии.
+
| заглавие = ImageNet: A Large-Scale Hierarchical Image Database
-
- Статьи по extreme classification в материалах конференций NeurIPS, ICML, KDD — для продвинутых методов с очень большим числом классов.
+
| издание = CVPR
 +
| год = 2009
 +
}}
-
== Полезные ссылки и ресурсы ==
+
* {{статья
 +
| автор = He K., Zhang X., Ren S., Sun J.
 +
| заглавие = Deep Residual Learning for Image Recognition
 +
| издание = CVPR
 +
| год = 2016
 +
}}
-
- Документация библиотек: scikit-learn (реализация OvR/OvO, Random Forest, логистическая регрессия), XGBoost, LightGBM, PyTorch, TensorFlow.
+
* {{статья
-
- Репозитории с бенчмарками и датасетами: ImageNet, CIFAR, MNIST (как учебный пример), UCI Machine Learning Repository.
+
| автор = Radford A. и др.
 +
| заглавие = Learning Transferable Visual Models From Natural Language Supervision
 +
| издание = ICML
 +
| год = 2021
 +
}}
-
== Для новичка: как начать ==
+
* {{статья
 +
| автор = Guo C., Pleiss G., Sun Y., Weinberger K.
 +
| заглавие = On Calibration of Modern Neural Networks
 +
| издание = ICML
 +
| год = 2017
 +
}}
-
1. Возьмите простой датасет (например, Iris или рукописные цифры MNIST).
+
* {{статья
-
2. Обучите несколько моделей: логистическую регрессию, дерево решений, случайный лес.
+
| автор = Lin T.-Y., Goyal P., Girshick R., He K., Dollár P.
-
3. Сравните метрики (accuracy, F1), посмотрите матрицу ошибок.
+
| заглавие = Focal Loss for Dense Object Detection
-
4. Попробуйте добавить дисбаланс классов и оцените, как меняются результаты.
+
| издание = ICCV
-
5. Изучите, как меняется выход модели (вероятности классов) и как работает argmax.
+
| год = 2017
 +
}}
-
== Для профессионала: на что обратить внимание ==
+
* {{cite web
 +
| url = https://scikit-learn.org/stable/modules/multiclass.html
 +
| title = Multiclass and Multioutput Algorithms
 +
| website = scikit-learn
 +
| language = en
 +
| access-date = 2026-06-30
 +
}}
-
- Выбор правильной функции потерь и калибровки вероятностей (Platt scaling, isotonic regression).
+
* {{cite web
-
- Работа с экстремальным числом классов: иерархические классификации, отрицательные выборки, специализированные слои.
+
| url = https://pytorch.org/docs/stable/generated/torch.nn.CrossEntropyLoss.html
-
- Учёт структуры классов (семантические связи, онтологии) для улучшения обобщения.
+
| title = CrossEntropyLoss
-
- Анализ ошибок: какие пары классов систематически путаются и почему.
+
| website = PyTorch Documentation
 +
| language = en
 +
| access-date = 2026-06-30
 +
}}
-
[[Категория:Машинное обучение]] [[Категория:Классификация]]
+
* {{cite web
 +
| url = https://keras.io/api/losses/probabilistic_losses/
 +
| title = Probabilistic Losses
 +
| website = Keras Documentation
 +
| language = en
 +
| access-date = 2026-06-30
 +
}}

Текущая версия

Статья написана с использованием LLM ChatGPT 5.5 и проверена участником Liliia Davletova


Содержание

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

Многоклассовая классификация — задача машинного обучения, в которой требуется отнести каждый объект к одному из трёх и более взаимоисключающих классов на основании наблюдаемых признаков. Является одним из фундаментальных разделов обучения с учителем и применяется в компьютерном зрении, обработке естественного языка, биоинформатике, медицинской диагностике, рекомендательных системах и других областях.

В отличие от бинарной классификации, где возможны только два класса, при многоклассовой классификации алгоритм выбирает один класс из множества возможных. Примерами являются распознавание рукописных цифр (10 классов), классификация видов растений, определение языка текста или диагностика заболевания по нескольким категориям.

Постановка задачи

Пусть задано множество объектов

\mathcal{D} = {(x_i, y_i)}_{i=1}^{N},

где x_i \in \mathbb{R}^{d} — вектор признаков, а

y_i \in {1,\ldots,K}

— номер одного из K классов.

Требуется построить функцию

f : X \rightarrow {1,\ldots,K},

которая минимизирует вероятность ошибки на новых данных.

Во многих современных алгоритмах модель оценивает вероятности принадлежности объекта каждому классу

P(y=k\mid x),

после чего выбирается класс с максимальной вероятностью:

\hat y=\arg\max_k P(y=k|x).

История

Первые методы многоклассовой классификации появились в статистической теории распознавания образов в середине XX века. Существенный вклад внесли работы по линейному дискриминантному анализу, логистической регрессии и байесовским классификаторам.

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

С начала 2010-х годов доминирующими стали методы глубокого обучения, использующие многослойные нейронные сети и функцию потерь Softmax с кросс-энтропией.

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

Прямые многоклассовые модели

Некоторые алгоритмы непосредственно оптимизируют многоклассовую постановку:

В нейронных сетях обычно используется последний слой Softmax, который преобразует выходы модели в вероятностное распределение по классам.

Сведение к бинарной классификации

Для алгоритмов, ориентированных на бинарные задачи, применяются специальные схемы.

One-vs-Rest

Каждый классификатор обучается отличать один класс от всех остальных.

Преимущества:

  • простота реализации;
  • небольшое число моделей (K).

Недостатки:

  • возможен сильный дисбаланс классов;
  • вероятности различных моделей плохо согласованы между собой.

One-vs-One

Строится отдельный классификатор для каждой пары классов.

Количество моделей составляет

\frac{K(K-1)}{2}

Итоговое решение принимается голосованием либо агрегированием вероятностей.

Error-Correcting Output Codes

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

Методы машинного обучения

Логистическая регрессия

Многономиальная логистическая регрессия моделирует вероятности всех классов одновременно посредством функции Softmax. Благодаря выпуклой оптимизации является одним из наиболее интерпретируемых методов.

Метод опорных векторов

Классический метод опорных векторов первоначально был разработан для бинарной классификации. Для многоклассовых задач обычно используются схемы One-vs-One, One-vs-Rest либо специализированные многоклассовые постановки.

Деревья решений

Деревья решений разбивают пространство признаков на области, соответствующие различным классам. Они легко интерпретируются и способны учитывать нелинейные зависимости.

Ансамблевые методы

Случайный лес и градиентный бустинг являются одними из наиболее успешных классических алгоритмов. Они эффективно работают с табличными данными и устойчивы к шуму.

Глубокие нейронные сети

Современные нейронные сети являются стандартом де-факто для задач компьютерного зрения и обработки естественного языка. Архитектуры CNN, Transformer и Vision Transformer позволяют классифицировать тысячи категорий с высокой точностью.

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

Наиболее распространённой является категориальная кросс-энтропия:

L=-\sum_{k=1}^{K} y_k \log p_k.

Для несбалансированных данных применяются:

  • Focal Loss;
  • взвешенная кросс-энтропия;
  • Label Smoothing;
  • Balanced Softmax.

Оценка качества

Для оценки качества многоклассовых моделей используются:

При сильном дисбалансе классов точность (Accuracy) может быть недостаточно информативной, поэтому обычно дополнительно анализируются Precision, Recall и F-мера.

Дисбаланс классов

Во многих практических задачах различные классы представлены неодинаково.

Для борьбы с дисбалансом применяются:

  • повторная выборка данных;
  • генерация примеров (SMOTE);
  • взвешивание функции потерь;
  • Focal Loss;
  • ансамблевые методы.

Современные исследования

В последние годы исследования сосредоточены на нескольких направлениях.

Большое число классов

В задачах поиска изображений и интернет-каталогов число классов может достигать миллионов. Для таких случаев разрабатываются иерархические Softmax, Approximate Nearest Neighbor и методы поиска по эмбеддингам.

Few-shot и Zero-shot классификация

Современные модели способны распознавать новые категории по небольшому числу примеров (Few-shot Learning) либо исключительно по текстовому описанию (Zero-shot Learning).

Наиболее известными моделями являются CLIP и последующие мультимодальные архитектуры.

Самообучение

Всё большую популярность приобретают методы самообучения, позволяющие предварительно обучать представления без разметки, после чего выполнять многоклассовую классификацию с небольшим количеством размеченных данных.

Калибровка вероятностей

Одной из актуальных задач является получение хорошо откалиброванных вероятностей. Наиболее распространены методы Temperature Scaling, Platt Scaling и Isotonic Regression.

Области применения

Многоклассовая классификация используется в:

См. также

Примечания

Литература

  • Bishop C. M. Pattern Recognition and Machine Learning. — Springer, 2006.
  • Hastie T., Tibshirani R., Friedman J. The Elements of Statistical Learning. — 2-е. — Springer, 2009.
  • Rifkin R., Klautau A. In Defense of One-vs-All Classification // Journal of Machine Learning Research. — 2004. — Т. 5. — С. 101–141.
  • Dietterich T., Bakiri G. Solving Multiclass Learning Problems via Error-Correcting Output Codes // Journal of Artificial Intelligence Research. — 1995. — Т. 2. — С. 263–286.
  • Deng J., Dong W., Socher R., Li L.-J., Li K., Fei-Fei L. ImageNet: A Large-Scale Hierarchical Image Database // CVPR. — 2009.
  • He K., Zhang X., Ren S., Sun J. Deep Residual Learning for Image Recognition // CVPR. — 2016.
  • Radford A. и др. Learning Transferable Visual Models From Natural Language Supervision // ICML. — 2021.
  • Guo C., Pleiss G., Sun Y., Weinberger K. On Calibration of Modern Neural Networks // ICML. — 2017.
  • Lin T.-Y., Goyal P., Girshick R., He K., Dollár P. Focal Loss for Dense Object Detection // ICCV. — 2017.
Личные инструменты