大脑内有 1000 亿个神经元,但为什么大脑的数学运算能力不如计算机快? 曹梦迪,学之。 由于学数学这些东西没有什么进化优势。在许多有进化优势的方面,人脑都比电脑要强大得多。 比如这么一个人脸: 如果问你:这是谁?你多半可以回答上来,至少也能做出“我认识她”,“我见过她”之类的这个判断。而且虽然他们平时见到的这个人和这张照片有很明显不同,但认识她的人可以在一秒之内回答这个问题,甚至再变形一点也没关系。现在就这一点,计算能力多强大的电脑也搞不定。别说这个,就连更容易计算的指纹识别也达不到一般人认脸的准确率。这是因为长期的进化为人脑预装了“人脸识别模块”。 比如这么一个很二的动态系统: 二十一个大自由度,两百多个个小自由度,六百多个执行机构,自身的稳定性超烂无比而且很多子系统之间耦合度还很强。面对这样一个系统,你就算找世界上最顶级的控制论专家团队,外加上几百个节点的超算集群,也无法做到实时进行负重战立、走路、跑步、上下坡、躲避障碍物等“简单”功能(如果你还不能理解这个的难度,下次试试搀一个烂醉如泥的人回家,你会发现:走五十米所要消耗的能量比你控制自己的身体走五千米还要多)。而人不但能干这些事情,而且还只用了很少一部分大脑,在干这个的同时能够打电话,背单词,跟路过的人打招呼,解数学题……这是因为长期的进化为人脑预装了“稳定站立和走路”这一模块。 比如这么一个画面: 如果在现场看比赛,那么在你的眼睛里的这个场景的分辨率大约有两亿像素,大约相当于 19000*11000 的样子,比蓝光清晰一百倍。蓝光视频压缩一小时大概是 10GB,照这样计算我们眼睛里看到的世界,一小时就是 1TB 的数据,每天就最少是 10TB 的数据。一个星期的数据就能塞满和大脑体积大小差不多的磁盘阵列,而大脑可以不间断存储几十年,能自动压缩,去重,备份重要数据,能随机提取、按场景提取、按特征提取……就算技术发展到今天,我们依然需要用几十个机柜来解决这样的问题,而且在某些方面上性能还相差很远——比如一个人可以在几秒钟之内回忆起三十年前重要事情的细节:比如三十年前第一次去现场看欧洲豪门比赛,心爱的球队被领先两个球的时候队长脸上细微的表情。而要电脑干这个事情两个小时也不一定有结果。这是因为长期的进化为人脑预装了“视觉压缩和记忆”这一模块。 比如这么一段简短的对话: 如果有人告诉你“it's time for us to take a break.”,你在绝大多数情况下能马上理解这是你的学生要求课间休息,下属想休假,狐朋狗友告诉你他没法再喝了,还是女朋友在暗示你她想一个人静一静(假定你懂英语的话)。你也可以轻松根据每种情况以及其它相关的信息(比如课程进度、公司规定、你自己还想不想喝酒、女朋友跟你关系怎么样。)组织一百种不同的回答。而且关键的是,每一种回答无论在语法、语义、语用、逻辑、情感等方面都毫不显得突兀。但是反过来,就算把全世界所有的计算能力都交给最顶尖的自然语言处理学者,他们也没法让电脑做到这一点。这是因为人的大脑预装了“语言”模块。 这样的例子还有很多。重点不是人脑有这些很牛的功能,而是人脑能轻松地同时完成这些功能——比如背着五千克的书包爬坡的同时认出了一个你的老朋友,然后边走边聊并将这个场景记忆了下来,而且普通人并不会觉得这会让大脑由什么负担(其实同时大脑在此同时还在干着许多其它事情,比如不断地调节着人的呼吸、心跳、呼吸、内分泌等一系列复杂的生化过程等)。而可怕的是人脑不但能轻松完成这许多工作,而且还十分节能环保,靠自带电池只需要补充电解液就能续航好几天。更可怕的是人还可以学习:从认识新的面孔到学习跳舞,从掌握新的语言到理解足球战术,人都可以学得会。后面这两点更是电脑远远比不上的。深蓝能战胜国际象棋高手,但是在人脸辨识方面基本上就是白痴——而且如果没有人去修改这个程序,它将永远都会在其它方面是这个样子。 回到原先的问题:人脑非常很强大,但是为何就做不了复杂的数字计算呢?人脑非常很强大,但是面对复杂而多变的自然环境,就必须预装许多模块来应对。不这样的话,人早就挂了(想想一下如果一个人一直认不出自己的父母,无法读取时间稍长的记忆,或是无法跟他人用语言交流会怎么样?)。至于复杂一点的数学题算得多快,却对人的生存能力的影响微乎其微。并且人脑在预装了这些模块用完了这些计算资源之后,剩余的计算能力虽然称得上小康,但却远远没有达到可以随便任性的程度。所以人可以努力让某些任务完成得非常好,但是全部都是经过艰苦卓绝的训练,通过对大脑剩余的计算能力重新“编程调试”得来的,而这些“编程调试”工作的完成者,还都只是你自己一个人而已。(实际上做数学题做得好的那些电脑,背后也是许多高水平的程序员辛苦编程调试的结果,一台没有装任何软件的计算机是连 1+1 都做不了的。) 查看知乎原文