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

Начнем с вопроса: что понимается под показателем эффективности?

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

Обычно «точность» считается стандартной мерой производительности. Но у этого подхода есть недостаток в случае проблемы классификации. Давайте разберемся в этом на одном примере.

Предположим, у нас есть проверочный набор данных со 100 строками. Целевой столбец имеет только два уникальных значения, а именно «A» и «B» (типичная проблема бинарной классификации). Предположим, что в целевом столбце нашего набора данных проверки есть 80 A и 20 B. Теперь давайте используем базовую модель, которая всегда выводит «A», независимо от входных функций, чтобы предсказать результат для нашего набора данных проверки. Поскольку эта модель чрезвычайно проста, она, скорее всего, не соответствует данным и не будет хорошо обобщать новые данные. Но тем не менее, здесь мы получаем точность 80% на данных проверки. Это очень обманчиво.

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

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

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

Давайте изучим некоторые другие показатели эффективности.

  1. матрица путаницы
  2. точность
  3. отзывать
  4. f1-счет
  5. Площадь под кривой рабочей характеристики приемника (ROC)

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

Общая идея матрицы путаницы состоит в том, чтобы подсчитать, сколько раз экземпляры «А» классифицируются как «В» и наоборот.

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

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

Давайте возьмем пример, когда целевой столбец имеет уникальные категории, называемые «A» и «B». Назовем здесь B не-A.

Вот как будет выглядеть типичная матрица путаницы.

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

Истинный отрицательный (TN) обеспечивает количество отрицательных значений признаков (не-A), которые были правильно предсказаны как отрицательные.

Ложноположительный (FP) обеспечивает количество отрицательных значений признаков (не-A), которые были ошибочно предсказаны как положительные.

Ложноотрицательный (FN) обеспечивает количество положительных значений признаков (A), которые были ошибочно предсказаны как отрицательные.

Истинно положительный (TP) обеспечивает количество положительных значений признаков (A), которые были правильно предсказаны как отрицательные.

Мы можем считать классификатор идеальным, когда:

  1. FP = FN = 0
  2. TP ≥ 0 и TN ≥ 0

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

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

Точность, отзыв и F1-Score

Точность и полнота дают нам точные показатели для измерения производительности модели.

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

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

У отзыва есть и другие названия, такие как чувствительность или доля истинно положительных результатов.

Часто бывает удобно объединить точность и полноту в одну метрику, называемую f1-score, особенно если вам нужен простой способ сравнить два классификатора.

Гармоническое среднее точности и полноты называется f1-показателем.

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

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

Пример 1:

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

Высокий FN означает низкое значение отзыва, а низкий FP означает высокое значение точности.

Пример 2:

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

Низкий FN подразумевает высокую полноту, а высокий FP означает низкую точность.

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

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

Вот как будет выглядеть типичная кривая точного отзыва. Глядя на график, мы можем получить точку, где полнота = 0,65, а точность = 0,75. Для этого мы получили довольно высокое значение как для точности, так и для полноты.

Кривая рабочей характеристики приемника (ROC)

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

Вот как будет выглядеть типичная кривая ROC.

Истинный положительный показатель (TPR) и ложноположительный показатель (FPR) можно узнать, используя приведенные ниже формулы.

Пунктирная линия представляет ROC-кривую чисто случайной модели классификации; хороший классификатор всегда остается как можно дальше от этой линии (по направлению к верхнему левому углу).

Один из способов узнать, насколько далеко кривая ROC нашей модели от кривой ROC случайной модели, — это найти площадь под кривой. Если площадь под ROC-кривой нашей модели равна 1, то она максимально далека от ROC-кривой случайной модели. Следовательно, в этом случае нашу модель можно считать идеальной. Модель с большей площадью под кривой ROC будет лучшей моделью.

Площадь под ROC-кривой можно использовать для сравнения двух классификаторов. Классификатор с большей площадью под ROC-кривой будет лучшей моделью с точки зрения производительности.

Когда использовать кривую точности и когда использовать кривую ROC?

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

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

Дальнейшее чтение:

Scikit-Learn документация

(1527) Матрица БЕЗ ПУТАНИЦЫ! // Что такое матрица путаницы? // Визуальное объяснение матрицы путаницы — YouTube

(1527) Никогда больше не забывай! // Точность и полнота с наглядным примером точности и полноты — YouTube

Книга под названием «Практическое машинное обучение с помощью Scikit-Learn, Keras и TensorFlow».

Outro

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

Свяжитесь со мной в

ЛинкедИн

"Веб-сайт"

Пишите мне на [email protected]