Существует три причины выбора размера партии.
- Скорость. Если вы используете графический процессор, то большие партии часто обрабатываются почти так же быстро, как и меньшие. Это означает, что отдельные случаи намного быстрее, что означает, что каждая эпоха также быстрее.
- Регуляризация. Меньшие партии добавляют регуляризацию, аналогичную увеличению отсева, увеличению скорости обучения или добавлению снижения веса. Большие партии уменьшают регуляризацию.
- Ограничения памяти. Это жесткий предел. В определенный момент ваш графический процессор просто не сможет вместить все данные в памяти, и вы больше не сможете увеличивать размер пакета.
Это говорит о том, что большие размеры пакета лучше, пока вы исчерпать память. Если у вас не возникают проблемы с переоснащением, больший и все еще работающий размер партии (1) ускорит обучение и (2) позволит увеличить скорость обучения, что также ускоряет процесс обучения.
Этот второй момент происходит из-за регуляризации. Если вы увеличиваете размер пакета, уменьшенная регуляризация возвращает некоторый «бюджет регуляризации», который нужно потратить на увеличение скорости обучения, что добавит эту регуляризацию обратно.
Кстати, регуляризация - это просто способ понять, насколько шумным или плавным является ваш тренировочный процесс.
Низкая регуляризация означает, что обучение очень плавное, а это означает, что обучение легко сходится но также легко поддается обучению для переобучения.
Высокая регуляризация означает, что обучение более шумное или трудное, но результаты проверки лучше, потому что зашумленный процесс обучения уменьшает переобучение и возникающую в результате ошибку обобщения.
Если вы знакомы с смещением отклонения отклонения , добавление регуляризации - это способ добавления небольшого смещения для уменьшения отклонения. Вот одна из многих хороших рецензий на эту тему: Регуляризация: путь к компромиссу с отклонениями .
По более широкой теме c регуляризации, обучения расписания и настройка гиперпараметров, я настоятельно рекомендую две статьи на эту тему, написанные Lesl ie N. Smith.
В первой статье, посвященной супер-конвергенции, также будут рассмотрены некоторые из ваших вопросов о том, сколько эпох использовать.
После этого нет правильных ответов о том, сколько эпох использовать, только руководство. Что я делаю:
- Сохраняйте график тренировок как можно быстрее, пока вы работаете над моделью. Ускоренное обучение означает, что вы можете попробовать больше идей и более точно настроить свои гиперпараметры.
- Когда вы по какой-то причине будете готовы к точной настройке результатов (отправка в Kaggle, развертывание модели для производства), тогда вы можете увеличивать эпохи. и выполнить некоторую окончательную настройку гиперпараметров, пока результаты проверки не перестанут улучшаться «достаточно», где «достаточно» - это сочетание вашего терпения и потребности в лучших результатах.