Skip to Main Content
Aprendizaje automático práctico con Scikit-Learn, Keras y TensorFlow, 3ª edición
book

Aprendizaje automático práctico con Scikit-Learn, Keras y TensorFlow, 3ª edición

by Aurélien Géron
September 2024
Intermediate to advanced content levelIntermediate to advanced
864 pages
27h 36m
Spanish
O'Reilly Media, Inc.
Book available
Content preview from Aprendizaje automático práctico con Scikit-Learn, Keras y TensorFlow, 3ª edición

Apéndice B. Autodiff

Este apéndice explica cómo funciona la función de autodiferenciación (autodiff) de TensorFlow y cómo se compara con otras soluciones.

Supón que defines una función f(x, y) = x2y + y + 2, y necesitas sus derivadas parciales ∂f/∂x y ∂f/∂y, normalmente para realizar el descenso de gradiente (o algún otro algoritmo de optimización). Tus principales opciones son la diferenciación manual, la aproximación por diferencias finitas, la autodiferenciación en modo directo y la autodiferenciación en modo inverso. TensorFlow implementa la autodiferenciación en modo inverso, pero para entenderla, es útil ver primero las otras opciones. Así que repasemos cada una de ellas, empezando por la diferenciación manual.

Diferenciación manual

La primera forma de calcular derivadas consiste en coger un lápiz y un trozo de papel y utilizar tus conocimientos de cálculo para deducir la ecuación adecuada. Para la función f(x, y) que acabamos de definir, no es demasiado difícil; sólo tienes que utilizar cinco reglas:

  • La derivada de una constante es 0.

  • La derivada de λx es λ (donde λ es una constante).

  • La derivada de es λxλ - 1, por lo que la derivada de x2 es2x.

  • La derivada de una suma de funciones es la suma de las derivadas de estas funciones.

  • La derivada de λ veces una función es λ veces su derivada.

A partir de estas reglas, puedes derivar la Ecuación B-1.

Ecuación B-1. Derivadas parciales de f(x, y)
f x = (x 2 y) x + y x + 2 x = y (x 2 )
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Aprender Python, 5ª Edición

Aprender Python, 5ª Edición

Mark Lutz
Python de alto rendimiento, 2ª edición

Python de alto rendimiento, 2ª edición

Micha Gorelick, Ian Ozsvald

Publisher Resources

ISBN: 9781098179977Supplemental Content