信息论基础
信息的引入#
信息论背后的原理是:从不太可能发生的事件中能学到更多的有用信息。例如,当你被告知“今天早上太阳升起”时,你会觉得这件事几乎没有信息量,因为它发生的概率可以说为1;但当你被告知‘‘今天早上有日食’’ 时,你会觉得这件事的信息量挺大的,因为这件事发生的概率较小。
假设表示事件发生的概率,表示事件所含的信息量,则信息量,与事件发生概率之间的关系应当反映如下规律。
规律1:事件中所含的信息量是该事件出现概率的函数,即
规律2:事件的出现概率越小,所含的信息量越大;反之,越大,越小。特别地
规律3 :若干个互相独立的事件,所含信息量等于各独立事件信息量之和,也就是说,信息具有相加性,即
例如,投掷的硬币两次正面朝上传递的信息量,应该是投掷一次硬币正面朝上的信息量的两倍。
自信息和熵#
为了满足以上规律,对于事件 ,定义信息量或自信息self-information
为:
自信息仅仅处理单个输出。信息量的单位为比特(bit),1bit对应。如果一个二进制码0,1出现的概率相等,则每一个二进制码的信息量就是1bit。
如果计算自信息的期望,它就是熵,记作:
-
熵刻画了按照真实分布来识别一个样本所需要的编码长度的期望(即平均编码长度)。
如:含有4个字母
(A,B,C,D)
的样本集中,真实分布 ,则只需要1bit编码即可识别样本。 -
对于离散型随机变量,假设其取值集合大小为 ,则可以证明: 。
条件熵#
对于随机变量和,条件熵表示:已知随机变量的条件下,随机变量的不确定性。
它定义为:给定条件下的条件概率分布的熵对的期望。
根据定义可以证明:。
即:描述和所需要的信息是:描述所需要的信息加上给定条件下描述所需的额外信息。
KL散度#
散度(也称相对熵)是一种测量同一随机变量的不同概率分布差异的方法:对于给定的随机变量,它的两个概率分布函数 和 的区别可以用散度来度量:
- 散度非负。当它为0时,当且仅当 和是同一个分布(对于离散型随机变量),或者两个分布几乎处处相等(对于连续型随机变量)。
- 散度并不是通常意义下的距离,一个原因是因为它不满足对称性。
交叉熵#
交叉熵:
- 交叉熵刻画了使用错误分布来表示真实分布中的样本的平均编码长度。
参考#
- [1] 机器学习的数学基础(十五)信息论
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步