Метрики для классификации

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

метрики для классификации

Мы можем использовать показатели производительности классификации, такие как Log-Loss, Accuracy, AUC (площадь под кривой) и т. д. Еще одним примером метрики для оценки алгоритмов машинного обучения является точность, полнота, которую можно использовать для сортировки алгоритмов, в основном используемых поисковыми системами.

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

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

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

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

Давайте дадим метку нашей целевой переменной:
1: Когда у человека рак 0: Когда у человека НЕ рак.

Теперь, когда мы определили проблему, матрица путаницы представляет собой двумерный массив («Фактическое» и «Прогнозируемое») и наборы «классов» в обоих измерениях. Наши фактические классификации — это столбцы, а предполагаемые — строки.

Метрики для классификации Метрики для классификации

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

Истинные положительные результаты (TP): истинные положительные результаты — это случаи, когда фактический класс точки данных был равен 1 (истина), а прогнозируемое значение также равно 1.

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

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

Предположим, что в нашем примере с проблемой обнаружения рака из 100 человек только 5 человек больны раком. В этом случае мы хотим правильно классифицировать всех больных раком, потому что даже очень ПЛОХАЯ модель (прогнозировать всех как НЕРАКОВЫХ) даст нам точность 95 % (насколько точна).

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

Точность

Точность в задачах классификации — это количество правильных прогнозов, сделанных моделью, по всем видам сделанных прогнозов.

Метрики для классификации Метрики для классификации

В числителе наши правильные прогнозы (истинные положительные и истинные отрицательные) (отмечены красным на рисунке выше), а в знаменателе — тип всех прогнозов, сделанных алгоритмом (как хороших, так и плохих).

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

Пример: 60 % классов в наших данных изображения фруктов — это яблоки, а 40 % — апельсины.

Модель, которая предсказывает, является ли новое изображение яблоком или апельсином, 97 раз правильно %, является очень хорошей мерой в этом примере.

Точность НИКОГДА не следует использовать в качестве меры, когда классы целевых переменных в данных составляют большую часть класса.

Пример: в нашем примере обнаружения рака со 100 людьми только 5 человек больны раком. Допустим, наша модель очень плоха и предсказывает, что не каждый случай является раком. При этом он правильно классифицировал этих 95 пациентов, не страдающих раком, и 5 больных раком как больных раком. Теперь, несмотря на то, что модель ужасно предсказывает рак, точность такой плохой модели также составляет 95 %.

Точность (точность)

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

Метрики для классификации Метрики для классификации

Точность — это мера, которая говорит нам, какая часть пациентов, у которых у нас диагностирован рак, действительно болела раком. Предполагаемые положительные результаты (люди, у которых прогнозируется рак, обозначаются как TP и FP), а люди, у которых действительно есть рак, — это TP.

Пример: в нашем примере с раком из 100 человек только 5 человек больны раком. Допустим, наша модель очень плоха и предсказывает каждый случай, как рак. Поскольку мы предсказываем, что у всех рак, наш знаменатель (истинные положительные и ложные положительные результаты) равен 100, а числитель человека с раком и модель, предсказывающая его случай как рак, равен 5. Таким образом, в этом примере мы можем сказать, что точность таких модель 5 %.

Отзыв или чувствительность (Recall/Sensitivity)

Отзыв — это мера, которая говорит нам, какая часть пациентов, у которых действительно был рак, была диагностирована алгоритмом как рак. Истинные положительные результаты (люди с раком — это TP и FN) и люди, у которых рак диагностирован с помощью модели, — это TP. (Примечание: FN включен, потому что у человека действительно был рак, хотя модель предсказывала обратное).

Метрики для классификации Метрики для классификации

Специфика

Специфичность — это мера, которая говорит нам, какая доля пациентов, у которых НЕ было рака, была предсказана моделью как свободная от рака. Истинно отрицательные результаты (люди, у которых НЕТ рака, — это FP и TN), а люди, у которых диагностировано отсутствие рака, — это TN. (Примечание: FP включен, потому что у человека на самом деле НЕ было рака, хотя модель предсказывала обратное). Специфика — это полная противоположность отзыву.

Метрики для классификации Метрики для классификации

Пример: в нашем примере с раком из 100 человек 5 человек на самом деле больны раком. Допустим, модель предсказывает каждый случай как рак.

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

Оценка F1 (оценка F1)

На самом деле мы не хотим носить в кармане Precision и Recall каждый раз, когда строим модель для решения задачи классификации. Поэтому предпочтительнее получить единую оценку, которая представляет как точность (P), так и полноту (R).

Один из способов сделать это — просто взять их среднее арифметическое. т. е. (P+R)/2, где P — точность, а R — полнота. Но в некоторых ситуациях это очень плохо.

Предположим, у нас есть 100 транзакций по кредитным картам, из которых 97 являются законными, а 3 — мошенничеством, и скажем, что мы нашли модель, которая предсказывает все как мошенничество.

Точность и полнота примера показаны на рисунке ниже.

Метрики для классификации Метрики для классификации

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

Поэтому нам нужно что-то более сбалансированное, чем среднее арифметическое, а это среднее гармоническое.

Метрики для классификации Метрики для классификации

Среднее гармоническое определяется формулой, показанной на рисунке слева.

Гармоническое среднее — это своего рода среднее, когда x и y равны. Но когда x и y разные, то оно ближе к меньшему числу, чем к большему.

В нашем предыдущем примере оценка F1 = среднее гармоническое (точность, полнота)

Оценка F1 = 2 * точность * отзыв / (точность + отзыв) = 2 * 3 * 100/103 = 5%

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

До встречи на следующем уроке!

До сих пор мы рассматривали в качестве метрик для классификации, что такое матрица путаницы, что такое точность, прецизионность, полнота (или чувствительность), специфичность и оценка F1 для классификации проблем. В следующей статье другие показатели, которые можно использовать в качестве показателей для классификации, такие как кривая AUC-ROC, потери журнала, показатель F-бета и т. д.

Делиться
ru_RURU