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

M = среднее значение (T) | T = сумма (S) | S = квадрат (E) | E = Ошибка

Здесь E - разница между фактическим и прогнозируемым выходом. Давайте разберемся в этом на примерах данных.

Здесь у меня есть небольшой набор данных из Интернета. Мы используем единственную линейную регрессию для анализа, поскольку набор данных содержит только один вход (x). Мы собираемся использовать библиотеки python pandas и matplotlib для построения графиков. Давайте посмотрим, как x и y соединяются на графиках.

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

Линейная регрессия - это метод статистического моделирования для исследования взаимосвязи между зависимой переменной и независимой переменной (ами) с непрерывными переменными.

Простая линейная регрессия - это «подобрать линию для всех точек с минимальной ошибкой и спрогнозировать будущее»

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

Линия регрессии указывает «Каждое значение X в данных и его прогнозируемое значение Y». Но, как мы видим, прогнозируемое значение Y не совпадает с фактическим значением Y, которое считается ошибкой. Теперь мы можем рассчитать общий убыток по простой формуле.

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

Копать глубже:

Теперь мы примерно понимаем, как MSE вычисляет ошибку. Но как это работает с данными? Каков эффект выбросов, если вы используете MSE? Я написал небольшой скрипт на Python, чтобы вручную вычислить MSE для наших данных.

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

Я добавил x = 10, Y = 99, что является выбросом, когда мы видим другие пары. Теперь я получил «67.06» на выходе MSE, что намного больше, чем «8.44». Таким образом, мы можем сделать вывод, что выбросы в значительной степени влияют на выпуск MSE.

Когда использовать MSE?

Мы поясняем, что MSE возвращает большое значение, если присутствуют выбросы / большие ошибки. Используйте MSE, если ваши данные допускают следующее.

  1. Делайте большие ценности важнее, чем однажды меньшие.
  2. Данные распределяются случайным образом и не нужно думать о больших значениях.

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

На этом пока все о MSE. Я буду обновлять в конечном итоге всякий раз, когда буду новичком в MSE. Спасибо, пока. Счастливый ML.

Если нужно, прочтите мой пост Средняя абсолютная ошибка (MAE).