Как вы распространяете ошибки в нейронной сети? - PullRequest
0 голосов
/ 23 ноября 2018

Как вы распространяете ошибки в нейронной сети?

Я строил нейронную сеть с нуля, чтобы классифицировать цифры из набора данных MNIST.До сих пор я построил многоуровневую сеть и применил сигмовидную функцию для активаций во время прямого распространения.Все веса были изначально инициализированы в диапазоне -1 <= weight <= 1. </p>

При обратном распространении ошибки с использованием градиентного спуска я вычислил производную сигмоида с использованием выходных активаций:

sigmoidDerivatives = outputActivations. * (1 - outputActivations)

Затем я вычислил мои выходные ошибки как:

outputError = (outputActivations-tags). *sigmoidDerivatives.

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

Любая помощь будет принята с благодарностью.Проект завершается в Matlab.

...