熵估计所需的样本数

机器算法验证 采样 信息论
2022-03-19 23:31:57

我想使用朴素(经验)估计器H^=p^(x)logp^(x)

是否有一些关于以一定精度执行此操作所需的样本数量的结果,或者等效地,在给定有限数量的样本的情况下计算该值的误差?

2个回答

熵估计是一个非常困难的问题。根本问题是您的估计受到“未观察到的”事件的严重影响(尽管这些事件具有非零概率)。

有很多不同的熵估计器专门设计用于解决这个问题。例如,参见Liam Paninski 的 BUB 估计器、Nemenman 等人的NSB估计器、Vu 等人的覆盖调整估计器(另见 Chao 等人,2003)和Archer 等人的PYM 估计

还有许多其他论文解决了这个问题。每个都有一些不同的方法,有些可能在不同的情况下更合适。我建议的几篇论文提供了免费的在线代码,可以自动计算估计和置信度。您可能也对此R 包 'entropy'感兴趣

您需要将不确定性的标准传播(在非线性情况下)应用于泊松分布(即假设每个计数都是独立的)。

即需要变量 p_n)的泰勒级数中围绕 ) ,即: H(p1+Δp1,,pn+Δpn)n(Δp1,,Δpn)(0,,0)

H(p1+Δp1,,pn+Δpn)=H(p1,,pn)1ln2i=1n(lnpi+1)Δpi12ln2i=1npi1Δpi2+

记住并根据需要计算适当的矩。pi=NiN

但是,它不适,因为它在这里没有泰勒展开。在这种情况下,我知道的唯一可能性是蒙特卡洛-您估计分布参数,获取随机分布,然后根据它们获取随机结果并查看结果的分布(这里:熵)。pi=0