Фракталы и обучение нейросетей: как гиперпараметры формируют границу сходимости

Пятилетняя дочь однажды пришла из детского сада с категоричным выводом: математика — скука. С тех пор мы превращаем «скучную» математику в череду открытий. Лучше всего сработали фракталы: бесконечные зумы множеств Мандельброта и Жюлиа завораживают её не меньше, чем спирали на капусте романеско. Глядя на это увлечение, я поймал себя на мысли: ведь в обучении нейросетей скрыта та же логика бесконечного повторения правил. Если смотреть на процесс не как на «настройку модели», а как на динамическую систему, становится видно: по мере итераций мы снова и снова применяем одну и ту же трансформацию к состоянию параметров. А значит, закономерности, которые рождают фракталы, могут проявляться и в обучении.

Сходство действительно не поверхностное. Во многих фракталах граничные структуры появляются из-за того, что при повторном применении функции некоторые траектории «улетают» в бесконечность, а другие остаются ограниченными. Решающую роль играют параметры функции — они же гиперпараметры в машинном обучении. Измените их — и судьба траектории поменяется: расходится ли последовательность или удерживается в пределах. Фрактал определяется именно по границе между областями «сходится» и «расходится». Ровно такая же граница возникает и в обучении нейросети: есть наборы гиперпараметров, при которых обучение стабильно достигает хороших значений функции потерь, и соседние, где процесс «выкидывает» параметры в неустойчивые области.

Посмотрим на это через привычную практику. Обучение — это итеративное обновление параметров нейросети для минимизации функции потерь. Чаще всего используется градиентный спуск и его разновидности. Ключевые гиперпараметры определяют, как именно выполняются шаги обновления: размер шага (темп обучения), инерция (моментум), форма сглаживания (β-параметры в адаптивных методах), способ инициализации весов, размер батча, коэффициенты регуляризации. Их комбинация — это координаты в пространстве гиперпараметров, и в каждой точке этого пространства запуска «одна и та же» сеть может вести себя радикально по-разному.

Самый наглядный пример — темп обучения. Сделайте его слишком большим — и шаги по поверхности потерь становятся настолько размашистыми, что траектория перестаёт быть стабильной, значения параметров «разбегаются», потери растут. Уменьшите слишком сильно — и вы получите бесконечную череду крошечных шагов: сеть учится, но непозволительно медленно, что дорого и неэффективно. На практике мы стараемся поднимать темп обучения максимально высоко, оставаясь в зоне устойчивости. Если для каждой пары гиперпараметров отрисовать пиксель и закодировать его цветом исход исхода обучения (сходимость — сине-зелёный, расходимость — красно-жёлтый, насыщенность — скорость), то на границе «учится/не учится» проявляется причудливый, богатый на детали узор. И этот узор — фрактальный: в нём повторяются мотивы на разных масштабах, а структура границы оказывается самоподобной.

Почему так происходит? Оптимизация с конечным шагом — это дискретная динамическая система. Уравнение «новые параметры = старые параметры минус η умножить на градиент» — итеративное отображение, сродни классическим нелинейным картам, где известны зоны устойчивости, бифуркации и хаотические режимы. Добавьте моментум, и в систему встраивается память — фактически второй порядок динамики — что расширяет палитру режимов. В адаптивных методах типа Adam, где шаг меняется по каждой координате и зависит от экспоненциальных скользящих средних градиентов, ландшафт устойчивости становится ещё богаче: возникают криволинейные острова сходимости, разделённые тонкими «каньонами» нестабильности. Это и даёт фрактальные границы в пространстве гиперпараметров.

Важная деталь: фрактальность наблюдается не только по отношению к темпу обучения. Если строить карты по осям «темп — моментум», «темп — весовая регуляризация», «β1 — β2» для адаптивных оптимизаторов, то узоры сохраняются. Масштабируя и приближая отдельные участки, можно заметить повторяющиеся «кромки» стабильных зон — как если бы на карту множества Жюлиа накладывали разные фильтры. При фиксированной инициализации и данных рисунок устойчив, а при смене инициализации детали меняются, но характер границ остаётся самоподобным.

Эта картина помогает по-новому взглянуть на практики подбора гиперпараметров. Традиционный перебор по сетке кажется естественным, но на фрактальной границе он легко «промажет» узкие устойчивые коридоры. Случайный поиск зачастую эффективнее: он лучше покрывает пространство и имеет шанс попасть в тонкие «фьорды» сходимости. Байесовская оптимизация полезна, но её модели гладкости могут вводить в заблуждение около «рваных» границ. Комбинации стратегий — например, грубый случайный сэмплинг, затем локальное детальное сканирование вокруг удачных точек — работают надёжнее в условиях такой «рваной» геометрии.

Практические выводы:
- Используйте циклические или ступенчатые расписания темпа обучения: они позволяют «скользить» вдоль границы устойчивости, захватывая более высокие темпы без ухода в расходимость.
- Применяйте разогрев темпа обучения: постепенный выход на большие значения часто переносит траекторию в стабильный режим.
- Контролируйте моментум: чрезмерная инерция в сочетании с высоким темпом может ввести систему в колебательный, а затем хаотический режим.
- Небольшой весовой декей стабилизирует динамику, увеличивая область сходимости.
- Размер батча влияет на «шум» в градиенте: умеренный шум стохастического градиентного спуска иногда действует как регуляризатор, расширяя стабильные области.

Есть и исследовательские последствия. Если граница обучаемости фрактальна, то близость гиперпараметров в числовом смысле не гарантирует одинакового исхода обучения. Это объясняет «капризность» воспроизводимости, особенно при смене случайного зерна инициализации. Также становится понятнее, почему два почти идентичных эксперимента внезапно расходятся в качестве: траектории могли стартовать по разные стороны тонкой фрактальной границы.

Полезно мысленно связывать эти феномены с визуальными аналогиями. Представьте плоскость, где по одной оси отложен темп обучения, по другой — моментум. В нижнем левом углу вы видите спокойное синеватое море сходимости: маленькие шаги, слабая инерция — всё стабильно, но медленно. Поднимаясь вверх и вправо, появляются полосы и завихрения жёлто-красных зон — там, где динамика становится осциллирующей и уходит в расходимость. Между ними тянутся тонкие «заливы» зелёного — скоростные, но стабильные режимы. При увеличении масштаба картина повторяется — словно вы вглядываетесь в узор Мандельброта, но это вовсе не комплексная плоскость, а поле гиперпараметров.

Как воспроизвести экспериментально:
- Возьмите простую архитектуру (например, малую полносвязную сеть или крошечную свёрточную модель) и фиксируйте набор данных и инициализацию.
- Сканируйте темп обучения и моментум по регулярной или псевдослучайной сетке. Для каждой точки запускайте обучение на одинаковое число эпох или шагов.
- Классифицируйте исход: сходимость (потери падают ниже порога) или расходимость (потери «взрываются», градиенты становятся NaN, или метрика деградирует).
- Отмечайте не только факт сходимости, но и скорость — по ней появятся градиенты оттенков.
- Увеличивайте разрешение в интересующих зонах и повторяйте. На границе вы заметите самоподобие.

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

Любопытно, что шум и стохастичность не уничтожают фрактальную структуру, а скорей размывают её, превращая острые границы в «пушистые» зоны вероятности. Если считать не бинарно «сошлось/разошлось», а вероятность успешной тренировки при случайных сидах, то на карте гиперпараметров появятся облака с плавными градиентами. Однако и здесь при увеличении масштаба обнаруживаются те же рваные кромки.

Наконец, фрактальный взгляд помогает рациональнее строить пайплайны экспериментов. Логирование каждого запуска, визуализации карт гиперпараметров, стресс-тестирование устойчивости к маленьким сдвигам настроек, раннее прекращение обучения при признаках расходимости, автоматические «эвакуаторы» — снижение темпа или отключение моментума, — всё это экономит часы GPU и нервы. В проектировании архитектур полезно помнить о роли инициализации и нормализаций: они сдвигают и растягивают устойчивые регионы, делая обучение менее зависимым от точной подгонки темпа.

Итог прост и красив. Обучение нейронной сети — это итеративный процесс, управляемый гиперпараметрами. Там, где повторяются правила, рождаются фракталы. Граница между «учится» и «не учится» в пространстве гиперпараметров — не гладкая линия, а богатая самоподобием структура. Она объясняет внезапные провалы и неожиданные успехи, диктует аккуратность при поиске настроек и напоминает: за каждой удачной тренировкой стоит не только вычислительная мощь, но и тонкая динамика, способная быть столь же красивой, как узоры на поверхности капусты романеско.

5
3
Прокрутить вверх