С начала эры глубокого обучения исследователи задавались вопросом: почему нейронные сети требуют так много параметров для эффективной работы? В статье описывается гипотеза «лотерейного билета», предложенная Джонатаном Франклом и Майклом Карбином, которая объясняет этот феномен и предлагает новый взгляд на то, как именно обучаются сложные модели.
🧠 Суть гипотезы: выигрыш в вычислительной лотерее 0:00
Традиционно нейронные сети проектируются как избыточные системы. Янник Килчер объясняет, что стандартная полносвязная сеть содержит огромное количество соединений (весов) между слоями . Процесс обучения (SGD — стохастический градиентный спуск) настраивает эти веса, чтобы достичь высокой точности, например 90% на тестовом наборе данных .
Давно известно, что после обучения сеть можно «прунить» (от англ. pruning — обрезка) . Этот процесс позволяет:
- Удалить до 90% параметров без потери точности .
- Значительно сократить требования к памяти для хранения модели .
- Ускорить инференс (выполнение) модели за счет меньшего количества вычислений .
Однако гипотеза «лотерейного билета» (The Lottery Ticket Hypothesis) идет дальше. Она утверждает, что внутри большой случайно инициализированной сети существует подсеть, которая при правильной инициализации может быть обучена с нуля до той же точности, что и исходная полная сеть, причем за то же или меньшее время .
🎫 Почему нельзя просто создать маленькую сеть сразу? 4:07
Один из главных вопросов, который разбирает Килчер: если 90% параметров лишние, можем ли мы просто с самого начала обучать маленькую сеть? По словам автора, короткий ответ — нет .
Главное условие успеха «выигрышного билета» заключается не только в структуре (архитектуре) подсети, но и в её начальных весах ($\theta_0$) . По мнению Франкла и Карбина, обучение маленькой сети сработает только в том случае, если мы перенесем в неё те же самые значения весов, которые были у этой части нейронов в большой сети в момент её случайной инициализации .
Янник Килчер приводит аналогию с комбинаторикой:
- Большая сеть — это огромное количество потенциальных подсетей (комбинаций параметров) .
- Случайная инициализация — это раздача «лотерейных билетов» каждой из этих подсетей .
- За счет избыточности параметров мы почти гарантированно получаем хотя бы один «выигрышный билет» — подсеть, чья начальная точка в пространстве весов идеально подходит для оптимизации градиентным спуском .
🛠 Алгоритм поиска «выигрышных билетов» 8:38
Процесс идентификации таких эффективных подсетей, описанный в работе, состоит из нескольких этапов:
- Инициализация: Создается полная нейронная сеть с начальными весами $\theta_0$ .
- Обучение: Сеть обучается до достижения определенного результата .
- Обрезка (Pruning): Удаляется определенный процент весов (обычно те, чьи абсолютные значения минимальны) .
- Сброс (Reset): Оставшиеся веса возвращаются к их исходным значениям $\theta_0$ . Теперь у нас есть «выигрышный билет», готовый к повторному обучению в изоляции.
Килчер подчеркивает, что авторы рекомендуют проводить этот процесс итеративно . Вместо того чтобы «отрезать» 90% весов за раз, лучше удалять их по частям, проводя промежуточные обучения. По мнению Янника, это позволяет сети перераспределять «ответственность» между оставшимися весами . Если удалить слабый нейрон сразу, его функции могут потеряться, но при итеративном подходе соседние нейроны успевают адаптироваться и взять его роль на себя .
📊 Экспериментальные данные и выводы 13:06
Эмпирические результаты исследования показывают удивительные вещи. На графиках зависимости точности от количества оставшихся весов видно:
- При случайном удалении весов точность падает мгновенно .
- При использовании метода «лотерейного билета» точность сохраняется даже при наличии всего 1–2% параметров .
- Удивительный факт: Подсети с 16% параметров часто показывают точность выше, чем оригинальная полная сеть .
Кроме того, такие подсети обучаются быстрее . Например, сеть с 20% весов достигает пиковой точности за меньшее количество итераций, чем полная модель .
Важнейшим открытием Килчер называет роль инициализации. Если взять ту же структуру «выигрышной» подсети, но инициализировать её новыми случайными числами вместо оригинальных $\theta_0$, она показывает значительно худшие результаты . Это доказывает, что успех нейросети зависит от удачного совпадения конкретной архитектуры и конкретной точки старта в пространстве параметров .
В завершение Янник упоминает интересный нюанс: веса, попадающие в «выигрышный билет», за время обучения проходят в пространстве оптимизации гораздо большее расстояние, чем «бесполезные» веса . Это означает, что SGD сильнее воздействует именно на те параметры, которые изначально были удачно инициализированы, что и делает их ключевыми для работы всей системы .