Матрица путаницы

Составлено Даршилом Доши

1. Что такое матрица путаницы:

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

Матрица путаницы для бинарной классификации

Мы не можем полагаться на одно значение точности в классификации, когда классы несбалансированы. Например, у нас есть набор данных из 100 пациентов, 5 из которых больны диабетом, а 95 здоровы. Однако, если наша модель предсказывает только класс большинства, то есть все 100 человек здоровы, даже если у нас есть точность классификации 95%. Поэтому нам нужна матрица путаницы.

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

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

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

2. Рассчитайте матрицу путаницы:

Возьмем пример:

Всего у нас 10 кошек и собак, и наша модель предсказывает, кошка это или нет.

Фактические значения = ['собака', 'кошка', 'собака', 'кошка', 'собака', 'собака', 'кошка', 'собака', 'кошка', 'собака']
Прогнозируемые значения = ['собака', 'собака', 'собака', 'кошка', 'собака', 'собака', 'кошка', 'кошка', 'кошка', 'кошка']

Помните, что мы описываем прогнозируемые значения как положительные/отрицательные, а фактические значения как истинные/ложные.

Определение терминов:

Истинный позитив: вы предсказали положительный результат, и это правда. Вы предсказали, что животное — это кошка, и это действительно так.

True Negative: вы предсказали отрицательный результат, и это правда. Вы предсказали, что животное не кошка, и на самом деле это не кошка (это собака).

Ложноположительный результат (ошибка типа 1): вы предсказали положительный результат, но он оказался ложным. Вы предсказали, что животное — это кошка, но на самом деле это не так (это собака).

Ложноотрицательный результат (ошибка типа 2): вы предсказали отрицательный результат, и он оказался ложным. Вы предсказали, что животное не

кот но это на самом деле.

Точность классификации:

Точность классификации определяется соотношением:

Отзыв (он же Чувствительность):

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

Точность:

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

Помните: точность имеет прогнозирующиерезультаты в знаменателе.

Показатель F или показатель F1:

Трудно сравнивать две модели с разной точностью и отзывом. Поэтому, чтобы сделать их сопоставимыми, мы используем F-Score. Это Гармоническое Среднее Точности и Отзыва. По сравнению со средним арифметическим, гармоническое среднее больше наказывает крайние значения. F-оценка должна быть высокой.

Конкретность:

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

Пример интерпретации матрицы путаницы:

Давайте рассчитаем матрицу путаницы, используя приведенный выше пример с кошкой и собакой:

Точность классификации
Точность = (TP + TN) / (TP + TN + FP + FN) = (3+4)/(3+4+2+1) = 0,70

Припоминание: припоминание дает нам представление о том, когда на самом деле «да», и как часто оно предсказывает «да».
Припоминание = TP / (TP + FN) = 3/(3+1) = 0,75.

Точность. Точность говорит нам о том, когда она предсказывает «да», и как часто она оказывается верной.
Точность = TP / (TP + FP) = 3/(3+2) = 0,60.

F-показатель:
F-показатель = (2*напоминание*точность)/(напоминание+точность) = (2*0,75*0,60)/(0,75+0,60) = 0,67

Специфичность:
специфичность = TN / (TN + FP) = 4/(4+2) = 0,6

3. Создайте матрицу путаницы в Python

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

PYTHON: сначала возьмем код Python для создания матрицы путаницы. Нам нужно импортировать модуль матрицы путаницы из библиотеки sklearn, который помогает нам генерировать матрицу путаницы.

Ниже приведена реализация приведенного выше объяснения на Python:

# Скрипт Python для создания матрицы путаницы.‹code›

из sklearn.metrics импортировать путаницу_матрицу

из sklearn.metrics импорта precision_scoreCONFU

из sklearn.metrics импортаclassification_report

факт = ['собака','кошка', 'собака', 'кошка', 'собака', 'собака', 'кошка', 'собака', 'собака', 'кошка']

предсказано = ['собака', 'собака', 'собака', 'кошка', 'собака', 'собака', 'кошка', 'кошка', 'кошка', 'кошка']

результаты = матрица_замешательства (фактическая, прогнозируемая)

print («Матрица путаницы:»)

печать (результаты)

print('Оценка точности:',accuracy_score(фактическая, прогнозируемая))

print('Отчет о классификации:')

печать (classification_report (фактический, прогнозируемый))

ВЫВОД -›

Матрица путаницы:

[[3 1]

[2 4]]

Показатель точности: 0,7

Отчет о классификации:

поддержка точного отзыва f1-score

кошка 0,60 0,75 0,67 4

собака 0,80 0,67 0,73 6

микросреднее 0,70 0,70 0,70 10

макросреда 0,70 0,71 0,70 10

взвешенное среднее 0,72 0,70 0,70 10

4. Резюме:

  • Точность — это то, насколько вы уверены в своих истинных положительных результатах. Вспомните, насколько вы уверены, что не упускаете ни одного позитива.
  • Выберите Отозвать, если появление ложноотрицательных результатов неприемлемо/недопустимо. Например, в случае диабета лучше получить несколько дополнительных ложных срабатываний (ложных тревог), чем сохранить несколько ложноотрицательных результатов.
  • Выберите Точность, если вы хотите быть более уверенными в своих истинных положительных результатах. Например, в случае со спамом вы бы предпочли, чтобы в папке «Входящие» были спам-письма, а не обычные письма в ящике для спама. Вы хотели бы быть уверены, что электронное письмо X является спамом, прежде чем мы поместим его в ящик для спама.
  • Выберите Специфичность, если вы хотите охватить все истинно отрицательные значения,т.е. это означает, что нам не нужны ложные тревоги или ложные срабатывания. Например, в случае теста на наркотики, при котором все люди с положительным результатом немедленно отправляются в тюрьму, вы бы не хотели, чтобы кто-то из тех, кто не употреблял наркотики, попадал в тюрьму.

Мы можем заключить, что:

  • Значение точности 70% означает, что идентификация 3 из каждых 10 кошек неверна, а 7 верна.
  • Значение точности 60% означает, что метка 4 из каждых 10 кошек не является кошкой (то есть собакой), а 6 являются кошками.
  • Значение полноты 70% означает, что 3 из каждых 10 кошек в действительности не учитываются нашей моделью, а 7 правильно идентифицируются как кошки.
  • Значение специфичности 60% означает, что 4 из каждых 10 собак (т. е. не кошек) в действительности неправильно помечены как кошки, а 6 правильно помечены как собаки.

Вопросы для интервью

1.почему это называется матрицей путаницы

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

2.Что такое точность в матрице путаницы?

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

3.Что такое отзыв в матрице путаницы?

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