3

Недавно я изучил сеть backpropagation и проделал некоторые ручные упражнения. После этого у меня возник вопрос (возможно, не имеет смысла): есть ли что-то важное в следующих двух разных методах замены: 1. Инкрементальное обучение: веса сразу обновляются, как только все дельта-видж известны и до этого представляя следующий обучающий вектор. 2. Пакетное обучение: дельта Wij вычисляются и сохраняются для каждого примера учебного вектора. Тем не менее, дельта Wij не используются сразу для обновления весов. Обновление веса производится в конце учебной эпохи.Нейронная сеть вес

Я искал googled какое-то время, но не нашел никаких результатов.

+0

Я думаю, что вы имеете в виду пакетные и инкрементные режимы обучения. – Amro

ответ

7

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

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

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

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

Пакетное обучение обычно является «по умолчанию» (чаще всего используется в учебниках по ML и т. Д.), И нет ничего плохого в использовании его, если оно сходится в пределах допустимых временных пределов. Опять же, разница в производительности (разрешении или точности классификации) мала или незначительна.

2

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

Итак, для самого первого входного вектора одни и те же дельта будут вычисляться независимо от выбранного вами метода. Теперь для метода «Последовательность» весы в сети будут меняться, а в методе «Одновременный» весы останутся прежними. Когда представлен второй входной вектор, оба метода теперь будут создавать разные дельта, так как весы различаются между двумя сетями.