Langevin dynamics
Langevin dynamics er en stokastisk differentialligningsbaseret metode til at generere prøver fra en sandsynlighedsfordeling ved at tilføje støj til gradienten af fordelingens energi.
Kort fortalt
Kort fortalt: en teknik, der kombinerer gradientnedstigning med tilfældig støj for at udforske og sample fra komplekse fordelinger.
- Kategori
- teknik
- Niveau
- ekspert
- Udtale
- /lɑ̃ʒvɛ̃ daɪˈnæmɪks/
Betydninger
1- 1
En stokastisk proces, der beskriver udviklingen af et systems tilstand ved at kombinere en deterministisk gradient (fra en potentiel energi) med termisk støj, hvilket muliggør sampling fra ligevægtsfordelingen (Boltzmann-fordeling). I maskinlæring anvendes den som en Markov Chain Monte Carlo-metode til at sample fra en målsandsynlighedsfordeling ved iterativt at opdatere parametre med gradienten af log-sandsynligheden plus Gaussiske støjled.
- Langevin dynamics anvendes i Stochastic Gradient Langevin Dynamics (SGLD) til at sample fra posterior-fordelingen i Bayesian neural networks. — Welling & Teh, 2011
- I score-baserede generative modeller bruges Langevin dynamics til at generere data ved at følge den estimerede score (gradient af log-sandsynligheden) med støj. — Song & Ermon, 2019
Hvornår bruges det
I maskinlæring bruges Langevin dynamics ofte som en MCMC-metode til at sample fra posterior-fordelinger i Bayesian deep learning, samt i optimeringsalgoritmer som Stochastic Gradient Langevin Dynamics (SGLD) til at undgå lokale minima. Den spiller også en central rolle i score-baserede generative modeller (diffusion models).
Formel
dθ = -∇U(θ) dt + √(2T) dW, where U is the energy function, T is temperature, and dW is Wiener noise.Kodeeksempel
def langevin_step(theta, grad_log_prob, step_size, noise_std):
noise = np.random.normal(0, noise_std, size=theta.shape)
theta_new = theta + step_size * grad_log_prob(theta) + np.sqrt(2 * step_size) * noise
return theta_newÉt trin af Langevin dynamics: opdater parameteren med gradienten af log-sandsynligheden plus støj skaleret med √(2·step_size).
Oprindelse
Opkaldt efter den franske fysiker Paul Langevin, der i 1908 beskrev Brownsk bevægelse med en stokastisk differentialligning. I maskinlæring blev metoden introduceret af Max Welling og Yee Whye Teh (2011) i forbindelse med Stochastic Gradient Langevin Dynamics.