请问为什么在计算信息熵的时候要取对数呢?
来源:学生作业帮 编辑:神马作文网作业帮 分类:数学作业 时间:2024/09/24 18:25:38
请问为什么在计算信息熵的时候要取对数呢?
看看定义信息熵的想法:
设对于某个事件 x,发生的概率是 p(x),对应的"信息量"是 I(x).
性质
1.p(x) = 0 => I(x) = +\inf (正无穷大)
2.p(x) = 1 => I(x) = 0
3.p(x)>p(y) => I(x)=0 信息量总是正的.
5.p(x,y)=p(x)p(y) => I(x,y)=I(x)+I(y)
信息量的叠加性,知道了两个独立事件的概率,相当于知道了两方的信息(的和)
由以上性质就能决定出 I(x) = -c*ln(p(x)),其中 c 是某个正常数,代入就可验证.
最后的信息熵公式 - sum p[i] * ln(p[i]) 可以看作 ln(p) 的期望,也就是整个系统的平均信息的多少.
就为什么要取对数这个问题来说,最关键就是性质 5.了吧,对数能把乘积化为求和.
再问: 谢谢!在应用方面是这样,不过我想知道有没有什么理论上的依据,类似于数量级上的一致或者其他的原因有吗?
再答: 这就是理论的依据了. 具体的数值确有一些含义, 可以代表表达信息需要的平均位长(回忆乘法原理)(例如 -256*1/256*log_2 (1/256) = 8). 可以参见维基, 英文版, 词条 Information_entropy, Nat_(information), Ban_(information).
设对于某个事件 x,发生的概率是 p(x),对应的"信息量"是 I(x).
性质
1.p(x) = 0 => I(x) = +\inf (正无穷大)
2.p(x) = 1 => I(x) = 0
3.p(x)>p(y) => I(x)=0 信息量总是正的.
5.p(x,y)=p(x)p(y) => I(x,y)=I(x)+I(y)
信息量的叠加性,知道了两个独立事件的概率,相当于知道了两方的信息(的和)
由以上性质就能决定出 I(x) = -c*ln(p(x)),其中 c 是某个正常数,代入就可验证.
最后的信息熵公式 - sum p[i] * ln(p[i]) 可以看作 ln(p) 的期望,也就是整个系统的平均信息的多少.
就为什么要取对数这个问题来说,最关键就是性质 5.了吧,对数能把乘积化为求和.
再问: 谢谢!在应用方面是这样,不过我想知道有没有什么理论上的依据,类似于数量级上的一致或者其他的原因有吗?
再答: 这就是理论的依据了. 具体的数值确有一些含义, 可以代表表达信息需要的平均位长(回忆乘法原理)(例如 -256*1/256*log_2 (1/256) = 8). 可以参见维基, 英文版, 词条 Information_entropy, Nat_(information), Ban_(information).
为什么在计算信息熵的时候要用log?
隐函数求导的疑问为什么这个函数求导用对数法不能直接两边同时取对数?要每一项分别取对数再相加呢?
为什么经济学表述中要对所取的数据取对数呢?比如说为什么要取log of 国内产出.取对数的意义究竟是什么呢? 对数究竟有
请问为什么在培养细菌时有时候要用琥珀酸盐作为唯一的碳源呢?
自然对数的起源不要那种吹“数学之美”的答案.为什么要引入自然对数呢?它比十进对数优越在哪呢?
在计算一个分子穿过几层膜的时候,细胞壁为什么不算一个膜结构呢?
有一组数据,结果应该符合幂函数分布.请问在matlab中能否实现数据拟合,并且求出幂函数取对数后的斜率呢
请问为什么determinant只有在A是square matrix的时候才可以计算?
请问为何在多元回归方程中,因变量取对数,而自变量不取?对因变量取对数的原因和意义是什么?
为什么要对原始数据取对数
为什么对数函数的底数a要大于0呢?
对数求导法中,在函数两边取的为什么是自然对数ln,而不是常用对数lg,或者其它对数log?