Hi all, I’m facing the following problem:
I have the output of the network y composed by N elements, say y_k for k=1,…,N and a vector p. I’d to calculate
summation(on k) |dy_k/dp|.
This is the snippet of the code that I currently use:
... y = model(data) for y_i in y: for i in enumerate(p): grad[i]+=abs(autograd.grad(y_i, p[i], create_graph=True, retain_graph=True))
Is there a way to do the same without iterate on y?
... y = model(data) for i in enumerate(p): grad[i] = autograd(abs(y),abs(p[i]), create_graph=True, retain_graph=True)
I have already tried different ways, but the final result doesn’t match the original one obtained with the first snippet of code.
Thanks in advance!