Вы на самом деле не хотите вычислять градиент, вы хотите вычислить якобиан.Градиент - это применение оператора nabla к скалярной функции по отношению к вектору, в то время как якобиан - это просто матрица, где каждый элемент J_ij является производной от y_i по x_j, что вам и нужно.
Это все еще не реализовано в Tensorflow, но подробно обсуждено здесь .Там вы, вероятно, найдете подходящий для вас способ работы.
Основная идея состоит в том, чтобы вызывать tf.gradients
только по одной переменной за раз, а затем строить якобиан оттудавручную.