关于哈夫曼编码

 我来答
青柠姑娘17
2022-07-25 · TA获得超过1.2万个赞
知道大有可为答主
回答量:6094
采纳率:100%
帮助的人:32.3万
展开全部
哈夫曼编码是我在得到app中吴军老师的《信息论40讲》中了解到的,虽然是一个关于信息论的编码方法, 但是对于我们的生活和工作也是很有帮助的,所以记了下来。

关于哈夫曼编码,是从摩尔斯电码说起的,这种电码是用点(嘀)和长线(嗒)对英文的26个字母进行编码的,按照对信息度量的方法,如果对26个字母采用等长度析编码,比如进行进制编码就需要log26(这里的log函数是以2为底的),也就是约5比特信息,而采用摩尔斯电码的方法,平均只需要3比特,这样效率就高了很多,发报时间也节省了大约1/3左右。

在战争时期,能够节省发电报的时间对情报人员的安全是很重要的,因为谍战片里情报人员没法完电报就被别人闯进来带走的情形在现实中是真的很常见的,尤其是在二战时期欧洲的德占区。另外就算是除去战争的因素,能够节省1/3的发报成本也是一个很大的改进。

但是,如果按照哈夫曼编码的方法来看摩尔斯电码,就会发现虽然摩尔斯电码不自觉的采用了哈夫曼编码的方法,但还不是最简洁的编码方法,依然有改进的空间。

事实证明,越长出现的信息采用较短的编码,不常出现的信息采用较长的编码相比于所有信息都采用相同长度编码的方法更合算的。我们可以按照这样一个推倒步骤来看一下:

(对于我个人来讲,虽然数学学得不怎么样,但是这种推导过程我还是很喜欢的,因为通过自己动手来将一个结论推导出来时间很开心的事。)

哈夫曼编码从本质上讲就是讲最宝贵的资源(最短的编码)给出现概率最大的信息。而至于如何分配,其中的一个原则就是一条信息编码的长度和出现概率的对数成正比。 按我的理解就是出现的概率越大,投入的资源就越多。

那么哈夫曼编码的原则对于我们有什么用处呢?可以这样讲,只要是需要分配资源的工作,它都有指导意义。

课程中给我印象最深就是美国私立学校哈克学校的前校长尼科诺夫博士的一句话:在孩子小时候,要让他们尝试各种兴趣爱好,但是最终他们要在一个点上实现突破,就好比用圆规画圆,一方面有一个扎得很深的中心,另一方面有足够广的很浅的覆盖面。我觉得这是我能够听明白并且能够实践应用的最简单直接的方法。而且吴军老师就是用哈夫曼编码的方法来指导行动的,不排斥尝试新东西,但也对那些看样子不太能做成的事坚决停止投入,然后将更多的精力投入到成功率最高的事情上。

吴军老师有句话很好,“理论不在学得多,而在于学以致用”。而我们大多数人都是学得多,用得少,我也是一样。也许我可以从学着用哈夫曼编码开始,试着将学到的理论指导实践,踏踏实实的往前走。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
上海巴鲁图工程机械科技有限公司_
2022-05-15 广告
增量编码器一般输出信号是两路正交脉冲信号和一路参考信号,之所以叫增量是因为它的位置信号是通过对脉冲计数累加得到,依靠计数设备的内部记忆来记住位置,并且同每圈输出的参考信号来清除累计误差. 缺点就是断电后,需要重新寻找初始位置. 例如打印机扫... 点击进入详情页
本回答由上海巴鲁图工程机械科技有限公司_提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式