Мультиклассовая классификация (Multiclass classification) Скачать в PDF
Синонимы: Мультиноминальная классификация
Разделы: Алгоритмы
В машинном обучении мультиклассовой называют задачу классификация, в которой метка класса принимает более чем два значения. В анализе данных наиболее часто реализуется именно этот вид классификации.
Задача формулируется следующим образом. Пусть задан обучающий набор данных , , где — число примеров, — вектор признаков, — метка класса -го примера. Требуется построить классификатор, который для каждого будет правильно предсказывать , причем не только на обучающем множестве , но и для любых наблюдений, в него не входящих (т.е. классификатор должен обладать обобщающей способностью).
В машинном обучении используется множество алгоритмов и методов классификации. Некоторые из них поддерживают возможность работы с несколькими классами естественным образом (нейронные сети, деревья решений, метод k-ближайших соседей и т.д.). Другие — бинарные, т.е. могут решать задачи классификации только для двух классов (логистическая и пробит регрессия, машины опорных векторов, линейный дискриминантный анализ и т.д.).
При этом задачу мультиклассовой классификации можно свести к нескольким задачам бинарной, что в некоторых случаях позволяет получить более точное и простое решение. Кроме этого, алгоритмы бинарной классификации более разработаны и математически обоснованы, в то время как мультиклассовые являются эвристиками.
Существуют несколько методов, которые позволяют преобразовать мультиклассовую задачу в набор бинарных.
Один против всех (One-versus-all, OvA или один против остальных, One-versus-rest, OvR). Для каждого класса строится один бинарный классификатор. При этом примеры класса определяются как «положительные», а всех других — как «отрицательные». Итоговый результат формируется по принципу «победитель получает все»: объект будет отнесен к классу, для которого бинарный классификатор даст большее число «положительных» примеров.
Метод имеет недостаток, что обычно каждый бинарный классификатор обучается в условиях дисбаланса классов, что снижает точность.
Один против одного (One versus One, OvO). Строится классификаторов, позволяющих различить любую пару примеров разных классов. Алгоритм просматривает все пары примеров с разными метками классов и для каждой решает бинарную задачу . В каждом случае для пар положительные — все примеры с метками , а отрицательными — с . Решение при этом имеет вид:
.
Недостатком метода является высокая трудоемкость: число классификаторов растет квадратично к числу примеров, в то время как у метода «один против всех» зависимость линейная.
Метод корректирующих кодов (Error-Correcting Output Codes — ECOC). Позволяет сократить число классификаторов с (как в методе OvA) до . Каждый класс кодируется в виде битовой последовательности, называемой кодовым словом. Однако при наличии даже одного некорректного бита в нем метка класса будет неверной. Чтобы избежать этого, вводится избыточность в виде нескольких дополнительных битов, называемых корректирующими.
Пусть каждый класс () связан с кодовым словом длиной . Обозначим -й бит -го кодового слова . Тогда набор кодовых слов можно представить в виде кодовой матрицы , где каждая -я строка описывает кодовое слово , а столбец соответствует бинарному классификатору . Множество классификаторов обозначим как .
Кодовая матрица, таким образом, описывает схему исходной мультиклассовой задачи. В каждом -м столбце -я строка содержат 1 для тех классов, обучающие примеры которых используются как положительные, и 0 — для тех, которые считаются отрицательными для данного классификатора . Например, для задачи с 4-мя классами и 6-ю классификаторами, кодовая матрица может иметь вид:
Класс | ||||||
---|---|---|---|---|---|---|
1 | 1 | 1 | 1 | 0 | 0 | 0 |
2 | 1 | 0 | 0 | 1 | 1 | 0 |
3 | 0 | 0 | 0 | 1 | 0 | 1 |
4 | 0 | 0 | 1 | 0 | 1 | 1 |
Из таблицы видно, что первый классификатор использует классы 1 и 2 как положительные примеры, а для классов 3 и 4 — как отрицательные.
в процессе классификации используются все бинарные классификаторы, которые совместно формируют -мерный вектор предсказаний. Он декодируется в одно из исходных значений классов, например, путем присвоения объекту того класса, кодовое слово которого наиболее близко к предсказанному вектору.
Таким образом, для примера все бинарные классификаторы формируют предсказания, образующие вектор , который сравнивается с кодовыми словами для классов. Класс , кодовое слово которого окажется наиболее близким к в смысле некоторой метрики , и будет служить общим предсказанием мультиклассового классификатора:
.
Мерой близости между двоичными векторами может служить расстояние Хемминга, определяемое как число битовых позиций, в которых предсказанный вектор отличается от кодового слова класса , т.е.
.
Число классификаторов превосходит количество классов, т.е. , что позволяет использовать более длинные кодовые слова. Поэтому сопоставление предсказанного вектора не будет искажено ошибками отдельных бинарных классификаторов.
Таким образом, метод корректирующих кодов не только позволяет сводить сложные мультиклассовые задачи классификации к набору бинарных, но и позволяет добиться более высокой точности.
Полиномиальная логистическая регрессия. Использует для преобразования бинарной классификации к мультиклассовой логистическую регрессию. Она является бинарным классификатором, формирующим на выходе рейтинг, изменяющийся в диапазоне от 0 до 1. Он может быть интерпретирован как вероятность принадлежности к «положительному» классу.
Для этого используется дискриминационный порог: если рейтинг выше его значения, то объект относится к «положительному» классу, в противном случе — к «отрицательному».
В основе работы модели лежит функция, называемая softmax обобщение логистической функции для многомерного случая. Она преобразует вектор размерности в вектор той же размерности, каждый элемент в интервале , сумма которых равна 1. Элементы нового вектора интерпретируются как вероятности принадлежности объекта к соответствующему классу.
Softmax-регрессия — это алгоритм машинного обучения с учителем, используемый в задачах многоклассовой классификации. В отличие от обычной логистической регрессии, в нем используется не сигмоидальная функция активации , а векторная
,
где скалярная функция вида:
.
Несложно увидеть, что благодаря нормирующим свойствам знаменателя . Кроме того, . Эти два свойства позволяют интерпретировать данную величину как вероятность ‐го класса.
Более подробно с описанными методами можно ознакомиться в статье «Мультиклассовая классификация в машинном обучении».