Как построить путаницу для мультиклассового классификатора?


12

У меня проблема с 6 классами. Поэтому я строю мультиклассовый классификатор следующим образом: для каждого класса у меня есть один классификатор логистической регрессии, использующий один против всех, что означает, что у меня есть 6 различных классификаторов.

Я могу сообщить матрицу путаницы для каждого из моих классификаторов. Но я хотел бы сообщить матрицу путаницы для ВСЕХ классификаторов, как я видел во многих примерах здесь.

Как мне это сделать? Нужно ли менять стратегию классификации, используя алгоритм «Один против одного» вместо «Один против всех»? Потому что на этих матрицах путаницы в отчетах говорится о ложных срабатываниях для каждого класса.

Пример мультиклассовой матрицы путаницы

Мультиклассовая матрица путаницы

Я хотел бы найти количество неправильно классифицированных предметов. В первом ряду 137 примеров класса 1, которые были классифицированы как класс 1, и 13 примеров класса 1, которые были классифицированы как класс 2 . Как получить этот номер?


Количество неправильно классифицированных элементов - это сумма всех элементов в матрице за вычетом следа матрицы ... но я не думаю, что это то, что вы имеете в виду.

1
Механически, вы получаете эту матрицу, сначала разделяя ваш набор тестов по фактическому классу (скажем, Target = 1, Target = 2 и т. Д.), А затем применяете свой обученный классификатор к каждой точке в каждой группе. Таким образом, для Target = 1 вы должны будете заполнить верхнюю строку матрицы, основываясь на том, сколько членов этой группы было присвоено каждому классу.

Это именно то, как это должно быть сделано ... Так механично, как вы сказали. Спасибо!
Виктор Лил

1
нет проблем. Я упоминал об этом более формально в своем посте, но иногда это помогает увидеть реальный рецепт.

Ответы:


6

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

NN×Nя,JяJ

Это просто прямое расширение матрицы смешения 2-х классов.


Да! Я знаю об этом! Но как сказать ложные срабатывания? Я имею в виду, есть примеры, где показано количество неправильно классифицированных элементов .... и мои классификаторы просто говорят: «Эй, есть 60 элементов класса А, и 40 из другого класса (я просто не могу сказать, какой это это ...) "
Виктор Лил

1
@VictorLeal Я не следую, матрица путаницы скажет вам ложное положительное, истинное положительное, истинное отрицательное, ложное отрицательное .. что пропущено?

1
@VictorLeal смотрите здесь: en.wikipedia.org/wiki/Confusion_matrix

Я знаю информацию, которую мы имеем в Матрице замешательства. Возможно, изображение лучше отражает то, о чем я говорю: Матрица смешения
Виктор Лил,

@VictorLeal Для меня это выглядит как нормальная матрица путаницы ... LHS показывает реальный класс, верхняя часть показывает назначенный класс ... я что-то упустил? Кроме того, вы должны добавить это изображение в свой пост .. это будет полезно

12

Хотя на этом форуме уже есть ответы, я решил дать четкие уравнения, чтобы сделать его более определенным:

Сзнак равнофактическийClassifedс11,,,с1NсN1сNN

Элементы путаницы для каждого класса определяются как:

Tпязнак равносяя

епязнак равноΣLзнак равно1NсLя-Tпя

еNязнак равноΣLзнак равно1NсяL-Tпя

TNязнак равноΣLзнак равно1NΣКзнак равно1NсLК-Tпя-епя-еNя


что такое л и л?
girl101

1
также, что такое tp, tn, fp, fn для всех классов вместе
girl101

tp = истинно положительный, fp = ложно-положительный, fn = ложно-отрицательный, tn = истинно-отрицательный. Я предполагаю, что индекс i является ссылкой на каждый класс.
Альберт

1

Используя матрицу, прикрепленную в вопросе, и рассматривая значения по вертикальной оси как фактический класс, а значения по горизонтальной оси - как прогноз. Тогда для класса 1:

  • True Positive = 137-> образцы класса 1, классифицированные как класс 1
  • Ложный положительный = 6-> (1 + 2 + 4) выборки классов 2, 3 и 4, но классифицированные как класс 1
  • False Negative = 18-> (13 + 3 + 1 + 1) выборки класса 1, но классифицируются как классы 2, 3, 6 и 7
  • Ture Negative = 581-> (55 + 1 + 6 ... + 2 + 26) Сумма всех значений в матрице, кроме значений в столбце 1 и строке 1
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.