Эмпирический анализ Гессиана чрезмерно параметризованных нейронных сетей

МЕНЮ


Главная страница
Поиск
Регистрация на сайте
Помощь проекту
Архив новостей

ТЕМЫ


Новости ИИРазработка ИИВнедрение ИИРабота разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика

Авторизация



RSS


RSS новости


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

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

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

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

Недавние исследования показали, что энергетический ландшафт современной нейронной сети с большим количеством узлов из-за значительной сверхпараметризации содержит огромное количество плоских направлений. Для примера на картинке слева показаны отсортированные собственные значения гессиана до обучения (синие точки) и после обучения (оранжевые точки). Как видно, до обучения есть множество подъемов и множество спусков, но и плоских направлений - точек вблизи нуля - тоже не меньше.

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

Еще интересный факт: немногие положительные собственные значения-отщепенцы, виднеющиеся на правом конце оранжевой кривой, отвечают существенно отличающимся классам входных данных. Например, пусть при обучении сети мы скармливаем ей 1000 картинок, состоящие из 10 групп по 100 штук, так что внутри каждой группы картинки очень похожие. То есть входные данные обладают значительной избыточностью, а существенно отличающихся классов в них будет 10. В этом случае и направлений на энергетическом ландшафте нейронной сети, двигаясь в которых, мы будем существенно увеличивать ошибку, будет всего 10, а не 1000. Это проиллюстрировано графиком справа, где при обучении берутся разные количества классов (кластеров обучающих примеров), и число больших собственных значений гессиана после обучения, отделенных от остальных - внезапно! - щелью, оказывается в точности равным количеству классов.

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

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

https://arxiv.org/abs/1706.04454


Источник: arxiv.org

Комментарии: