繁体   English   中英

是否有数学证明霍夫曼编码是最有效的无损压缩算法?

[英]Is there mathematical proof that Huffman coding is the most efficient lossless compression algorithm?

我的朋友告诉我它存在,但我找不到它,不确定他是否在撒谎,但我对证明如何运作非常感兴趣。 (是的,我是那些从硅谷电视节目中发现霍夫曼编码的人之一,对不起)

它不是最有效的无损压缩方法。 算术编码胜过它的开始。 由于它不是最有效的,因此没有证据证明它是最有效的。 我相信这是每个​​符号使用整数位的最佳代码,但也许这是你朋友所说的证明。

霍夫曼码的最优性证明,CSC373 2009年春季

它证明了中间定理并且到达:

定理3 算法HUF(A,f)计算频率f和字母A的最优树。

答案是,它不是,问题是不适当的。 :-)

这是一个高级视图。 无损压缩算法提供可压缩文档到压缩文档的可逆映射。 可以将文档视为位串。 有n个可能的文件有n位。 有n ^个可能的压缩文档有n位。 因此,pidgin-hole原则表明,对于每个文档的存储效率更高,其他一些可能的文档必须存储效率较低。

那么压缩怎么可能呢? 这是可能的,因为虽然所有文件都是可能的 ,但它们并不是同等可能的。 因此,良好的压缩算法将非常有效地存储可能的文档,而不太可能的文档效率低下。 但问题是什么文件是有效的。 答案就是“这取决于”。 压缩算法有多好的答案也取决于。

假设您采用由一组符号组成的随机文档集,这些符号独立地以不同的概率出现。 霍夫曼编码产生最有效的压缩算法。

现在假设您采用可能用英语书写的一组随机句子? 霍夫曼编码仅限于查看原始字母频率。 它没有使用某些字母组合经常出现的事实。 其他可以使用的编码现在可以更好地工作。

现在假设您拍摄了可由相机生成的文档集。 这看起来与文本完全不同,不同的编码方法可以更好地工作。

所以有些情况下霍夫曼是最好的。 不是的情况。 这个问题是不合理的,因为它依赖于“可能有哪些文件?”

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM