tf.gradient的行为类似于tfp.math.diag_jacobian

时间:2019-03-12 12:23:22

标签: python tensorflow diagonal gradients

我尝试使用来自输入数据的损失函数的梯度来计算输入数据的噪声:

my_grad = tf.gradients(损失,输入)

loss是大小为(nx 1)的数组,其中n是数据集的数量,m是数据集的大小,输入是(nxm)的数组,其中m是单个数据集的大小。

我需要my_grad的大小(n x m)-因此,对于每个数据集,都要计算梯度。但是根据定义,i!= j为零的渐变-但是tf.gradients分配了大量的内存,并且可以运行很多次……

一个版本,仅在i = j很大的地方才计算梯度-任何想法如何到达那里?

0 个答案:

没有答案