Paddle 组网时如何获取并使用模型参数的梯度?

arknldoa  于 2022-10-20  发布在  其他
关注(0)|答案(2)|浏览(342)

【paddle版本】:CPU 1.6
【机器环境】:MacOS + Python 3.7
【问题描述】:
请问paddle里面有没有方法能够:

  1. 在组网时获取到模型参数梯度的Variable变量
  2. 基于1中所述梯度的Variable变量和一个已有的梯度数据,定义二者的平方差作为损失loss
  3. 通过更新输入数据x(比如更新一个随机输入的噪声图片),而不是网络模型的参数,来最小化2中所述的loss

谢谢!

pvcm50d1

pvcm50d11#

paddle.fluid.gradients 可以获取输出对输入的梯度.

zqry0prt

zqry0prt2#

使用fluid.gradients(mean_diff_loss, dummy_x)在获取关于输入数据dummy_x的梯度(应该是二阶导)时有些问题,报下面的错,不知道是什么原因啊?谢谢

相关问题