KL-отклонение от образца не совпадает с теоретическим значением

голоса
0

Я обнаружил, что теоретическое значение KL расхождения между двумя нормальными распределениями определяются по формуле:

Два Теоретический KL дивергенция

Когда я пытаюсь получить значение по некоторым данным выборки я получаю значение, около 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
Задан 27/11/2018 в 15:02
источник пользователем
На других языках...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more