我试图计算一个概率分布的信息熵,但是我得到了两个不同的答案,我不知道为什么或者哪个是正确的。在
import numpy as np
from scipy.special import entr
from scipy.stats import entropy
np.random.seed(123)
data = np.random.rand(5)
e = entropy(data,base=2) #this one is different, why?
f = np.sum(entr(data))/np.log(2)
g = -np.sum(data*np.log2(data))
知道错误在哪里吗?在
entropy
自动规范化输入,使概率向量之和为1。您对f
和g
的计算没有。在如果规范化
data
,例如结果将一致:
^{pr2}$相关问题 更多 >
编程相关推荐