KL-divergens
forkortelse for Kullback-Leibler-divergens
Mål for hvor meget en sandsynlighedsfordeling afviger fra en anden referencefordeling.
Kort fortalt
KL-divergens er en måde at beregne forskellen mellem to sandsynlighedsfordelinger, fx hvor godt en simpel model approksimerer en kompleks.
- Kategori
- begreb
- Niveau
- øvet
- Udtale
- /kʰʌlˀbakˈlɑjˀbəl d̥ivɛɐ̯ˈɡəns/
Betydninger
1- 1
Et mål for informationsgevinsten ved at bruge fordeling Q til at approksimere fordeling P; det forventede logaritmiske forhold mellem P og Q vægtet med P.
- I variational autoencoders minimeres KL-divergensen mellem den latente fordeling og en prior.
- KL-divergensen er altid ikke-negativ og nul kun hvis de to fordelinger er identiske.
Hvornår bruges det
Anvendes i maskinlæring til at sammenligne fordelinger, fx i variational inference (ELBO), modeldestillation og generative modeller som GAN'er og VA'er. Den er ikke symmetrisk: D_KL(P||Q) ≠ D_KL(Q||P).
Formel
D_KL(P || Q) = Σ_x P(x) log(P(x) / Q(x)) (diskret); D_KL(P || Q) = ∫ p(x) log(p(x)/q(x)) dx (kontinuert)Kodeeksempel
from scipy.stats import entropy
import numpy as np
p = np.array([0.5, 0.5])
q = np.array([0.9, 0.1])
kl = entropy(p, q)
print(kl) # Output: ~1.214Beregner KL-divergens mellem to diskrete fordelinger vha. scipy.stats.entropy.
Oprindelse
Opkaldt efter Solomon Kullback og Richard Leibler, der introducerede divergensmålet i 1951 i forbindelse med informationsteori.
Afledte ord
2Kilder
2- Kullback, S.; Leibler, R.A. (1951). On Information and Sufficiency. Annals of Mathematical Statistics.
- Cover, T.M.; Thomas, J.A. (2006). Elements of Information Theory.