好奇动态图里反向传播过程相关
Created by: xiangyubo
版本:paddle 1.5.2 想咨询一个问题,在 paddle 的动态图里面,最后 loss 运行 backward 方法,是会计算整个网络所有参数的梯度吗? 还咨询一下哈,是不是所的 Variable 变量,都会存一个 float32的梯度属性? 我是在看源码的时候有个部分,optimizer.backward 函数里会去获取所有参数的梯度参数
for param in parameters:
if not param.trainable:
continue
if param._ivar._grad_ivar() is not None:
# create gradient variable
grad_var = Variable(
block=loss.block,
name=param._ivar._grad_name(),
stop_gradient=True,
ivar=param._ivar._grad_ivar())
params_grads.append((param, grad_var))