Как оценить эффективность машинного обучения

Компьютеры умны, но они не экстрасенсы (по крайней мере, пока)….. Цель машинного обучения — предсказать событие, результат, классификацию, или действие из предоставленных данных. Как узнать, делает ли модель правильные прогнозы или нет? Мы используем нечто, называемое метрикой производительности. Метрики эффективности оценивают "правильность"прогнозов. В этом посте, мы рассмотрим некоторые наиболее распространенные показатели производительности, используемые для решения проблем классификации.

Показатели производительности для задач классификации

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

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

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

Class_A состоит из 20% образцов.

Class_B состоит из 80% образцов.

Проблема в этом случае заключается в том, что модель может каждый раз предсказывать Class_B и по-прежнему быть «точной» на 80% при прогнозировании. Это может иметь катастрофические последствия, если стоимость неправильной классификации чего-либо опасна. Допустим, мы хотим сейчас оценить пример модели на другом тестовом наборе:

Class_A теперь состоит из 50% образцов.

Class_B теперь состоит из 50% образцов.

Теперь «точность» упала бы до 50%.

Допустим, модель классифицирует людей, у которых потенциально может быть заболевание. Class_A представляет больных. Class_B представляет собой не больной. Отсутствие 50% больных людей (Класс_А) может иметь серьезные последствия. Гораздо дешевле отправить здорового человека на большее количество анализов, чем подвергать чье-то здоровье риску. Вот почему важно учитывать проблему при разработке показателя производительности, который вы собираетесь использовать для проверки своей модели.

Глядя дальше, чем точность показателей

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

1: когда человек болен

0: когда человек не болен

Как вы можете видеть выше, есть четыре основных термина, которые нам нужно пройти:

  • Истинные положительные результаты (TP): случаи, в которых мы предсказали заболевание (1), а фактический результат также был заболел (1).
  • Истинно отрицательные результаты ( TN ): случаи, в которых мы прогнозировали не болен (0), а фактический результат был не болен (0).
  • Ложные срабатывания ( FP ): случаи, в которых мы прогнозировали больной ( 1 ), а фактический результат был не болен ( 0 ).
  • Ложноотрицательные результаты ( FN ): случаи, в которых мы прогнозировали не болен (0), а фактический результат был больен (1).

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

Вы помните ту вещь, называемую точностью, которую, как вы думали, вы знали?

Что ж, точность можно даже представить матрицей путаницы:

Точность = (TP + TN)/(TP+FP+FN+TN)

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

Другие итерации матрицы путаницы

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

  • Точность — это процентное соотношение того, сколько раз положительные прогнозы были правильными, деленное на общее количество положительных прогнозов.

Точность = TP/(TP+FP)

  • Отзыв – это процент действительно положительных прогнозов, разделенный на количество раз, когда они были действительно положительными.

Отзыв = TP/(TP+FN)

  • Специфичность – это процент фактических отрицательных прогнозов, разделенный на количество раз, когда он был действительно отрицательным.

Специфичность = TN/(TN+FP)

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

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

Я надеюсь, что вы нашли этот пост полезным. Дайте знать, если у вас появятся вопросы.

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