样品的KL偏差与理论值不匹配

时间:2018-11-27 15:02:06

标签: python distribution

我发现两个正态分布之间的理论KL散度值由下式给出:

Two theoretical KL divergence

当我尝试获取一些样本数据的值时,我得到的值接近17,理论值为200。

这是什么原因?

我的理论代码:

x_num_points = 1000000 ; y_num_points = 1000000 ; num_bins = 100
nu1 = 0.0 ; sigma1 = 1.0 ; nu2 = 20.0 ; sigma2 = 1.0
np.random.seed(0)
x = np.random.normal(loc = nu1, scale = sigma1, size = x_num_points)
np.random.seed(1)
y = np.random.normal(loc = nu2, scale = sigma2, size = y_num_points)
theo_kl = np.log(sigma2/sigma1) + (sigma1**2 + (nu1 - nu2)**2)/(2*sigma2**2) - 1/2

0 个答案:

没有答案