熵告诉我们什么?

机器算法验证
2022-01-16 16:45:37

我正在阅读有关的内容,并且很难概念化它在连续情况下的含义。维基页面声明如下:

事件的概率分布,再加上每个事件的信息量,形成一个随机变量,其期望值为该分布产生的平均信息量或熵。

因此,如果我计算与连续概率分布相关的熵,那真正告诉我的是什么?他们举了一个关于抛硬币的例子,所以是离散的情况,但是如果有一种直观的方法可以通过一个例子来解释,比如在连续情况下,那就太好了!

如果有帮助,连续随机变量的熵定义如下:X

H(X)=P(x)logbP(x)dx
其中是概率分布函数。P(x)


为了使这一点更具体,请考虑的情况,然后,根据Wikipedia,熵为XGamma(α,β)

H(X)=E[ln(P(X))]=E[αln(β)+ln(Γ(α))+ln(Γ(α))(α1)ln(X)+βX]=αln(β)+ln(Γ(α))+(1α)(ddαln(Γ(α)))

所以现在我们已经计算了连续分布的熵(伽玛分布),所以如果我现在评估那个表达式,给定,这个数量实际上告诉我什么? H(X)αβ

3个回答

熵告诉你系统中有多少不确定性。假设您正在寻找一只猫,并且您知道它位于您的房子和 1 英里外的邻居之间。你的孩子告诉你,猫在离你家距离处的概率最好用beta 分布来描述。所以一只猫可能在 0 和 1 之间的任何地方,但更有可能在中间,即x f(x;2,2)xmax=1/2

在此处输入图像描述

让我们将 beta 分布代入方程,然后得到H=0.125

接下来,您问您的妻子,她告诉您,描述她对您的猫的了解的最佳分布是均匀分布。如果将其插入熵方程,则会得到H=0

制服和 beta 分布都让猫在离你家 0 到 1 英里之间的任何地方,但是制服有更多的不确定性,因为你的妻子真的不知道猫藏在哪里,而孩子们有一些想法,他们认为这更多可能在中间的某个地方。这就是 Beta 的熵低于 Uniform 的原因。

在此处输入图像描述

你可以尝试其他分布,也许你的邻居告诉你猫喜欢靠近任何一个房子,所以他的 beta 分布是它的必须再次低于制服的 H,因为您对在哪里寻找猫有所了解。猜猜你邻居的信息熵比你孩子的高还是低?在这些问题上,我随时都会押注孩子们。α=β=1/2H

在此处输入图像描述

更新:

这是如何运作的?考虑这一点的一种方法是从均匀分布开始。如果你同意它是最不确定的那个,那就考虑去打扰它。为简单起见,让我们看一下离散情况。从一个点取并将其添加到另一个点,如下所示: Δp

pi=pΔp
pj=p+Δp

现在,让我们看看熵是如何变化的: 这意味着来自均匀分布的任何干扰都会降低熵(不确定性)。为了在连续情况下显示相同,我必须使用变分法或沿着这条线的东西,但原则上你会得到相同的结果。

HH=pilnpipiln(piΔp)+pjlnpjpjln(pj+Δp)
=plnppln[p(1Δp/p)]+plnppln[p(1+Δp/p)]
=ln(1Δp/p)ln(1+Δp/p)>0

统一随机变量的平均值本身就是一个随机变量,它来自Bates distributionCLT我们知道这个新的随机变量的方差缩小为因此,其位置的不确定性必须随着的增加而减少:我们越来越确定猫在中间。我的下一个图和 MATLAB 代码显示了熵如何从(均匀分布)的 0 减少到我在这里使用distributions31库。nnnn=1n=13

在此处输入图像描述

x = 0:0.01:1;
for k=1:5
    i = 1 + (k-1)*3;
    idx(k) = i;
    f = @(x)bates_pdf(x,i);
    funb=@(x)f(x).*log(f(x));
    fun = @(x)arrayfun(funb,x);
    h(k) = -integral(fun,0,1);
    subplot(1,5+1,k)

    plot(x,arrayfun(f,x))
    title(['Bates(x,' num2str(i) ')'])
    ylim([0 6])
end

subplot(1,5+1,5+1)
plot(idx,h)
title 'Entropy'

这个数量实际上告诉我什么?

我想插入一个简单的答案,如下所示:

在离散场景中说明这一点很直观。假设你扔了一个严重偏向的硬币,说每次翻转看到正面的概率是 0.99。每次实际的翻转都会告诉您很少的信息,因为您几乎已经知道它将是头部。但是当涉及到更公平的硬币时,你很难知道会发生什么,然后每次翻转都比任何有偏见的硬币都能告诉你更多的信息。通过观察一次抛掷获得的信息量等于log1p(x)

熵的数量告诉我们的是每次实际翻转平均(由其发生的概率加权)可以传达的信息:硬币越公平熵越大,完全公平的硬币将提供最大的信息。Elog1p(x)=p(x)log1p(x)

我不认为上面提供的大多数答案都在回答提出的问题,除了 whuber 的评论。如果我理解正确,原始问题与离散案例有关,而不是连续案例。我的印象是 RustyStatistician 很清楚熵在离散情况下的含义,但不确定它在连续情况下的含义。这是我的回答:这并不意味着什么!

以下是我的理由:

  1. 我多年来一直有同样的问题,多年来一直在寻找令人满意的答案,但没有成功。
  2. 对我来说,熵最重要的属性之一是它在离散情况下的标签不变性——它不会在索引集的排列下改变它的值,如由于它是标签不变的,它测量随机元素(与随机变量相反)的内部波动性。在连续情况下(连续随机变量),如果任意交换实线上的值,则熵会改变其值。这一事实将连续情况下的熵放在了一个非常不同的类别中。这并不意味着它没有用,而是具有不同的意义和不同的效用。{k;k1}{pk;k1}X
  3. 我咨询过一位世界级的熵专家,他的最佳答案是:如果你问 10 位专家同一个问题,他们至少会给你 9 个不同的答案。
  4. 传说柯尔莫哥洛夫曾对他的学生说,连续情况下的熵没有多大意义。多年后,我向他的一位学生请教了一份参考资料。他带着浓重的俄罗斯口音说,“也许他刚刚说过。”
  5. 有一天,孔子的一个弟子问他一个问题:“一个人死后会发生什么?” 孔子回答说:“这个问题最好在我们弄清楚一个人死前会发生什么之前不要回答这个问题。”