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

Предположим, нам нужно предсказать пол человека. И мы пишем очень глупую модель, которая предсказывает, что все мужчины.

Для такой модели в пуле из 100 человек, где 90 мужчин и 10 женщин, точность составляет 90%. Это огромно и совершенно неправильно. Для такого контекста разработана матрица путаницы.

В научном наборе нам дается функция confusion_matrix, которая принимает истинное значение и прогнозируемое значение для расчета матрицы путаницы.

from sklearn.metrics import confusion_matrix
confusion_matrix(y_true, y_pred)

Матрица путаницы для двоичного классификатора

Матрица путаницы для бинарного классификатора представляет собой матрицу 2 X 2.

TN = количество истинно отрицательных результатов в соответствии с классификатором

TP = количество истинно положительных результатов согласно классификатору.

FP = количество ложноположительных результатов согласно классификатору

FN = количество ложноотрицательных результатов согласно классификатору

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

Пусть N означает общее количество прогнозов.

И N = TP + TN + FN + FP

Есть несколько терминов, связанных с матрицей путаницы:

Точность

Он определяет общее количество правильных прогнозов во всем наборе данных. Его можно рассчитать, разделив общее количество истинных положительных результатов и количество ложных отрицательных результатов на общее количество данных в наборе данных. Другими словами, это отношение правильных прогнозов к общему количеству прогнозов.

Точность = (TP + FN) / N

Частота ошибок

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

Коэффициент ошибок = (FP + TN) / N

Отзыв / Истинный положительный показатель / Чувствительность

Он рассчитывается путем деления общего количества истинных положительных результатов на сумму количества истинных положительных результатов и количества ложноотрицательных результатов. Другими словами, это соотношение правильных положительных результатов и правильных прогнозов.

Отзыв = TP / (TP + FN)

Точность/положительная прогностическая ценность

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

Точность = TP / (TP + FP)

Специфичность / доля истинно отрицательных результатов

Он рассчитывается путем деления общего количества истинно отрицательных результатов на сумму числа истинно отрицательных и ложноотрицательных результатов. Другими словами, это соотношение правильных и прогнозируемых отрицательных результатов.

Специфичность = FN / (TN + FP)

Ложноположительный результат

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

FPR = FP / (TN + FP)

Матрица путаницы для многоклассового/многометочного классификатора

Предположим, мы хотим разделить фрукты в корзине на 4 класса: яблоко, виноград, бананы и апельсины.

Тогда матрица путаницы для этой задачи классификации будет матрицей 4 x 4. Таким образом, матрица путаницы представляет собой матрицу N x N, где N — количество меток или классов.

В приведенной выше матрице попробуем рассчитать TP, FP, TN и FN для оранжевого цвета.

TP = 15

Мы можем видеть это в последнем столбце и последней строке. 15 апельсинов были правильно классифицированы.

FP = 2 + 2 + 10 = 14

Мы можем видеть это в последнем столбце, кроме последней строки. 2 яблока, 2 винограда и 10 бананов ошибочно классифицируются как апельсины.

TN = 11 + 3 + 1 = 15

Мы можем видеть это в последней строке, кроме последнего столбца. 11 апельсинов были ошибочно классифицированы как яблоки, 3 из них — как виноград, а 1 — как бананы.

FN = 10 + 2 +1 + 5 + 12 + 1 + 5 + 2 + 18 = 56

Все остальные классификации, кроме последней строки и последнего столбца, можно классифицировать как ложноотрицательные, поскольку они не были апельсинами и не были классифицированы как апельсины.

Заключение

Лично меня всегда смущали термины матрицы путаницы и то, как матрица путаницы представлена ​​в классификации с несколькими метками. Поэтому я решил написать об этом, так как это может помочь другим людям, таким как я. Надеюсь, понятно, так как я старался добавлять много иллюстраций. Ваше здоровье.

Присоединяйтесь к FAUN: Сайт💻|Подкаст🎙️|Twitter🐦|Facebook👥 |Instagram📷|Группа Facebook🗣️|Группа Linkedin💬| Slack 📱|Cloud Native Новости📰|Дополнительно.

Если этот пост был полезен, пожалуйста, несколько раз нажмите кнопку аплодисментов 👏 ниже, чтобы выразить свою поддержку автору 👇