forward-mode AD
forkortelse for forward-mode automatic differentiation
En teknik inden for automatisk differentiering, hvor derivater beregnes ved at propagere tangentinformation fremad gennem beregningsgrafen, én uafhængig variabel ad gangen.
Kort fortalt
Forward-mode AD er en metode til at beregne hældninger (afledte) af funktioner ved at føre en 'tangent' med gennem beregningerne, hvilket er effektivt når man kun har få inputvariabler.
- Kategori
- teknik
- Niveau
- ekspert
Betydninger
1- 1
En teknik inden for automatisk differentiering, hvor derivater beregnes ved at propagere tangentinformation fremad gennem beregningsgrafen, én uafhængig variabel ad gangen.
- Forward-mode AD er effektiv til at beregne Jacobi-vektor-produkter, især når antallet af output er meget større end antallet af input. — Baydin et al., 2017
- Implementeringer af forward-mode AD findes i biblioteker som JAX (jvp) og PyTorch (torch.autograd.forward_ad).
Hvornår bruges det
Forward-mode AD anvendes i praksis til at beregne Jacobi-vektor-produkter og til optimering af funktioner med få inputparametre, f.eks. inden for maskinlæring, fysiksimulering og finansiel modellering. Det er særligt nyttigt, når antallet af output er meget større end antallet af input.
Kodeeksempel
import jax.numpy as jnp
from jax import jvp
def f(x):
return x**2 + jnp.sin(x)
x = 1.0
tangent = 1.0
val, deriv = jvp(f, (x,), (tangent,))
print(deriv) # 2*1 + cos(1) ≈ 2.5403Eksempel på forward-mode AD i JAX: jvp beregner den retningsafledte af f i retning af tangenten.
Oprindelse
Begrebet 'forward-mode' stammer fra 1960'ernes og 1970'ernes udvikling af automatisk differentiering, hvor man skelnede mellem 'forward mode' (fremadrettet) og 'reverse mode' (baglæns).
Afledte ord
1Kilder
2- Automatic differentiation in machine learning: a survey
- Evaluating derivatives: principles and techniques of algorithmic differentiation