Последние два дня я работал над концепцией машинного обучения, но не смог продвинуться вперед, потому что для этого требовалось больше памяти, чем мог вместить мой крошечный компьютер и бесплатная версия Google Colab. Поскольку я был на распутье в своей деятельности по машинному обучению, я решил попробовать другую похожую модель, HuberRegressor.

HuberRegressor от Scikit-learn — это модель линейной регрессии, которая сочетает в себе лучшие атрибуты регрессии с использованием метода наименьших квадратов (OLS) и надежной регрессии. Он менее чувствителен к выбросам по сравнению с регрессией МНК, что делает его более подходящим для наборов данных с шумом или выбросами.

Функция потерь HuberRegressor представляет собой комбинацию квадрата потерь (аналогично OLS) для точек данных, близких к прогнозу, и абсолютных потерь (аналогично регрессии L1 или лассо) для точек данных, далеких от прогноза. Эта комбинация квадратичных и абсолютных функций потерь приводит к более надежной регрессионной модели, на которую меньше влияют экстремальные выбросы.

Вот ключевые особенности HuberRegressor от Scikit-learn:

  1. Устойчивость к выбросам: HuberRegressor снижает влияние выбросов на модель регрессии, делая ее более устойчивой к зашумленным данным.
  2. Настраиваемая чувствительность. Надежностью HuberRegressor можно управлять, регулируя пороговый параметр, который определяет точку, в которой функция потерь переходит от квадратичных потерь к абсолютным потерям.
  3. Модель линейной регрессии: HuberRegressor по сути является моделью линейной регрессии с модифицированной функцией потерь.

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

Я написал программу в Google Colab, бесплатном онлайн-блокноте Jupyter Notebook, размещенном в Google, и использовал набор данных о ценах на жилье в Калифорнии, который поставляется вместе с программой. Я запустил программу машинного обучения, используя модели sklearn LinearRegression и HuberRegressor, чтобы увидеть, какая из них лучше всего работает с набором данных.

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