reverse-mode AD
forkortelse for Automatic Differentiation
En teknik til effektiv beregning af gradienter ved at anvende kædereglen baglæns gennem en beregningsgraf.
Kort fortalt
En metode til at beregne, hvor meget hver parameter påvirker fejlen i en model, ved at arbejde baglæns fra output til input.
- Kategori
- teknik
- Niveau
- øvet
Betydninger
1- 1
En mode af automatisk differentiation, der beregner gradienter ved at propagere derivater baglæns gennem en beregningsgraf, hvilket er effektivt for funktioner med mange input og ét output.
- Reverse-mode AD er grundlaget for backpropagation i neurale netværk.
- Moderne deep learning-rammer som TensorFlow og PyTorch implementerer reverse-mode AD automatisk.
Hvornår bruges det
Anvendes primært i træning af neurale netværk, hvor gradienterne af tabsfunktionen med hensyn til alle parametre beregnes effektivt ved én enkelt fremad- og tilbagekørsel.
Kodeeksempel
import torch
x = torch.tensor([1.0, 2.0], requires_grad=True)
y = torch.sum(x**2)
y.backward()
print(x.grad) # Output: tensor([2., 4.])Eksempel på reverse-mode AD i PyTorch: en simpel funktion og dens gradient.
Oprindelse
Udviklet som en generalisering af backpropagation-algoritmen, men formaliseret inden for automatisk differentiation i 1970'erne.
Kilder
2- Automatic Differentiation in Machine Learning: a Survey (Baydin et al., 2017)
- Learning representations by back-propagating errors (Rumelhart et al., 1986)