Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Как определить оптимальное количество "эпох" для нейронной сети?

ПрограммированиеМашинное обучение+2
  · 9,8 K
Openstack DevOps and IBM/Informix Certified DBA . Phd in Math (Duality of spaces of...  · 4 апр 2022
Количество эпох не столь важно. Более важной является ошибка проверки и обучения. Пока он продолжает падать, тренировки должны продолжаться. Например, если ошибка проверки начинает увеличиваться, это может быть признаком переобучения. Вы должны установить максимально возможное количество эпох и прекратить обучение на основе частоты ошибок.
===========================
Ожидается, что хорошая модель будет отражать основную структуру данных. Другими словами, он не переобучается и не недообучается.
При построении модели нейронной сети мы задаем параметр количества эпох до начала обучения. Однако изначально мы не можем знать, сколько эпох подходит для модели. В зависимости от архитектуры нейронной сети и набора данных нам нужно решить, когда веса нейронной сети сходятся.
Для моделей нейронных сетей обычно исследуют графики кривой обучения, чтобы принять решение о сходимости модели. Как правило, мы строим графики потерь (или ошибок) в зависимости от эпохи или точности в зависимости от эпохи. Во время обучения мы ожидаем, что потери будут уменьшаться, а точность увеличиваться по мере увеличения количества эпох. Однако мы ожидаем, что и потери, и точность стабилизируются через какой-то момент.
Как обычно, рекомендуется разделить набор данных на обучающий и проверочный наборы. Таким образом, мы можем построить графики кривой обучения для разных наборов. Эти графики помогают нам диагностировать, является ли модель чрезмерно изученной, недостаточно изученной или соответствует обучающему набору.
Обучение нейронной сети занимает значительное количество времени даже при современных технологиях. На этапе построения модели, если мы установим слишком малое количество эпох, обучение остановится еще до того, как модель сойдется. И наоборот, если мы установим слишком большое количество эпох, мы столкнемся с переобученим.При этом мы потратим впустую вычислительную мощность и время.Широко распространенное решение этой проблемы — использовать раннюю остановку. Это форма регуляризации.
Как следует из названия, основная идея раннего прекращения состоит в том, чтобы прекратить тренировку, когда будут соблюдены определенные критерии. Обычно мы прекращаем обучение модели, когда ошибка обобщения начинает увеличиваться (потеря модели начинает увеличиваться или точность начинает снижаться). Чтобы принять решение об изменении ошибок обобщения, мы оцениваем модель на проверочном наборе после каждой эпохи.
Используя раннюю остановку, мы можем изначально установить большое число эпох. Таким образом, мы гарантируем, что полученная модель извлекла уроки из данных. После завершения обучения мы всегда можем проверить графики кривой обучения, чтобы убедиться, что модель подходит.
Python-разработчик и data scientist в компании KeyHabits.  · 4 апр 2022
Коротко. Если целевым параметром обучения модели нейронной сети является минимизация функции потерь, то оптимальным можно считать количество эпох в области выхода на плато кривых обучения и валидации на графике этой функции потерь. Немного подробнее. У любой модели МО после обучения в общем случае может быть 3 состояния: переобученния (overfitting), оптимальное и... Читать далее
Мой текущий проект: kpmi.ru — профориентация методами искусственного интеллекта.Перейти на kpmi.ru