Причины переобучения и как регуляризация его улучшает

Алиса : Привет, Боб !!! Я тренировал свою модель в течение 10 часов, но моя модель дает очень плохую точность, хотя она работает исключительно хорошо с данными обучения. В чем проблема?

Боб: Ой !! Кажется, ваша модель переоснащается данными обучения. Вы использовали регуляризацию?

Алиса: Что это?

Подобные проблемы, связанные с переобучением, распространены в машинном обучении, и есть много способов избежать таких проблем, но почему возникает эта проблема?

Процесс обучения модели кажется довольно простым:

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

Но что происходит между этим процессом? Что вызывает переобучение и почему регуляризация дает решение?

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

Итак, что можно сделать, чтобы избежать проблемы переобучения?

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

  1. Норма L1:

Это работает следующим образом: добавляется штрафной член с параметром λ в функцию ошибок, которую нам нужно уменьшить. W здесь не что иное, как весовая матрица.

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

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

2. Норма L2:

Регуляризация L2 может не сильно отличаться от L1, но они почти не имеют аналогичного влияния. Здесь веса «w» возводятся в квадрат по отдельности, а затем складываются. Свойство выбора функции L1 здесь потеряно, но оно обеспечивает лучшую эффективность в не редких случаях. Иногда L2 называют регрессией гребня. параметр λ работает так же, как L1.

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

Исключение: это интересный способ регуляризации нейронной сети, впервые предложенный Шриваставой и др. (2014), в документе предлагается, чтобы некоторые узлы в слое выбирались случайным образом и их следует отбрасывать. / игнорируется во время обучения.

Каждому узлу предоставляется вероятность быть отброшенным, скажем, у узла drop_prob = 0,4, поэтому у него есть 40% шанс быть отброшенным и 60% шанс быть поднятым. Каждый раз эта вероятность будет заставлять нейронную сеть менять свою форму, каждый раз выглядя как новая сеть. Этот метод, казалось, в значительной степени решил проблему регуляризации. Вероятность отбрасывания не поддерживается высокой, так как это сделает сеть разреженной, что приведет к ее недостаточному оснащению.

Увеличение данных. Мы можем столкнуться с проблемами переобучения компьютерного зрения, и увеличение объема данных - лучшее решение для этого. Нам просто нужно самостоятельно увеличивать изображения, например, перевернуть, обрезать, повернуть изображение.

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

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