如何计算 Caffe 中“输入”层的梯度?

问题描述 投票:0回答:0

我想使用 Caffe 框架实现论文“Generalizing to unseen domains via adversarial data augmentation”提出的算法。程序如下。在 PyTorch 中,它可以实现为

grad = torch.autograd.grad(loss, data)[0]
。但是在 Caffe 中,据我所知,没有执行此操作的功能。那么如何计算 Caffe 中“输入”层的梯度。 “输入”层表示语义分割中的输入图像。

我试过在反向传播后调用

net->input_blobs()[0]->cpu_diff()
,但是
cpu_diff
中的值都是0。显然,Caffe默认不计算输入层的梯度。enter image description here

gradient caffe
© www.soinside.com 2019 - 2024. All rights reserved.