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

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

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

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

Как видно из названия, это сбивает людей с толку :D (Это была шутка) Я постараюсь сделать это проще, чем писать исходное определение.

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

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

Так что же такое истинно положительный, ложноположительный, истинно отрицательный, ложноотрицательный? Давайте разберемся на примере кошки и собаки.

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

В Python вот как вы можете создать матрицу путаницы.

Точность

Соотношение классов классифицировано правильно.

Формула точности

Используя Scikit-Learn, вы можете вычислить точность модели следующим образом:

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

Парадокс высокой точности?

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

Рассмотрим на этот раз медицинский сценарий, предположим, что из 100 пациентов у 5 есть заболевание, а у 95 нет. Прогнозы модели ниже

Так что же такое точность в этом случае, точность = 96%, Точность вызывает здесь проблемы. Не используйте его в случае классов дисбаланса.

Точность

Точность — это точность предсказанных положительных результатов.

Он полностью игнорирует отрицательную (истинно отрицательную, ложноотрицательную) часть в матрице путаницы.

Формула для расчета точности:

Значение точности, близкое к 0, указывает на плохую модель, а близкое к 1 указывает на лучшую модель.

Python реализация точности

Значение точности, близкое к 0, означает, что модель считается плохой моделью, тогда как значение точности, близкое к 1, показывает, что модель лучше.

Вспомнить

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

Используя Scikit-Learn, вы можете найти отзыв:

Высокая полнота представляет собой хорошо работающую модель, а низкая полнота представляет собой модель с плохой производительностью.

Оценка F1

Это просто Гармоническое среднее Точности и Отзыва.

Когда у нас будет высокая точность и отзыв, у нас будет более высокий F1-Score, а F1-Score будет низким, когда один или оба из них низкие.

Заключение

Это те немногие метрики, которые помогают оценить модель классификации ML, помимо того, что доступны и некоторые другие метрики, которые здесь не упоминаются.

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