zoukankan      html  css  js  c++  java
  • 信息熵是最小平均编码长度

    如何理解最后一句话呢,编码信息熵就是平均最小编码长度?


    信息熵就是平均最小编码长度

    信息熵想用最短的码表示信息。
    熵公式,有数学期望,对概率求对数,表示单符号的信息量。

    所以信息熵的期望就是平均信息。  平均两个字有了。
    再说最小,最小我没法严格的推到,我只能说服我自己

    设二进制,k个数据等概,p(xi)是1/k,
    h(x)=  -Σp(xi)×log(p(xi)

    log以二为底,所以信息熵刚好是以2为底k的对数。
    如果k取是二指数倍,刚好就是二进制的位数,
    k不是整数倍,floor(k)是他最小的表示方法。因为不能用小数。

    小数当然比floor(小数)要小。
    所以信息熵是最小的平均编码长度


    编码长度就是-log(p(xi)  
    然后把平均,最小,编码长度串接在一起。我估计就是作者的意思了



    log以二为底,所以信息熵刚好是以2为底k的对数。
    如果k取是二指数倍,刚好就是二进制的位数,
    k不是整数倍,floor(k)是他最小的表示方法。因为不能用小数。

    小数当然比floor(小数)要小。
    所以信息熵是最小的平均编码长度

    其实1是最好想的  
    比如抛硬币,1代表正,0代表反
    也可以用,11代表正,00代表反
    最短长度是1  h(x)=(1/2)*log(1/2)*2  此时log以2位底数
    所以 h(x)等于1 最小

  • 相关阅读:
    Linux Shell参数替换
    Linux下redis的安装
    Make 命令教程
    linux环境变量 export命令详解
    Java分布式应用技术架构介绍
    centos mysql忘记密码
    <context:component-scan>使用说明
    Spring <context:annotation-config/> 解说
    [Visio]直线工具和连接线工具的区别
    [Visual Studio Code] 字体设置
  • 原文地址:https://www.cnblogs.com/china520/p/10389031.html
Copyright © 2011-2022 走看看