None basic_ML_autodiff

Aprendizaje automático: diferenciación automática

Métodos potenciales de prospección, FCAG, 2023.

Un breve ejemplo de la poderosa herramienta diferenciación automática. La diferenciación automática es el corazón de casi cualquier plataforma para realizar aprendizaje automático en la actualidad.

Con la diferenciación automática podemos obtener derivadas parciales de cualquier función diferenciable con respecto a sus parámetros.

Ejemplo mínimo

En esta notebook, queremos calcular la derivada repecto a $x$ de $f(x)=x^2$ en $x=3$. Claramente, el resultado es $2\times3=6$.

En TensorFlow, la diferenciación automática se realiza por medio de tf.GradientTape().

In [3]:
import tensorflow as tf
In [7]:
input_var = tf.Variable(initial_value = 3.)

# Abrimos el scope GradientTape para monitorear las operaciones:
with tf.GradientTape() as tape:
     result = tf.square(input_var)

# Ya podemos evaluar la derivada:
gradient = tape.gradient(result, input_var)
In [6]:
print(gradient.numpy())
6.0

Eso es todo por hoy.