Введение в базовые функции и регуляризацию с теорией и реализацией Python

СОДЕРЖАНИЕ

Этот пост является частью серии постов, которые я буду делать. Вы можете прочитать более подробную версию этого поста в моем личном блоге, нажав здесь. Ниже вы можете увидеть обзор серии.

1. Введение в машинное обучение

2. Регресс

3. Классификация

Базовые функции

В предыдущем посте мы обсуждали модель линейной регрессии.

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

где

Используя нелинейные базисные функции, h может адаптироваться к нелинейным отношениям x, которые мы вскоре увидим - мы называем эти модели моделями линейных базисных функций .

Мы уже рассматривали один пример базисных функций в первом посте серии, где мы дополнили простую модель линейной регрессии базисными функциями степеней x, т. Е.

Другой распространенной базисной функцией является гауссовский

Следуя тому же выводу, что и в предыдущем посте, мы находим решения максимального правдоподобия для w и α, чтобы быть

где

На изображении ниже показана модель линейной базисной функции с M -1 базисными функциями Гаусса. Мы видим, что увеличение количества базисных функций делает модель лучше, пока мы не начнем переобучать.

Выполнение

Используя тот же набор данных, что и в предыдущих сообщениях, мы получаем реализацию ниже.

Регуляризация

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

где q ›0 обозначает тип регуляризации, а λ контролирует степень регуляризации.

Наиболее частыми значениями q являются 1 и 2, которые называются регуляризацией L1 и регуляризацией L2 соответственно. Мы называем это регрессией лассо, когда мы используем регуляризацию L1, и регрессией гребня, когда мы используем регуляризацию L2.

Целевая функция гребневой регрессии

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

где α остается таким же, как и без регуляризации, поскольку член регуляризации не влияет на него.

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

На изображении ниже показана модель линейной базисной функции с различными значениями для λ, при этом количество базисных функций остается постоянным M = 8. Мы видим, что даже несмотря на то, что мы переобучаем с самого начала, мы можем настроить параметр регуляризации λ, чтобы предотвратить это - фактически, мы начинаем переобучать, когда регуляризация слишком велика. Еще одна интересная вещь, которую стоит увидеть, это то, что наша неопределенность увеличивается вместе с регуляризацией.

Выполнение

Резюме

  • линейной делает модель то, что она линейна по параметрам, а не по входным параметрам.
  • Мы можем дополнить линейную регрессию базисными функциями, получив модели линейных базисных функций.
  • Полиномиальная регрессия - это модель линейной базисной функции.
  • Регуляризация - это метод предотвращения переобучения.
  • В линейной регрессии есть различные виды регуляризации, например регуляризация L1 и L2.