Почему потери и точность проверки нейронных сетей вначале будут колебаться? - PullRequest
0 голосов
/ 17 октября 2018

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

Accuracy Loss

1 Ответ

0 голосов
/ 17 октября 2018

Для SGD величина изменения параметров кратна скорости обучения и градиенту значений параметров относительно потери.

θ =θ - α ∇ θ E [J (θ)]

Каждый его шаг будет идти в неоптимальном направлении (т. е. слегка неправильно), поскольку оптимизатор обычно имеет тольковидел некоторые значения.В начале обучения вы находитесь относительно оптимального решения, поэтому градиент ∇ θ E [J (θ)] большой, поэтому каждый неоптимальный шаг оказывает большое влияние на ваши потери и точность.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...