
Gaussian KL to N(0, I) (Geron Ch 17, morie.fn grkldg)
Source:R/geron_train_native.R
morie_geron_kl_divergence_gaussian.RdKL = -0.5 sum(1 + logvar - mu^2 - exp(logvar)); zero exactly at the prior.
Examples
V <- c(1, 2, 3, 4, 5, 6, 7, 8)
morie_geron_kl_divergence_gaussian(V, V)
#> $kl
#> [1] 2437.112
#>
#> $per_dimension
#> [1] 0.8591409 4.1945280 12.5427685 32.7990750 83.7065796
#> [6] 216.2143967 568.8165792 1517.9789935
#>
#> $per_sample
#> [1] 2437.112
#>
#> $variance
#> [1] 2.718282 7.389056 20.085537 54.598150 148.413159 403.428793
#> [7] 1096.633158 2980.957987
#>
#> $n_active_dims
#> [1] 8
#>
#> $estimate
#> [1] 2437.112
#>
#> $n
#> [1] 1
#>