Преимущества, недостатки и основные подводные камни

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

Для следующих разделов y - истинное значение, y-hat - прогнозируемое значение, n - количество тестовых экземпляров, а i изменяется от 1 до n. Кроме того, все метрики оцениваются на невидимом тестовом наборе.

Средняя абсолютная ошибка

Средняя абсолютная ошибка - очень интуитивный и поэтому популярный показатель. Это просто среднее расстояние между предсказанными и истинными значениями. Чтобы избежать взаимоисключающих ошибок, мы берем абсолютное значение для каждой вычисляемой ошибки. Лучшей моделью обычно является модель с самым низким значением MAE. Однако есть несколько особенностей, которые следует учитывать при выборе MAE в качестве метрики.

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

Слева модель немного не там и там. Однако справа модель пропускает отметки в хвостовой части с гораздо большим отрывом, будучи идеальной в начале и в середине. Тем не менее, MAE для обоих одинаковы. Если вы решили использовать эту метрику, неплохо было бы построить график ошибок, чтобы увидеть любые выбросы, такие как случай 2. В общем, если вы хотите метрику, которая штрафует большие ошибки, вам повезет больше в другом месте.

Среднеквадратичная ошибка

Это подводит меня к среднеквадратическим ошибкам. Как и MAE, мы уничтожаем информацию о направлении, когда исправляем каждую вычисленную ошибку. MSE также всегда больше или равно 0. Однако теперь мы можем различать две модели, указанные выше.

Интересно, что MSE связана с печально известным компромиссом смещения и дисперсии. Можно показать, что ожидаемая тестовая MSE для данной тестовой точки может быть записана как [1]:

где нижний индекс 0 - это индекс точки тестовых данных, а ϵ - это неснижаемый шум или шум в данных.

Дисперсия - это величина, на которую изменяется y-шляпа, когда мы меняем обучающий набор. Обычно более гибкие методы имеют более высокую степень вариативности. Дисперсия также зависит от того, сколько данных у нас есть. Чем больше набор обучающих данных, тем меньше дисперсия. Следовательно, мы можем интерпретировать MSE для данной точки тестовых данных с точки зрения смещения модели и случайного шума в пределах огромных данных.

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

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

Среднеквадратичная ошибка Рура

Как насчет того, чтобы извлечь квадратный корень? RMSE и MSE очень похожи, за исключением того, что RMSE более удобен, потому что он имеет ту же единицу, что и любой y.

Тем не менее, пробовали ли вы когда-нибудь изменить свои цели, чтобы посмотреть, подходите ли вы лучше? Как, например, взять журнал y. Затем вы вычисляете RMSE обоих подходов и видите, что один выше другого. Это несправедливое сравнение, потому что два значения имеют разные единицы измерения. Способ обойти это - разделить на некоторое свойство y, чтобы получить безразмерную метрику, называемую нормализованной среднеквадратичной ошибкой.

Нормализованная среднеквадратическая ошибка

У меня нет здесь уравнений, потому что есть много вещей, на которые можно разделить среднеквадратичное значение. Некоторые распространенные варианты - это среднее значение y, разница между максимальным и минимальным значением y, стандартное отклонение и межквартильный диапазон. Когда выбирать тонкий бизнес, и [2] может предоставить более подробное объяснение, если вам интересно.

Среднеквадратичная ошибка журнала

Я думаю, что эта метрика была введена Kaggle несколько лет назад [3]. Этот показатель следует использовать, если вы хотите указать, как наказываются ошибки. В этом случае мы говорим метрике, чтобы она наказывала недооценку больше, чем переоценку. Например, предположим, что y = 1. Если наша модель дает y-hat = 0, то ошибка составляет [log (1/2)] ² = 0,09. Однако, если модель дает y-hat = 2, тогда ошибка составляет [log (3/2)] ² = 0,03. Если бы мы использовали MSE, то наша ошибка была бы 1 в любом случае.

Также метрика принимает относительную шкалу истинных и прогнозируемых значений. Например, если y = 9 и y-hat = 99, тогда ошибка равна 1. Если, с другой стороны, y = 99 и y-hat = 999, то ошибка все равно 1. Таким образом, эта метрика удобна. когда диапазон ваших целевых значений велик, и вы не хотите штрафовать за большие ошибки, когда и предсказанные, и истинные значения велики.

Однако мне не удалось найти обсуждение некоторых подводных камней, о которых следует помнить здесь. Если вы посмотрите на график log (x), вы увидите, что x не может быть меньше или равным 0. Это означает, что аргумент внутри нашего логарифма (y-hat + 1 / y + 1) не может быть равен до или меньше 0. Затем добавляется ограничение, что y не может быть -1. В противном случае все это взорвется.

Средняя абсолютная ошибка в процентах

MAPE выглядит как двоюродный брат MAE с дополнительным преимуществом, заключающимся в том, что он не имеет единиц измерения. Однако введение разделения также имеет ряд серьезных недостатков. Например, при очень маленьком y_i или y_i = 0 MAPE может взорваться или вообще не быть вычислимым. Он также наследует проблему от MAE, а именно: нет ли верхней границы того, насколько большой может быть каждая ошибка (даже если в названии написано «процент»).

Заворачивать

Надеюсь, вам понравился список и вы узнали что-то новое. Что дальше, это только мое мнение. Я часто вижу упоминание об «интерпретируемости», когда читаю об этих показателях. Я не совсем уверен, что означает «интерпретируемость» и есть ли вообще консенсус по этому поводу. Мои объяснения и то, как я понимаю эти показатели, часто основаны на их поведении в определенных ситуациях. В целом, насколько мы должны подчеркивать «интерпретируемость» метрики, когда есть другие метрики, которые ведут себя больше так, как мы хотим, но их труднее интерпретировать?

Оставайся на связи

Мне нравится писать о науке о данных и науке. Если вам нравится этот пост, подпишитесь на меня в Medium, присоединитесь к моему списку рассылки или станьте членом Medium (я буду получать ~ 50% от ваших членских взносов, если вы воспользуетесь этой ссылкой), если вы не т уже. Увидимся в следующем посте! 😄

Источники

[1] Гарет Джеймс, Даниэла Виттен, Тревор Хасти, Роберт Тибширани. Введение в статистическое обучение: с приложениями в R (2013)

[2] Отто, С.А. (7 января 2019 г.). Как нормализовать RMSE [сообщение в блоге]. Https://www.marinedatascience.co/blog/2019/01/07/normalizing-the-rmse/

[3] https://www.kaggle.com/carlolepelaars/understanding-the-metric-rmsle

[4] https://en.wikipedia.org/wiki/Mean_absolute_percentage_error