从信息论的角度理解语言中的冗余_什么是信息冗余? 信息冗余有哪几类?
目录:
1.信息的冗余度来自两个方面
2.信息冗余的基本思想
3.什么是信息冗余? 信息冗余有哪几类?
4.信息冗余度名词解释
5.信息冗余量的定义
6.信息论冗余度公式
7.信息冗余例子
8.信息冗余这一思维枷锁告诉我们并不是多多益善
9.信息冗余的形式
10.信息冗余度怎么计算
1.信息的冗余度来自两个方面
也许有人觉得我们的语言并不简练,似乎还可以再简化一下, 因为很多句子,去掉一两个成分并不影响我们理解实际上也确实是这样,但是语言结构上的这种冗余,对通信的可靠性来说却是十分重要的特性另外,从信息论的角度,去除语言中的冗余成分也不单单是删掉句子中几个单词这么简单,它还涉及不同单词之间搭配频率的问题。
2.信息冗余的基本思想
这篇文章,我们就一起从信息论的角度来理解理解语言中的冗余表面上谈语言,实际上是从语言和编码的角度,给初学信息论或者还没有学信息论的读者,带来一点信息论思维的感受不需要读者任何专业知识背景先感受一下什么是冗余。
3.什么是信息冗余? 信息冗余有哪几类?
1. 语言中的冗余先看一个例句,it is a cat. 这个句子一共只有四个单词,看到 cat 而不是 cats 我们知道这里说的是一只猫,是单数细心观察的你可能发现,其实我们从 "it", "is", "a" 这些单词中也可以得到同样的信息:猫是单数。
4.信息冗余度名词解释
从表达信息的角度来讲,语言中这样的设定是不是太过冗余了,所以不合理呢?这个问题我们先留一留,在文章最后再讨论它2. 人造编码和通信系统中的冗余计算机以 0 和 1 两种状态来编码信息如果我只有两个字需要编码和发送给别人,比如“好”和“坏”,那就可以用 1 表示好,0 表示坏。
5.信息冗余量的定义
四个字就需要用 00 01 10 11 四种组合来表示类似的,更多的字就要用更长的 0 1 字串来表示这个过程叫做信息编码用这种方法,眼前你看到的这篇文章其实可以转换成很长很长的一串 0 1 字符串但是这样的编码系统有一大缺陷,在信息传输过程中,如果有一部分 0 1 字符发生了损坏或者翻转(0 变成了 1,1 变成了 0),那么信息的接受者就可能无法看懂信息,或者看到了错误的信息。
6.信息论冗余度公式
为了改善这个缺陷,我们可以为编码添加冗余,用 00 来代替原来的 0,11 来代替原来的 1这样一来,如果 00 或者 11 中有一个字符损坏了,我们还可以推断原来的编码大概率是什么情况(见下图)但是,如果我们看到一个 10,那么它是由 00 发生了一次翻转得到的呢?还是由 11 发生了一次翻转得到的呢?我们就无从而知了。
7.信息冗余例子
既然增加了一倍冗余有所改善,我们是不是可以再增加冗余?没错,如果用 000 代替原来的 0 ,用 111 代替原来的 1,这时如果收到了一个字符组合为 001,我们就能推断出它大概率是 000再对结果进行修正,就可以复原原始的信息了。
8.信息冗余这一思维枷锁告诉我们并不是多多益善
这样我们通信的稳定性(或者叫可靠性,容错性)就会高很多

9.信息冗余的形式
冗余对信息编码稳定性的影响3. 生物编码中的冗余其实这种冗余的概念,我们早就不是第一次接触了高中生物告诉我们,蛋白质是由基因中的密码子编码的基因中,每三个碱基会组成一个密码子,如 "AAG", "ACG" 这样。
10.信息冗余度怎么计算
每个密码子对应一种氨基酸,"AAG" 最后会产生一个赖氨酸,"ACG" 则会产生一个苏氨酸DNA 或 RNA 中一共有 4 种碱基,每三个为一组,就会有 4*4*4=64 种不同的组合而氨基酸却一共只有 20 种左右。
所以密码子和氨基酸之间的关系并不是“一对一”对应的,而是多个不同的密码子对应同一种氨基酸生物上将密码子和氨基酸之间这种“多对一”的关系叫做密码子的简并性,这种特性有利于维持生物遗传物质的稳定性,或者说容错性。
比如两个细菌可能因为变异等原因,遗传物质发生了改变并不相同,但是这样不同的两组遗传物质却可以产生相同的氨基酸链而这里的简并性,恰恰就是信息中的冗余什么是信息?我们又如何衡量信息冗余?直觉上我们能够感受到,第三种编码方式下的 000 111 000 111 其实和第一种编码方式下的 0 1 0 1 所包含的信息完全相同。
如下图,我们可以将这样的编码拆分成三个完全相同的部分 A B C,每一部分都可以独立提供我们需要传递的信息,并且和它们组合在一起所能提供的信息全完一样信息原本是一个抽象的概念,不知道读者读到这里,有没有感觉到似乎这里的信息是可以量化,可以做比较的一个量?

编码中的冗余信息我们有没有办法衡量一个编码所包含的信息量有多少呢?又能否衡量两个甚至多个编码之间冗余的信息有多少呢?1948 年,香浓老爷子一篇信息论的论文横空降世,告诉我们,没错,信息量大小其实是可以用数学公式来衡量的。
每一种编码都可以计算出它所包含的信息量,也可以计算出它与其他编码之间相同的信息量大小,即冗余就是说,对于上图中的 A B C 以及它们的冗余编码 [A B C],信息论都提供了公式可以求出它们所包含的信息量大小。
同时,信息论指出,冗余可以增加通信的可靠性正如我们已经看到的信息论中,一个编码所包含的信息量叫信息熵 Entropy,两个编码之间的冗余信息叫互信息 Mutual Information,多个编码之间的冗余信息就叫冗余 Redundancy。
至于到底什么是信息,这篇文章不打算展开讲,感兴趣的读者可以找信息论相关的教程学习,我以后可能也会写相关文章同时可以参考我这篇回答最后一部分内容 脑电波是否可以传递信息? - 知乎 (zhihu.com)
总之,本文的核心目的是带给读者一点信息和冗余的感觉,以及用信息看待编码的思想方式回来谈谈语言圆规正转,在看完上边对冗余的描述后,我们再重新回顾一下语言中的冗余首先,如果想要将一个语言设计到最精简,并不是简单的去掉其中的几个成分就好了。
比如中文没有冠词也可以很好的交流,所以可能有人会觉得英语中的冠词成分是多余的,可以删除或者,如文章开头的例子,我们看到 it is a 就知道后边肯定是个单数名词,看到 many 就知道后边肯定是个复数名词,所以名词的单复数形式也很多余。
实际上,语言的冗余远不止这些正如上边的例子,我们看到 many 就可以预测后边肯定是个复数,生活中但凡有一句话,你只听了上半句就能猜出下半句,或者听了前一个词就能猜出下一个词,就说明这里的语言设计有冗余。
冗余意味着我们要造出更多“没有必要”的词如编码的例子,一个取值可以是 0 或者 1 的变量(这种变量我们叫做二元变量),可以表示两种情况两个二元变量有四种不同的组合(00 01 10 11),理论上就可以表示四种不同的情况。
但如果规定了不能有 10 这种搭配,那就只能表示三种情况了想要表示第四种情况,就需要第三个二元变量在语言中,某种搭配不能出现的这些规定,就是语法和语言习惯需要更多二元变量,就是需要设计更多的单词但是,如果语言真的变成了毫无冗余、最精简的样子,那我们记忆句子就如同记 01001011... 这样毫无规律的字符串,那是非常可怕的
我们的大脑并不擅长记忆这种完全没有冗余的东西,相反,我们喜欢用联想记忆,也是在不同的知识之间建立冗余因此,最精简的语言才是最好的语言这个命题本身就是个伪命题此外,信息论告诉我们,信息的冗余有助于更准确的传递信息。
放在语言的例子中也很好理解,听了上半句可以猜出下半句,听了前一个词可以猜出下一词,正是语言中这种冗余的特性,保证了我们日常交流中,偶尔漏听错听也不会影响我们理解对方的意思由此可见,拥有适当冗余的语言,可能才是真正最好的语言。
以上就是关于《从信息论的角度理解语言中的冗余_什么是信息冗余? 信息冗余有哪几类?》的全部内容,本文网址:https://www.7ca.cn/baike/9766.shtml,如对您有帮助可以分享给好友,谢谢。