MATLAB实现各种熵:香农熵、条件熵、模糊熵、样本熵等
0 引言
信息熵(entropy)的原始定义是离散(discrete)的,后来发展了在连续域上的微分熵(differential entropy)。然而,通常在给定的数据集上,无法知道连续变量的概率分布,其概率密度函数也就无法获得,不能够用微分熵的计算公式。那要如何计算呢?
- 一种常见的方式是直方图法,它将连续变量的取值离散化,通过变量范围内划分bins,将不同的变量取值放入一个个bins中,然后统计其频率,继而使用离散信息熵的计算公式进行计算。然而,每个bin应该取多大的范围是很难确定的,通常需要反复计算获得最优的解。
- 一种无参熵估计法(non-parametric entropy estimation) 可以避免划分bins来计算熵值,包括了核密度估计(kernel density estimator, KDE)和k-近邻估计(k-NN estimator)。
- 相比之下,直方图法不够精确,而核密度估计法运算量太大,k-近邻估计成为了普遍使用的一种计算连续随机变量的熵值方式。
1 香农熵Shannon Entropy
1948年,Shannon将玻尔兹曼熵的概念引入到信息论中,作为度量一个随机变量不确定性或信息量的定量指标。
本文详细介绍了如何使用MATLAB实现信息熵的各种形式,包括香农熵、条件熵、模糊熵、样本熵等。文章通过基本原理阐述、代码实现和相关概念的探讨,如互信息、联合熵和条件熵之间的关系,为时间序列分析提供实用工具。此外,还讨论了直方图法、核密度估计和k-近邻估计在熵计算中的应用。
订阅专栏 解锁全文

188

被折叠的 条评论
为什么被折叠?



