Автоматическое прореживание сети
Идея
Ранее мы рассматривали регуляризацию нейросети путём упрощения её архитектуры вручную. Более эффективным подходом является автоматическое прореживание сети (automatic network pruning), то есть полное отбрасывание малозначимых фрагментов сети (связей, нейронов, наборов нейронов или целых слоёв) автоматическими средствами. Это проще и позволяет лучше подстроить прореживание под специфику изучаемых данных.
Детальный обзор методов прореживания нейросетей приведён в [1].
Преимущества
Прореживание нейросетей позволяет:
-
упростить нейросеть, чтобы бороться с переобучением и повысить обобщающую способность сети;
-
сократить число параметров, чтобы сеть занимала меньше памяти;
-
уменьшить энергопотребление ресурсоёмких вычислений;
-
использовать нейросеть на менее мощных процессорах (в телефоне, автономном роботе);
-
быстрее обрабатывать большие объемы информации (например, видеопоток);
-
увеличить масштабируемость модели, обрабатывая большее число пользовательских запросов за единицу времени.