Многомерные адаптивные регрессионные сплайны, широко известные как MARS, — это алгоритм, который лучше всего подходит для многомерных и сложных наборов данных нелинейных отношений. Его можно рассматривать как обобщенную форму пошаговой регрессии (пошаговая регрессия сначала выполняет прямой выбор, когда она начинает загрузку модели, а затем сокращает или отбирает назад, чтобы удалить переменные, которые не помогают значительно снизить частоту ошибок).

Он строит кусочно-линейную функцию, состоящую из правой и левой функций —

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

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

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

Выбор переменной происходит в алгоритме MARS автоматически.

Преимущества MARS —

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

Недостатки MARS —

  1. Модель MARS подходит медленнее, чем любая модель OLS/GLS.

Библиотека Python для MARS — py-earth.

Дополнительные материалы на PlainEnglish.io. Подпишитесь на нашу бесплатную еженедельную рассылку новостей. Подпишитесь на нас в Twitter и LinkedIn. Присоединяйтесь к нашему сообществу Discord.