2

В настоящее время мне интересно, когда прекратить обучение Deep Autoencoders, особенно если он застрял на локальном минимуме.Адекватная ошибка среднего квадрата при использовании Deep Autoencoder/Deep Learning вообще

Существенно, чтобы получить критерий обучения (например, MSE), например, 0,000001 и заставить его полностью восстановить входные данные или нормально сохранять различия (например, останавливать, когда MSE составляет около 0,5) в зависимости от используемого набора данных.

Я знаю, что лучшая реконструкция впоследствии может привести к лучшим результатам классификации, но есть ли «правило большого пальца», когда нужно остановиться? Меня особенно интересуют правила, которые не имеют эвристического характера, такого как «если MSE не становится меньше в x итерациях».

ответ

1

Я не думаю, что для этого можно получить общее правило, так как генерация NN: s/машинное обучение - это очень специфическая процедура и, как правило, there is no free lunch. Как решить, что такое «хорошая» ошибка обучения для завершения, зависит от различных специфических для конкретной ситуации факторов, например. шум в данных. Оценка вашего NN только в отношении наборов тренировок с единственной целью минимизации MSE будет во много раз приводить к переобучению. Только с ошибкой обучения в качестве обратной связи вы можете настроить свой NN на шум в данных обучения (следовательно, переобучение). Один из способов избежать этого - проверка валидации. Вместо того, чтобы только обучать NN данным данным, ваш раздел данных будет разделен на набор тренировок, набор валидации (и набор тестов).

  • Тренировочные комплекты: Обучение и обратная связь с NN, естественно, будет уменьшаться при длительной тренировке (по крайней мере, до значений «ОК» MSE для конкретной проблемы).
  • Наборы для проверки: Оцените свой NN w.r.t. к этим, но не дают обратной связи вашему NN/генетическому алгоритму.

Наряду с оценкой-обратной связью ваших наборов учебных материалов вы должны, следовательно, также оценивать набор валидаций, однако без обратной связи с вашей нейронной сетью (NN).

Отслеживать снижение MSE для обучения, а также наборов для проверки; обычно ошибка обучения будет неуклонно снижаться, тогда как в какой-то момент ошибка проверки достигнет минимума и начнет увеличиваться с дальнейшим обучением. Разумеется, во время выполнения, где возникают эти минимумы, вы не можете знать, так как обычно один хранит NN с самой низкой ошибкой проверки, а после этого, по-видимому, не был обновлен за какое-то время (т. Е. С ошибкой ретроспективы: мы прошли минимумы в ошибка проверки), алгоритм завершается.

См., Например, в следующей статье Neural Network: Train-validate-Test Stopping, а также в this SE-statistics thread обсуждаются два разных метода проверки.

Для обучения/валидации глубоких автокодеров/глубокого обучения, в частности w.r.t. я считаю статью Dropout: A Simple Way to Prevent Neural Networks from Overfitting (*) ценной.

(*) Г. Шривистава, Г. Хинтон, А. Крижевский, И. Суцкве, Р. Салахутдинов, Университет Торонто.

Смежные вопросы