Первая часть серии посвящена метрикам регрессии

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

Что ж, в этом посте я буду обсуждать полезность каждой метрики ошибки в зависимости от цели и проблемы, которую мы пытаемся решить. Когда кто-то говорит вам, что «США - лучшая страна», первый вопрос, который вы должны задать, - на каком основании сделано это заявление. Сужаем ли мы каждую страну по ее экономическому статусу, медицинским учреждениям и т. Д.? Точно так же каждая модель машинного обучения пытается решить проблему с другой целью, используя другой набор данных, и, следовательно, важно понимать контекст, прежде чем выбирать метрику.

Самые полезные показатели

В первом блоге мы рассмотрим метрики только в регрессии.

Метрики регрессии

Большинство блогов сосредоточено на таких показателях классификации, как точность, отзыв, AUC и т. Д. Для разнообразия я хотел изучить все виды показателей, включая те, которые используются в регрессии. MAE и RMSE - две самые популярные метрики для непрерывных переменных. Начнем с более популярного.

RMSE (среднеквадратическая ошибка)

Он представляет собой стандартное отклонение выборки различий между предсказанными и наблюдаемыми значениями (называемыми остатками). Математически он рассчитывается по следующей формуле:

MAE

MAE - это среднее значение абсолютной разницы между предсказанными и наблюдаемыми значениями. MAE - это линейная оценка, что означает, что все индивидуальные различия в среднем взвешиваются одинаково. Например, разница между 10 и 0 будет вдвое больше разницы между 5 и 0. Однако это неверно для RMSE, о чем мы поговорим более подробно позже. Математически он рассчитывается по следующей формуле:

Итак, какой из них выбрать и почему?

Что ж, его легко понять и интерпретировать, потому что он напрямую принимает среднее значение смещений, тогда как RMSE штрафует более высокую разницу больше, чем MAE.
Давайте разберемся с приведенным выше утверждением на двух примерах:
Случай 1: Фактические значения = [2,4,6,8], Прогнозируемые значения = [4,6,8,10]
Случай 2: фактические значения = [2,4,6,8], прогнозируемые значения = [4,6,8,12]

MAE для случая 1 = 2,0, RMSE для случая 1 = 2,0
MAE для случая 2 = 2,5, RMSE для случая 2 = 2,65

Из приведенного выше примера мы видим, что RMSE наказывает предсказание последнего значения сильнее, чем MAE. Как правило, RMSE будет больше или равно MAE. Единственный случай, когда он равен MAE, - это когда все различия равны или равны нулю (верно для случая 1, где разница между фактическим и прогнозируемым составляет 2 для всех наблюдений).

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

Хотя это может показаться не очень приятным, это очень важная причина, которая делает его очень популярным. Я постараюсь математически объяснить изложенную выше логику.

Возьмем простую линейную модель с одной переменной: y = mx + b
Здесь мы пытаемся найти «m» и «b», и нам предоставляются данные (x, y).
Если мы определяем функцию потерь (J) в терминах RMSE: тогда мы можем легко дифференцировать J относительно. к m и b и получите обновленные m и b (так работает градиентный спуск, я не буду здесь объяснять)

Приведенные выше уравнения проще решить, и то же самое не применимо к MAE.

Однако, если вам нужна метрика для сравнения двух моделей с точки зрения интерпретации, я думаю, что MAE - лучший выбор. Важно отметить, что единицы RMSE и MAE совпадают со значениями y, что неверно для R Square. Диапазон RMSE и MAE от 0 до бесконечности.

Изменить: Одно важное различие между MAE и RMSE, о котором я забыл упомянуть ранее, заключается в том, что минимизация квадратичной ошибки по набору чисел приводит к нахождению ее среднего значения, а минимизация абсолютной ошибки приводит к нахождению ее медианы. По этой причине MAE устойчиво к выбросам, а RMSE - нет. Этот ответ подробно объясняет эту концепцию.

R в квадрате (R²) и скорректированный R в квадрате

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

Математически R_Squared определяется следующим образом:

Числитель - это MSE (среднее квадратов остатков), а знаменатель - это дисперсия значений Y. Чем выше MSE, тем меньше R_squared и беднее модель.

Скорректированный R²

Как и R², скорректированное R² также показывает, насколько хорошо члены соответствуют кривой или линии, но корректируется с учетом количества членов в модели. Это дается формулой ниже:

где n - общее количество наблюдений, а k - количество предикторов. Скорректированное R² всегда будет меньше или равно R².

Почему вам следует выбирать скорректированное R² вместо R²?
Есть некоторые проблемы с обычным R², которые решаются с помощью настроенного R². Скорректированный R² будет учитывать предельное улучшение, добавленное дополнительным членом в вашей модели. Таким образом, оно увеличится, если вы добавите полезные термины, и уменьшится, если вы добавите менее полезные предикторы. Однако R² увеличивается с увеличением членов, даже если на самом деле модель не улучшается. В этом легче будет разобраться на примере.

Здесь случай 1 - это простой случай, когда у нас есть 5 наблюдений (x, y). В случае 2 у нас есть еще одна переменная, которая вдвое больше переменной 1 (отлично коррелирует с var 1). В случае 3 мы произвели небольшое нарушение в var2, так что оно больше не полностью коррелирует с var1.

Таким образом, если мы подбираем простую модель наименьших квадратов (OLS) для каждого случая, логически мы не предоставляем никакой дополнительной или полезной информации для случая 2 и случая 3 по отношению к случаю 1. Таким образом, наше значение метрики не должно улучшаться для этих моделей. Однако на самом деле это неверно для R², который дает более высокое значение для моделей 2 и 3. Но ваш скорректированный R² решает эту проблему, и он фактически уменьшается для обоих случаев 2 и 3. Давайте дадим некоторые числа этим переменным (x , y) и посмотрите на результаты, полученные на Python.

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

Из приведенной выше таблицы мы видим, что, хотя мы не добавляем никакой дополнительной информации от случая 1 к случаю 2, R² все равно увеличивается, тогда как скорректированный R² показывает правильную тенденцию (штраф модели 2 за большее количество переменных)

Сравнение скорректированного R² и RMSE
В предыдущем примере мы увидим, что RMSE одинаково для случая 1 и случая 2, аналогичного R². Это тот случай, когда скорректированный R² работает лучше, чем RMSE, объем которого ограничен сравнением прогнозируемых значений с фактическими значениями. Кроме того, абсолютное значение RMSE на самом деле не говорит о том, насколько плоха модель. Его можно использовать только для сравнения двух моделей, тогда как Adjust R² легко это делает. Например, если модель скорректировала R² равным 0,05, то это определенно плохо.

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

Распространенное заблуждение: я часто видел в Интернете, что диапазон R² находится между 0 и 1, что на самом деле не соответствует действительности. Максимальное значение R² равно 1, но минимальное может быть отрицательной бесконечностью. Рассмотрим случай, когда модель предсказывает крайне отрицательное значение для всех наблюдений, даже если y_actual положительно. В этом случае R² будет меньше 0. Это маловероятный сценарий, но возможность все же существует.

Бонус!

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

BLEU (Bilingual Evaluation Understudy)
в основном используется для оценки качества машинного перевода по сравнению с переводом, выполненным человеком. Он использует модифицированную форму метрики точности.

Шаги для вычисления оценки BLEU:
1. Преобразуйте предложение в униграммы, биграммы, триграммы и 4 граммы
2. Вычислите точность для n-граммов размера от 1 до 4
3. Возьмите экспонента средневзвешенного значения всех этих значений точности
4. Умножьте его на штраф за краткость (объясню позже)

Здесь BP - штраф за краткость, r & c - количество слов в ссылке и кандидате соответственно, w - веса, P - значения точности.

Пример:
Ссылка: кошка сидит на циновке
Машинный перевод 1: на циновке - кошка
Машинный перевод 2: кошка сидит на циновке

Давайте сравним два приведенных выше перевода с оценкой BLEU.

Здесь я использую пакет nltk.translate.bleu_score -

Окончательные результаты: BLEU (MT1) = 0,454, BLEU (MT2) = 0,59

Почему мы добавляем штраф за краткость?
Штраф за краткость наказывает кандидатов короче, чем их справочный перевод. Например, если кандидатом для вышеупомянутой ссылки является «Кот», тогда она будет иметь высокую точность для униграммы и биграммы, потому что оба слова присутствуют в ссылке в одном и том же порядке. Однако длина слишком короткая и на самом деле не отражает смысл ссылки.
С учетом этого штрафа за краткость перевод кандидата, получившего высокую оценку, теперь должен соответствовать ссылке с точки зрения длины, тех же слов и порядка слов. .

Надеюсь, в этом блоге рассказано о большинстве полезных мер по регрессии. Пожалуйста, прокомментируйте, если что-то упущено, буду очень признателен за идеи для следующего блога. В следующем блоге я расскажу о важных показателях классификации и обучения без учителя. Будьте на связи! А пока читайте другие мои блоги здесь!
LinkedIn: www.linkedin.com/in/alvira-swalin

Ссылки

  1. Http://thestatsgeek.com/2013/10/28/r-squared-and-adjusted-r-squared/
  2. Https://www.aclweb.org/anthology/P02-1040.pdf
  3. Https://www.nltk.org/_modules/nltk/translate/bleu_score.html