CustomWithLossCell计算loss没有问题,在计算梯度时报错。
【操作步骤&问题现象】
1、CustomWithLossCell计算network的loss没有问题,在计算梯度时报错。
2、报错内容似乎为StrideSliceGrad不支持梯度计算,不知道是否是这个原因,且不知道StrideSliceGrad对应于网络中的哪个函数。
3、在之前在网络中我用了ops.Rsqrt(),在计算梯度时也报同样错误,内容是将StrideSliceGrad替换为Rsqrt,我把网络中的ops.Rsqrt()去掉了,就没有报Rsqrt的错,但是报了如下的错。麻烦解释一下报错原因以及StrideSliceGrad是指哪个函数。
解答:
大致可以定位到GradOperation出的问题,似乎在计算loss过程中无法再次反向传播获取梯度,然后再对loss进行反向传播更新梯度。