Переосмысление этих гиперпараметров улучшит реальную производительность вашей модели.

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

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

Кроме того, этим драгоценным гиперпараметрам уделяется мало внимания. Мы настраиваем их, чтобы минимизировать потери в тренировках. Затем используйте «более продвинутые» подходы к регуляризации, чтобы улучшить наши модели, уменьшив переоснащение. Это правильный подход?

Переосмысление градиентного спуска

Сделаем шаг назад. Допустим, нам нужен абсолютный минимум потерь. Если бы у нас были неограниченные вычислительные мощности, что бы мы делали со скоростью обучения? Мы, вероятно, сократим его до абсолютного минимума. Однако, в отличие от таких моделей, как линейная регрессия, нейронные сети не являются выпуклыми. Они не похожи на чашу, а на горный хребет:

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

Мы хотим попасть на одно из этих более плавных плато. Нейронные сети с более плоскими минимумами обладают большей универсальностью (плюс такие преимущества, как предотвращение атак на вашу сеть).

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

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

Нахождение этого широкого минимума

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

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

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

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

Резюме

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

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