tensorflow框架,想求分类模型model对输入x的梯度。
在输出层为sigmoid函数下,使用以下代码没有问题。但如果输出层使用softmax函数,该如何求输出对x的梯度?
def grad(x, model):
x = tf.constant([x], dtype=tf.float32)
with tf.GradientTape() as tape:
tape.watch(x)
y_pred = model(x)
gradient = tape.gradient(y_pred, x)
return gradient[0].numpy()
感谢回答。
相似问题