I konw that the directional derivative of a function with a vector = gradient.vector (dot product). I want to know how to compute the directional derivative of a function with a tensor given the gradient. I am using tensorflow and Keras.

Hi @dali_dali, You can calculate the derivative of a function with a given tensor using tf.GradientTape( ). For example, consider the function `y = x * *2`

. The gradient at `x = 3.0`

can be computed as:

```
x = tf.Variable((3.0))
with tf.GradientTape() as tape:
y = x**2
dy_dx=tape.gradient(y, x)
print(dy_dx)
tf.Tensor(6.0, shape=(), dtype=float32)
```

Thank You.

Hi @Kiran_Sai_Ramineni,

Thank you very much, but I want to know how to compute the directional derivative, not the gradient.

Hi @dali_dali, once you find the gradients you can use tf.tensordot(gradients, input_vector) to find the directional derivative. For example,

```
@tf.function
def example():
a = tf.ones([1, 2])
b = tf.ones([3, 1])
return tf.gradients([b], [a],unconnected_gradients='zero')[0]
tf.tensordot(example().numpy(), (3.,4.),axes=0)
```

Thank You.