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

Beregner 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

2

Kilder

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.