用脑补而不是重传对有损传输进行纠错 后,有朋友评论:
可现代的图像压缩、数据编码已经很大程度上把可以脑补的空间从传输载荷中沥干了——完美编码下所传输的数据是近乎噪声的没有任何特点的分布。在这个框架下,被压缩的载荷如果随便丢了一点什么、就缺缺实实损失了没法复原并且大段落的信息。这也是为什么一直要期待以tcp模拟无损传输媒介的原因。
随人工智能渐进,我们必须能够设想 ai 间的通信方式。即将到来的海量交互的万物互联时代,传统 tcp/ip 方式显然无法满足需求(主要是不带柔性的最短路径优先算法和不带柔性的可靠传输协议),作为一个例子,知乎上一个问题特别有代表性,我也给出了一个回答:把 14 亿中国人都拉到一个微信群里,在技术上能实现吗?
今天在技术之外的语言学层面谈谈这个问题,看看作为人类,我们如何解决相互交流的通信问题,可以此类比,模拟人的心智的人工智能仍有希望重走相同的路。
通信的核心是编码,对人类而言,编码即语言和文字。对比两种代表性的语文,中文和英文的诉诸对象,很多事实其实就在眼前。
中文作为象形文字代表,其实物可追溯到商代甲骨文(我出生在甲骨文故乡,我老婆母亲的外公主持过 1930 年代甲骨文挖掘工作),而英文作为字母文字代表,其实物可追溯到克里特岛和伯罗奔尼撒岛的爱琴文明(业余研究了 25 年有余),甲骨文和线形文字的不同起源背景可见两种文字不同的核心本质。
甲骨文主要用于占卜。在东亚大陆并没有大的地缘隔离,各地区(比如当时的河南,山东,陕西)无论在地貌还是物产上相差无几,物质同类,没有太大的物资交换所必需的交流动机,因此甲骨文记载的文字并不直接用于交流。果真用于占卜激励并取悦国王,国王供养的祭司阶层主观上并不希望平民掌握这种文字,从而垄断这种文字的解释权为自身获益。
至少在最初,甲骨上的象形文字以记录为主,交流为辅助。
线形文字完全不同,它诞生于地中海文明圈,这块地方从近东腓尼基人据点,经过塞浦路斯,克里特岛,伯罗奔尼撒岛,希腊半岛,西西里岛,亚平宁半岛,一直到迦太基角几乎都是地理隔离的,它们在物质上很依赖其它地方,商业交流甚至掠夺战争是常态,交流成为硬需求。线形文字以简单的线形笔划替代复杂的符号表示简单音节,满足了地中海文明圈的需求。
至少在最初,线形文字以交流为主,辅助记录,但他们也可能用另外的文字进行记录。
这篇文章不专门讲历史,对甲骨文和线形文字的年代以及此后发生的事情不详述,只需知道,最终甲骨文变成了汉字,而线形文字变成了英文(以及很多别的字母文字),但它们几乎都没有丢掉其产生时的背景动机,足足影响了后续文明 3000 多年。
语音侧重交流,而字型侧重记录,商业和占卜捡其所需,分别选择了字母文字和象形文字。可是事后看,先人们这种懵懂选择的合理性到底在哪?
中文汉字是压缩率非常高的文字,我们能看到的关于中文的缺点,在压缩率方面,都是它的优点。
汉字听到写不出来,看到却又不会读,有个段子,一个老外向中国朋友抱怨说自己学了好几年中文,听说完全没问题,就是不能读写,中国朋友告诉它,别担心,中国人中有超过一半(显然保守了)的人跟你一样。
汉字符号复杂难以记忆,这不是汉字难读写的根本,汉字难读写的根本在于读音和字型对不上,汉字的听说和读写系统是独立发展的,一音多字,一字多音,对于一个没有中国文化背景的外国人,很难在字音和字型之间总能做出正确的对应。即便是中国人,介绍自己名字时也必须人工对应,比如 “我叫山鸡,xx 的鸡”。
另一个有趣的例子,“我蒙泽于他”,如果单独学习过 “蒙” 和 “泽”,理解它们分别是 “盖上”,“潮湿” 的意思,这句话对于学习者而言就是 “我被他的潮湿覆盖” ,而 “蒙泽” 只是一种比喻语,没有背景完全不知道,很多中国人自己也不懂什么是 “蒙泽”。绝大多数任何组合词都有这问题,比如 “开水”,“雪耻”,“生存”,“熟识”,单看每一个字的含义和组合词的含义大相径庭。
和学习英文时单词量越大越上道不同,学习中文时孤立汉字学得越多,可能越糊涂。
学习中文有个前置,就是先学背景文化知识,获得一种汉字环境的共识,如果没有背景知识作为解压缩汉字的共识,与段子里老外说他 “听说完全没问题” 不同,听说也会很费劲。
当听到 “经理” 这个词,它指什么?解压缩后,它可能是 “经络纹理”,“经营管理”,“经世明理”,“经常被修理”,…
在不能保证每个人发音一致的客观情况下(注意,这里要涉及有损传输了),当你错听了一个汉字,或者听漏了一个汉字,由于汉字的孤立字型对应单音节发音,会丢失很多的意义载体。仍以 “经理” 举例,读作 “jing li”,如果没有听到 “jing”,或者听到了发音不准的 “jin li”,几乎没有任何手段将其纠错,恢复成 “jing li 经理”,也许你会误解为八杆子打不着的 “锦鲤”。
每个汉字的二维结构编码对应一个单音节,在听说过程中,丢失一个音节就丢失一个汉字,而一个汉字可能包含有非常核心的含义,比如上述的 “蒙泽”,如果错听成 “蒙灰” 会怎样?“我被他的潮湿覆盖” 显然是错的,但 “我被他的灰尘覆盖” 可能就对了。
汉字是很不适合做有损传输的,人与人之间的语言交流其实就是一个有损传输环境,一个例子是,东北人和广东人写同样的汉字,但说起话来却互相完全听不懂,在这个例子中,方言可以理解为对方之于自己方言的不准确发音。
但汉字非常适合记录存储,二维方块字空间压缩非常紧凑,读音脱离字型在别处,并不在记录中。现代出土的古籍,读音虽然可能早就不同,但仍能识别大意,紧凑的代价就是丢失了读音,但这看起来并无所谓。
把中文的例子反过来看英文。自然语言的交流必须诉诸听说,这是英文的优势。其中两点非常重要,一维多音节编码提供了单词冗余,屈折语法提供了句法冗余。
英文的特点是听到就能写出来,看到就能读出来。由于英文的一个单词对应多个音节,听错或听漏一个音节也可以从其它音节中将其恢复,同样,拼写错一个字母,也很容易从其它字母中恢复。比如 “anderson”,即使看到 “andersoX”,也可以恢复为 “an de sen”,如果汉字 “安德森” 缺了 “森”,就无法区分 “安德森”,“安德烈”,“安德鲁” 了。
作为屈折语的英文存在变格,时态,语态,在读音上有连读规则,都对 “纠错恢复” 提供了依据,比如哪些结构前后必须是哪些结构,哪些词前后必须是哪些词,语法上很严格但在读音上却很松散,这些特点和作为孤立语的中文汉字完全不同,汉字与此相反,语法很松散,读音很严格,这意味着即使印度人和日本人用英文交流丝毫无障碍,而两个不同的地方的人用中文几乎无法交流(感谢普通话吧)。
事情总守恒,英文自带纠错能力非常适合交流,但因为它的一维多音节编码不太紧凑,对于存储而言却有些浪费,同样一本书,中文版可以很薄,英文版却很厚。
屈折语即使对于存储,英文在传输和存储之间的权衡也有迹可循。
和哈夫曼编码的思想类似,在屈折语的语言自然进化过程中,常用单词倾向于用更少的音节编码以降低听说读写开销,但另一方面,更少的音节意味着冗余度降低,而越常用的单词误码概率越高,因此对于常用词,不能太长,易读写,也不能太短,易纠错。
对于孤立语,由于单音节构词,书写系统和读音很容易分离到两条独立路径,单音节字型不断被压缩进新的含义,而读音系统却独自走上类似屈折语的道路,这个从汉字的 “象形”,“会意”,“假借”,“形声” 四阶段发展路径中可见一斑,如今我们看各地方言,特别是南方方言和北方的晋语安阳片,与屈折语的听说系统非常类似,念出来都是 “一嘟噜一串儿”。
不管英文还是中文方言,对于交流都选择了屈折语的听说系统。
我不知道在后来的历史发展历程东亚大陆更多非易失但不易得的硬质读写介质对语言文字的影响有多大,但如果在公元前 2000 年就有了易失且易造的纸,我想汉字也会走上屈折语的道路,因为此时即便对于存储的误码率也不低了。有一点很明确,目前的考古学和语言学研究已经表明,在更早的二里头文化时期,中国人早期的语言确实是屈折语,文字显然是后来的事。
人类文明最自然的交流方式,就是使用多音节词的屈折语进行交流。
语言诉诸交流,也就是传输,强冗余纠错,文字诉诸记录,也就是存储,强压缩。
但传输和存储对于介质而言是一回事,信息都要在时间和空间小心翼翼地通过介质。因此压缩还是冗余,这是一个权衡的结果。
回到计算机网络,点一下题。
为了降低空间占用,如朋友的评论所说,现代编码算法已经榨干了可用的任何纠错空间,包括不限于 unicode(utf8),jpeg,以及几乎所有现代音视频编码,于是只能为这些编码构建一个无损的底层传输信道,比如使用 tcp 传输,即使有编码承认自己容忍有损传输,但显然这种有损并不是严格的,比如某些 “关键帧” 丢了还是要重传。显然这并不是自然的方式,特别是目的是为了交互而不是为了拷贝时。
终点是存储介质的编码方案强调压缩没毛病,这种场景一般具有守护,然而终点是对端的交互编码方案却必须强调冗余。
我们无法想象人工智能之间使用 tcp 或有约束的 udp 作为交互协议会怎样,海量流量会不会炸崩整个网络。但显然现如今编码方案的交互代价很高,为一个比特的误码重传一个 mtu 的数据代价太大,在海量终端交互的极端场景中,这种方式将使网络在实时性约束下彻底不可用。
在压缩为核心的编码内核之下,包括 fec 在内的任何缓解措施都是辅助,自然的方案是从编码中纠错而不是从协议中纠错,我们目前的 fec 更多强调 “大声喊”,而不是 “从意义中恢复缺失的部分”,这种 fec 显然不是语言学层面的 fec,它只是协议的附带。
自然的方案需要在流量和纠错能力之间权衡,纠错能力越强的编码越长,我们不应该去赌错误不会发生或者小概率发生而去构建无损信道,然后在这个无损信道上传输不需要纠错的短编码,反过来,我们应该接受信道有损的普遍性,从而去选择一个稍微长,但又不很长的编码,介于中文和英文之间,就像我们的祖先曾经做过的那样。
浙江温州皮鞋湿,下雨进水不会胖。