None basic_ML_autodiff

Aprendizaje automático: diferenciación automática

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

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$.

JAX

Empleamos el software JAX.

In [1]:
import jax
import jax.numpy as jnp
In [7]:
x = 3.

# Función x**2:

def fun(x):
    return x**2


dfdx = jax.grad(fun)   # código para la derivada de la subrutina


print(f"dfdx(x={x}) = {dfdx(x)} ") # evaluamos la derivada en x = 3
dfdx(x=3.0) = 6.0 

Eso es todo por hoy.

Referencias