沟通,从语言到代码
我们都知道,人类之间沟通主要靠语言和文字,当然还有肢体语言。
如果你在高铁上闻到有人吃方便面时皱起了眉头,即使你没有说话,别人也知道你想表达什么。同理,当防空警报响起时,不用语言,你也知道发生了什么。
这样非语言的沟通方式在自然界特别普遍,蜜蜂通过跳舞传递信息,鸟儿通过不同的鸣叫声表示危险或求偶,鲸鱼会通过发出不同频率的声波来传递不同的信号……
不过,这些沟通方式明显效率不高,所以远古的人类就开始寻找效率更高的沟通方式。
研究人类进化的科学家认为,20万年至16万年前,当智人在非洲崛起时,可能就已经有语言存在了。这说明在远古的智人时代,人们就已经找到了使用舌头发音交流这种类似于现代语言一样的沟通交流方式。
不错,语言一词最早就来自拉丁语的“舌头”,即Lingua,毕竟语言最初起源之时是靠舌头发音的口语,文字的产生则是很久以后的事情了。
人类之所以能够以“语言”进行沟通一方面得益于生理的进化,让人类可以通过利用气流发出如此复杂的声调;另一方面则缘于人类形成“共识”的需要。
如果简单的危险或求偶信号的表达,不需要语言这么复杂的事物。但如果要在个体之间达成“共识”,没有语言则寸步难行。
如果一个古代智人今天要去远处的一片森林寻找食物,因为那儿可能有猛兽,所以他想邀请同伴一起协作,如果没有语言,这个信息几乎是无法传递的。
正基于此,语言在人类进化过程中逐步产生并完善了起来。
这也印证了美国著名的语言学家菲利普·利伯曼的观点:“语言不是一种本能,不是基于离散皮质‘语言器官’编码并通过基因来传递的知识,而是一种后天习得的技能。”
既然是后天习得的技能,那么它与人类的真实想法之间就有可能存在差异,就是一个人“说的话”和他想表达的真实想法可能并不完全一致,至少在别人理解的时候可能会出现偏差。
《道德经》有:“道可道,非常道。名可名,非恒名。”
《涅槃经》有:“不生生不可说,生生亦不可说,生不生亦不可说,不生不生亦不可说,生亦不可说,不生亦不可说有因缘故,亦可得说。”
可见,语言是无法百分百地传递“说话者”的真实意图或描述事物的原始本质的,这是语言的缺陷,但同时又是语言的魅力所在。
正因如此,人类社会才会有谎言与欺诈;也正是这个因素的存在,人类社会才有文学与浪漫,才有梦想与期待。
如果人类像刘慈欣的科幻小说《三体》中的“三体人”一样不通过任何“媒介”去直接交换信息,或许会提高沟通的效率,但那样的“人生”确实将毫无趣味。
“你猜,你猜,你再猜……”这个过程也是人生大多数的乐趣所在。
有得必有失。语言这种沟通方式给人类带来了丰富的情绪表达,同时也带来了“信息不对称”。
因为人与人之间有意或无意的信号传递失真,每个人所掌握的信息都是不同的,再加上人固有的情绪影响,最终使得不同的人对同一事物的理解都不尽相同甚至完全相反。
所以,到底什么是幸福这个问题一千个人会有一千种不同的答案,毕竟幸福是个主观的感受,而感受就会因每个人的认知不同而不同。这个问题一直到今天都困扰着哲学家们,他们对“社会组织的存在到底是要以个体幸福为目标还是以生产力进步为目标”争论不休。
如果把人视作一台机器,无疑要以生产力进步为目标,但人毕竟不是机器,个体的感受无比重要。于是,人们想到了一种看似两全齐美的方法,即在生活的领域,以全人类最大福祉为目标去设计组织结构;在生产领域,则从效率最高的角度去设计组织结构及激励体系。
曾经的工业时代,诞生了X理论、Y理论等管理理论,无疑都是要解决人性与效率这两个看似冲突的问题。(https://www.daowen.com)
随着数字时代的来临,这一切又发生了变化。
数字化时代,除了人的感情之外(亦或许是科技还没有发展到用数字表达人类感情的阶段),所有物理世界或虚拟世界的东西原则上都可以用数字来表达,这种表达方式几乎不会失真,从而能够取得最高的交流效率。
那么,人类的语言、感情,这些感性的沟通方式又应该如何与纯数字的沟通方式融合起来呢?
要找到这个问题的解决办法,我们还是要先了解一下机器之间的沟通方式。
很显然,在科技革命发生之前,我们根本不需要考虑“机器之间沟通”的问题,因为那时的机器之间没有任何沟通,而人与机器的沟通方式就是“操作”。比如农夫要犁地,只需要熟练操作犁的方向、力度,最终达到“熟能生巧”的境界,便可以实现人与机器的有效沟通。
这种行为的本质不是“沟通”,而是靠人的生理功能,即肌肉记忆来实现,说到这里你应该会想起“卖油翁”说的那句话:“无他,惟手熟尔”,这种境界也正是武侠小说中的“人剑合一”。
但科技革命发生之后,一切都发生了根本性的变化。
首先是物与物之间开始“沟通”,继电器的发明应该算是起点之一。最早的继电器通过电流与磁铁之间的关系来控制开关,虽然后来继电器技术发生了根本性变化,但其通过传递“电信号”来控制机器的方式始终如一。
这种电信号本质是一种符号表达,无论是电流、电压、电阻的大小,还是因此而产生的磁力大小,都可以使用数学方程式来表达。
后来,科学家们发明了另外一种更简单的状态表达方式,即使用“0,1”表达设备不同的状态,同时发现半导体特别适合用在这样的表达场景,于是计算机时代到来了。
计算机时代的到来不但让物与物之间的信息传递更加精准,还标志着人与机器之间开始对话。
最初的计算机只能用来解线性方程,而不能编程(即传递信号),一直到1946年,ENIAC[2]这个重达31吨的大家伙问世,才出现世界上第一台需要程序驱动的通用计算机,由此便有了程序和编写程序的程序员。
当时的“程序员”只能输入机器语言,即“0和1”,因为只有“0和1”是直接能被计算机读懂的语言。这种机器语言难学难懂、操作繁杂,优点可能只有一个,那就是因为0和1能被计算机直接读懂而获得的高速响应。
随着计算机硬件的升级,响应速度不再是瓶颈问题,人们便开始寻找虽适度牺牲响应速度,却比较容易让人理解的计算机语言。于是有了第一代计算机语言—汇编语言,汇编语言的特点是用英文缩写的助记符来表示基本的计算机操作,如LOAD、MOVE等,然后再通过底层程序将这个符号转化为计算机能够理解的“0和1”二进制指令。
沿着这个思路走下来,一直到1956年FORTRAN语言的诞生,才正式标志着高级编程语言时代的到来,人们终于可以像日常说话一样和计算机、机器或者其他物体对话,虽然计算机能够理解的仍然是“0和1”,但通过“计算机语言”的翻译,机器却可以开始理解人类的语言。
这时需要注意的是,这种人类语言和普通人的“口语”还是不同的,这种语言必须是符合一定格式条件的“语言”。
紧接着,人工智能开始致力于解决机器能说、能听人类的语言,能看懂、能识别动作,甚至要能思考、会学习。
这么多年来,人类解决人与机器之间对话的方式是“让机器理解人类”,但一直到今天这种效果都不够显著。
很显然,人类相比机器要复杂得多,人类除了显性的语言、动作之外,还有隐性的思想、情绪、好恶等,即使是智能机器能够理解人类“显性”的特征或状态,它又如何知道人类心里是怎么想的呢?
梦想总是要有的,万一实现了呢?
现在的各种智能算法开始追求更高的境界,那就是期望通过对人类行为的统计实现“AI,比人类更懂人类”。
其实,我们完全可以换个角度来思考问题,即除了努力让“智能机器”理解人类之外,能否努力让人类更加“数字化”,从而让机器更容易理解?或者,将机器的数字使用模型和语言表达出来,让人类更容易理解机器?
这正是未来人机交互需要努力的方向,也正是各种技术研究的方向。