scipy.stats.Uniform.

entropy#

Uniform.entropy(*, method=None)[source]#

微分熵

根据概率密度函数 \(f(x)\) 和支撑集 \(\chi\),连续随机变量 \(X\) 的微分熵(或简称“熵”)为

\[h(X) = - \int_{\chi} f(x) \log f(x) dx\]

离散随机变量的定义类似,用 PMF 代替 PDF,用支撑集上的和代替积分。

参数:
method{None, ‘formula’, ‘logexp’, ‘quadrature’}

用于评估熵的策略。默认情况下 (None),基础结构会在以下选项之间进行选择,并按优先级顺序排列。

  • 'formula':使用熵本身的公式

  • 'logexp':评估对数熵并进行指数运算

  • 'quadrature':数值积分(或者,在离散情况下,求和)熵被积函数(被加数)

并非所有分布都提供所有 method 选项。如果所选 method 不可用,将引发 NotImplementedError

返回值:
outarray(数组)

随机变量的熵。

注释

此函数使用自然对数计算熵;即以 \(e\) 为底的对数。因此,该值以(无量纲)“单位”纳特表示。要将熵转换为不同的单位(即,对应于不同的底数),请将结果除以所需底数的自然对数。

参考文献

示例

实例化具有所需参数的分布

>>> from scipy import stats
>>> X = stats.Uniform(a=-1., b=1.)

评估熵

>>> X.entropy()
0.6931471805599454