В настоящее время я обучаю сверточную нейронную сеть, используя Mxnet, с C ++ Symbol API.Эта сеть содержит несколько слоев Batchnormalization, которые содержат NDArray с четырьмя параметрами.Два из них, параметры moving_mean и moving_variance, должны обновляться в каждом пакете во время обучения.
Я предполагал, что, поскольку логическое значение для прямого прохода исполнителя установлено на true
, онобудет автоматически обновлять новые параметры.Однако по некоторым причинам эти два NDArray остаются без изменений параметра.Как так?Кроме того, поскольку для этих двух NDArray нет вычисляемых градиентов, поскольку это не «обучаемые» параметры, я не могу обновить значения с помощью обычной функции обновления оптимизатора.Как сообщить Mxnet, используя API символов, обновить NDArrays moving_mean и moving_variance?