存Batch Norm时,无法只计算forward-backward,但不更新参数
Created by: Tristan-Hao
当model中存在Batch Norm时,希望只计算forward-backward,但不更新参数,只计算input的梯度。 param_grads = fluid.backward.append_backward( loss, parameter_list=[self._input_name]) self._gradient = filter(lambda p: p[0].name == self._input_name, param_grads)[0][1]
现在的现像是,非is_test模式下,可以计算梯度,但参数都被更新,相当于正常训练模式。 is_test模式下,参数不会被更新,但无法计算梯度,只能预测。 请确认和支持该能力。谢谢