Функции ошибок в задачах регрессии

Сегодня будет сделанный с любовью обзор функций ошибок и функционалов качества в задачах регрессии.

pic_err2_05

Выкладываю часть главы «Метрики качества» из своей вечно недописанной книги. Она полностью сделана по материалам моего курса в МГУ. Краткое содержание:

  • Качество работы алгоритма
  • Функции ошибки в задачах регрессии
  • Средний модуль отклонения (MAE – Mean Absolute Error или MAD – Mean Absolute Deviation)
  • Средний квадрат отклонения (MSE – Mean Squared Error), корень из этой ошибки: RMSE – Root Mean Squared Error, коэффициент детерминации (R2)
  • функция ошибки Хьюбера (Huber loss) и logcosh
  • Обобщения MAE и RMSE
  • Средний процент отклонения (MAPE – Mean Absolute Percent Error)
  • Симметричный средний процент отклонения (SMAPE – Symmetric Mean Absolute Percentage Error)
  • MRAE – Mean Relative Absolute Error, REL_MAE, Percent Better
  • MASE (Mean Absolute Scaled Error)
  • eB – процент случаев, когда ответ алгоритма верен с некоторой заранее заданной точностью
  • Несимметричные функции ошибки
  • Реализация функций ошибок в scikit-learn

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

Предыдущие посты из этой серии:

И побуду «заядлым блогером»: если пост наберёт больше 2000 просмотров, то опубликую продолжение главы;)

Функции ошибок в задачах регрессии: 32 комментария

  1. Алексадр Геннадьевич, может, Вам найти энтузиастов среди толковых студентов-аспирантов? В полноценные соавторы — вычитать все, привнести свежее видение, сделать книгу современной, добавив практические упражнения в стиле «побить бэйзлайн на кэггле». Я бы сам вызвался, но я если возьмусь за книгу — то на английском на базе mlcourse.ai.
    Можем кинуть клич в OpenDataScience. Думаю, желающие вызовутся, там отберете себе подходящего.

  2. > Простая эвристика «завтра будет также, как вчера
    так же

    > В данном случае не важно обучающая это выборка
    запятая после «важно»

    > Как отмечается в главе «Контроль» качество
    запятая после «Контроль»

    стр. 4, переход от правдоподобия к большому произведению — тут важно отметить, что это работает только в предположении о независимости набюлюдений. Чаще предполагают еще и одинаковое их распределение (i.i.d), хотя для этих рассуждений нужна только независимость.

    На мой субъктивный вгляд, лучше сначала показать вывод MSE из ММП — предположение о нормальнсти ошибок куда более интуитивно, чем «Лаплас»

    > Заметим, что если бы в каждой точке была бы своя шибка:
    ошибка

    > Хорошо или плохо, если RMSE=27?
    тут наверно MSE имеется в виду

    Непонятна подпись «=О(2)» в разложении l(y,a) по Маклорену под линейным членом

    Мне пора остановиться — в четверг защита диссера 🙂

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

    Такой вопрос — стр.18, «При k1 < k2 мы больше штрафуем завышение и оптимальная константа смешается влево…". Не должно ли тут быть наоборот?

  4. На иллюстрации с плотностью распределения Лапласа вместо $\alpha=2$ должно быть $\alpha=0.5$. Видимо, иллюстрация взята от более привычной записи функции плотности, где коэффициент стоит в знаменателе.

  5. Последняя попытка. Дело было в знаках больше-меньше. Попробую переформулировать:
    В несимметричных функциях ошибок перепутаны знаки в условиях: вместо y_i ≥ a_i должно быть y_i ≤ a_i, и наоборот. Иначе некорректны подпись оси a-y на графике 8.19 и весь абзац про штрафы за занижение и завышение.

    • Cпасибо большое, об этой ошибке выше уже упомянул Некит.

      А с комментариями, действительно, проблемы. Символы ТеХа тут особо не поиспользуешь.

  6. Здравствуйте! Хотел спросить что есть q в определении SMAPE? Выглядит так как будто там должно быть m (стр 12).

  7. В формуле RMSE (MSE) вы делите сумму квадратов остатков на m — на количество наблюдений. Есть и другая формула RMSE, в которой сумму квадратов делят на (m-n), где n — количество коэффициентов регрессионной модели. Скажите, пожалуйста, как корректнее назвать RMSE для второго случая [ с (m-n) ] и для каких задач эту формулу лучше использовать?

  8. Александр Геннадьевич, вам не кажется, что использование коэффициента детерминации R^2 в машинном обучении не имеет большого смысла. Так как не совсем понятен качественный смысл этой меры. В линейном регрессионном анализе вывод этой формулы и ее интерпретация тесно связаны с предположениями относительно модели наблюдения. Например, чтобы его записать в таком виде необходимо, чтобы регрессионная матрица содержала столбец из единиц. Регрессия с точки зрения машинного обучения и «эконометрического подхода» достаточно сильно различаются. Многие заимствования кажутся оправданными, например, функция ошибки Хьюбера или квантильная регрессия. При этом смысл той же квантильной регрессии мне кажется не совпадает, так как в статистике она придумана, чтобы бороться с несимметричными шумами и важны именно предположения о распределении ошибок в наблюдениях, а не что-то еще. В машинном обучении она используется, как мне кажется, несколько по-иному.

    • Ну, он же линейно зависит от MSE, при этом лежит на отрезке [0, 1] при разумном моделировании. В этом и смысл: линейная деформация MSE в нужный отрезок.

      • В первоначальном варианте коэффициент детерминации показывал превосходство линейной регрессии порядка n над тривиальной, т.е. над константой, которая в случае нормальных ошибок превращается в выборочное среднее. Поэтому мы сравниваем ошибку сложной регрессии с тривиальной (для гауссовского случая).R^2=0 значит, что по среднеквадратическому критерию более сложная регрессии так же плоха, как и тривиальная. Но если ошибки имеют распределение Лапласа, то для тривиальной регрессии оценка будет уже не выборочное среднее, а выборочная медиана и тогда вопрос что же показывает коэффициент детерминации в этом случае, ведь он продолжает сравнивать с отклонением от выборочного среднего. Я хочу сказать, что гауссовское распределение ошибок важно при его вычислении, если распределение другое, то что он меряет становится не совсем ясно.

  9. .»..RMSE для второго случая [ с (m-n) ]» Думаю этот вариант формулы появился не как штраф за сложность модели, а тоже был взят из «классического» регрессионного анализа. Такая формула получается, если мы в линейной регрессии с детерминированными объясняющими (независимыми) регрессорами будем строить оценку дисперсии ошибок (шума). Если мы хотим построить несмещенную оценку дисперсии, то формула будет именно с таким множителем. А если свойство несмещенности оценки нам не нужно, то можно разделить и на (m). Эти всё тянется с обычной выборочной дисперсии для однородной выборки, которая является смещенной оценкой дисперсии наблюдаемой случайной величины. Для того, чтобы подправить эту оценку и появилась новая несмещенная оценка дисперсии с коэффициентом [1/(m-1)]. А в регрессии с независимыми и одинаково распределенными ошибками несмещенная оценка дисперсии шума будет с коэффициентом [1/(m-n)].

  10. «…Отметим, что модуль производной MAE» все-таки модуль (MAE) функция не дифференцируемая… Скольких бы мучений можно было бы избежать, если бы мы сразу могли написать, что производная |x| это sign(x), но нет… Очень часто так и делают, поскольку результаты совпадают. Например, вывод выборочной медианы, как оценки максимального правдоподобия стал бы намного проще, но приходится изворачиваться.

  11. «… По такой логике ни одна функция ошибки не подходит;) » Логика есть в построении регрессии как точки минимума функции MSE, а потом мы вычисляем коэффициент детерминации просто как хитрую нормировку MSE ошибки на отрезок [0;1]. Но вот другая последовательность: строим регрессию, как минимум MAE, а потом тоже вычисляем коэффициент детерминации будет очень сомнительной. Тут тогда должен быть аналог коэффициента детерминации, но построенный в рамках метода наименьших модулей, т.е. некая нормировка суммы модулей отклонений, но такого аналога вроде нет. Разумно вывести его не получается.

Добавить комментарий для Yury Kashnitsky Отменить ответ

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Google photo

Для комментария используется ваша учётная запись Google. Выход /  Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

Connecting to %s