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

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

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

Матрица путаницы отображает 4 случая; ТП, ФП, ФН и ТН.

True Positive (TP): Правильно предсказанные положительные значения.

Ложноположительный результат (FP): отрицательные (0) значения прогнозируются как положительные (1)

Ложноотрицательный (F.N): Положительные (1) значения прогнозируются как отрицательные (0)

True Negative (T.N): Правильно предсказанные отрицательные значения.

Как видно, в классификации есть два типа ошибок: ложноположительные и ложноотрицательные.

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

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

Оценочные баллы

Точность: соотношение правильно предсказанных значений в данных.

(T.P + T.N) / (T.P + T.N + F.P + F.N)

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

(T.P) / (T.P + F.P)

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

(T.P) / (T.P + F.N)

Оценка F1: средневзвешенное значение. оценок точности и отзыва.

2*(Точность*Отзыв) / (Точность+Отзыв)

Когда данные несбалансированы (пример: 900 отрицательных, 50 положительных), показатель точности может ввести в заблуждение. Потому что модель может быть хороша для предсказания отрицательных значений, но не так хороша для предсказания положительных значений.

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

Пример:

Набор данных содержит информацию о 1000 пациентов. Цель модели - предсказать, есть ли у пациента рак. 990 из них не болеют раком, а 10 болеют раком.

Давайте представим, что вывод выглядит следующим образом:

Как видно выше, модель классифицировала 95 из них как рак и 905 как не рак.

Точность: (5 + 900) / (1000) = 0,905

Показатель точности довольно высокий. Модель выглядит точной, но это несбалансированный набор данных. Давайте дальше исследовать;

Точность: Т.П / (Т.П + Ф.П) = 5 / 95: 0,053

Напомним: Т.П/(Т.П + Ф.Н) = 5/10:0,5

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

Спасибо за прочтение.

Барыш Ченгиз