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

Afledte ord

2

Kilder

2