13 计算主义者的全新世界观
你好,我是晓蕾。
从这一节开始,我们进入到访谈的第二部分,“一个思考者的自我训练”。
为什么我会把道哥称作“思考者”呢?因为在他的世界里,似乎什么事情都可以用“计算”以及“计算的复杂性”来解释。用他的话来说,他是从计算主义的角度重新看待这个世界的。他写《计算》这本书,创办计算讲谈社、计算图书馆,都是他作为计算主义者的一种表达方式。
接下来,咱们就和道哥具体聊聊他是怎么理解计算的,以及他创办计算图书馆的故事。
极客时间:在聊个人经历之前,我问过你世界运行规律的话题。那目前这个阶段,你觉得自己找到世界运行的规律了吗?
道哥:我花了三年的时间写《计算》这本书,我觉得自己至少一定程度上总结出来了。其实是王坚博士带我进入了真正的计算大门。写完《计算》之后,我把自己所有的观念总结成了“计算主义”。从这个角度重新看待这个世界,很多事情就清楚了。
关于世界的规律,我们每个人都有自己的选择和答案,这很正常。因为我是一个计算主义者,所以我一定会从计算主义来回答这个问题。对我来说,世界运行的规律是什么呢?从这个角度来讲,就是计算,这个世界就是计算,人和机器没有区别。因为从物理结构上我也没找到任何有区别的证据,所以我只能说服自己机器和人没什么区别,最后机器一定会具备和人一样的智力。
极客时间:那到底什么是计算?
道哥:这个话题很有意思。我有一次跟身边的同学讲,什么是码农?什么是程序员?我认为程序员至少是一个高大上的名词,程序员至少是懂程序的,是懂架构的,但我觉得还是要理解计算的本质才行。很多程序员其实是不懂计算的,我很负责任地这么说。有一些同学只是写代码,而且代码可能都是从开源程序里面扒拉出来改改,然后变成自己的东西。板砖组合、搭积木,这个东西跟计算没关系。
那什么是计算呢?这事儿还真不是三言两语就能讲清楚的。我们往回讲,把概念讲清楚就好了。
大概在250年前莱布尼茨提出了两个想法。一个叫做人类思想字母表,是对人类思维规律的一种直接反映。他可以用这个字符去描绘世间的万事万物。这个东西就是编码的思想,他希望解决人和人之间沟通的障碍。
第二个想法叫做普遍语言。莱布尼茨其实是想解决巴别塔难题,不同的人和人之间之所以有分歧,是因为语言不通,所以他希望发明一种非常规范的普遍语言。这个普遍语言是由特定的字符组成的,以后所有人有争端的时候,坐下来,算一算,用纸和笔算一算,争端就解决了,所有人就不会再有分歧,这是很美好的愿景。
我们做计算的人是奉莱布尼茨为鼻祖的。我认为莱布尼茨对世界的贡献极大,今天你如果看计算机的影响力,那就要追溯到莱布尼茨。
莱布尼茨之后又到了乔治·布尔。乔治·布尔提出了布尔代数,在逻辑学上做出了贡献,提出了他的逻辑代数。他把逻辑建立在了算术的基础之上,之后我们就能够用算术去运行逻辑了。算术就是加、减、乘、除以及数字字符;逻辑就是真或者假。他当年还写了一本《思维规律的研究》,奠定了整个计算的基础。
你看,不管是莱布尼茨还是乔治·布尔,实际上都是希望通过数字和编码来模拟人脑的思维规律。所以你说人工智能比他们高明到什么地方去呢?也没高明到哪去,只是今天手段不一样了,但是初心和愿景从来没变过。
在布尔之后其实还发生了很多事情,我在《计算》这本书里有写详细的来龙去脉。中间数学领域发生了很大的革命,罗素这些人又出来重新建立了数学的基础,奠定了很大一部分的基础工作。在罗素、希尔伯特这些人的工作基础之上,很关键的人物出现了。
第一个人叫做哥德尔,他提出了哥德尔数。哥德尔数本质是一个编码思想。另外,哥德尔讲清楚了形式系统的不完备性,意味着计算是不完备的。这是他非常著名的一个定理,到今天都相当著名,是这个世界本质的规律之一了。哥德尔在20世纪初的那个时候就把它说清楚了。
后来很自然地发展到了第二个人。1936年的图灵恰恰在研究哥德尔和希尔伯特的一些理论,就受到启发,写了篇论文《论可计算数及其在判定问题上的应用》,定义清楚了什么是图灵机。可以说,图灵机是基于前面的这些理论诞生的。
图灵机是想干什么呢?是希望模拟人类计算者的心理活动。人类的一个计算者拿笔在纸上去写写画画、做数学公式推导的时候,这个人的心理活动是什么样的?这个心理活动,图灵想用图灵机来描述,或者说可以用机械驱动。
到目前为止,计算所有的发展基本上就是在模拟人类的心理活动、思维规律,或者说到了模拟人类大脑的阶段。计算就是这件事情,今天我们无非是用电子计算机来驱动这样的一个计算过程。这里面,图灵机是一个非常重要的、里程碑式的理论模型。图灵之前,计算的定义是不清晰的。人类可能从3000年前就发明了加、减、乘、除,不过在古代,我们只能做一些机械式的计算机,效率很低。但是直到图灵,才把计算的概念定义清楚。有了这个基础,才有了后面所有通过机械的装备和装置来制造计算机的可能性,提高计算的效率。
图灵再往后就到冯·诺伊曼了,他基于真空管造出了第一台电子计算机。为什么是冯·诺伊曼?因为到了这个时候其他条件也逐步成熟了。
恰恰是在图灵那个年代,恰好量子力学取得了一个巨大的发展,那个时候(19世纪末)电学也得到了发展。1885年左右,爱迪生把电动机、发电机相关的整套系统全部做出来,特斯拉也是在那时候做的贡献。
中间还有很多人,其中一个人是香农。香农当时在贝尔实验室,跟图灵有过交流,他在中间实现了很重要的逻辑电路。逻辑电路就是继承自当年的乔治·布尔,他让逻辑能够通过算术运算起来。到了20世纪初的时候,香农把布尔当年那些想法变成了一个逻辑电路,用电路来表达。
1946年冯·诺伊曼他们去做世界上第一台电子计算机的时候,有了图灵机作为理论基础,有香农的贡献,所有的东西就这么结合到了一起。可以说冯·诺伊曼只是在图灵的理论模型上面做了一个实现,做出了世界上第一台真空管电子计算机。后来过了一二十年又有了晶体管,晶体管又取决于量子力学的进展。
聊到这里有没有想到我们前面讲过的工程,我们会发现工程从来不是单一的东西,它结合了很多。
现在,所有东西就都串在一起了。计算,做计算的人,就是这么来的。包括里面的工程,也讲清楚了。我们想想,计算机到底要干什么?
计算机如果从理论模型上来讲,其实还是在实现当年图灵和莱布尼茨的梦想,包括乔治·布尔这些人的梦想,就是用一个机械化的过程模拟人类思维的规律。
计算实际上是从数字出发,模拟世界万物的结构。它是通过机器驱动字符的变形,或者如果没有计算机,那就是用机械化的方式驱动。字符的变形是有一定的顺序和架构的,这个顺序和架构我们称之为算法。
所以什么东西是重要的呢?结构是重要的,你对世间万物的洞察是重要的。因为你洞察了世间万物,所以你才能够理解它是一个什么样的架构,才能把这个架构抽象出来,抽象出来才能够用数字字符去模拟它,最后才能用机械化的方式驱动它。这个东西能带来什么好处呢?就是可以做模拟和预测了。如果从技术的层面谈什么是计算,那这个是计算。如果更大一点,就是通过数字编码世间万物,世界万物所有的规律就能够通过机械化的方式来推导。
当机械化推导的方式有了电以后,电子的速率又是非常高的,那么效率又取得了一个巨大的飞跃,这就是今天所有计算机的秘密。
回过头来讲,今天我们不管谈什么领域,城市大脑也好、人工智能也好,包括搭一个网站,不都是在模拟一种结构吗?最后底层就是在用字符驱动,只不过今天我们把字符限定成为数字的字符,仅此而已。
如果我们要把整个计算的技术搭建起来,这个大厦有很多种东西要搭的,从计算机出现,到互联网出现,再到存储,再到网络,包括把上面的很多应用搭起来。其实很多开源项目的应用只是为了提高你的效率。
我们很多程序员同学,到最后只理解到了最表层的一环,对计算整个最深层次的结构不理解,或者对最深层次的定义和本质不理解。这会带来一个什么问题呢?就是职业生涯天花板非常明显,因为我们不知道如何造出一台更好的计算机。
今天的云计算和今天的人工智能,包括城市大脑,就是一台计算机。我只是从计算主义的角度把世界运行的规律重新解释了一遍,从我这个理念出发,我就会按照我的方式设计一台更好的计算机,这是我在干的事情。
极客时间:说实话,刚刚你说到的名字,我觉得都挺熟悉的,但是从来没有这么串起来思考过。听你说完,我觉得所有人都能很好地理解计算这个概念。
道哥:我是发自内心地觉得计算主义是一个普适性的东西,不是只有工程师和开发者才需要关注。对于大多数人来讲,一个最简单的事情就是了解了计算的概念之后,我们至少能够判断出计算机到底能做什么,很多人没有这个判断。计算机又是影响和改变这个时代最重要的工具,每个人都有必要来了解一下什么是计算,要不然我们会跟这个时代脱节。
我办计算图书馆,一方面跟我写书有关系。我在写书的时候看了大量的书,得到了很大的帮助和成长。另一方面就是我真心觉得计算图书馆这件事情能帮到更多人。我们需要有一个载体输出这些思想,但是我发现很难找到这样的地方。现在虽然有很多计算类的书,但是计算机的书变成了工具书,工具书不是我的目标。我是想在时代的思想上面能够帮到更多人,而恰好国内没有,所以我觉得有必要去建一个这样的图书馆。
我想建成国内最大的计算图书馆,这个名字确实反映了很多。中国所有的书店卖的是畅销书,里面工程类的书本来就很少,技术类的书也非常少。我们去很多图书馆都会发现里面大量的库存都是社科类的书,这类书很受大家欢迎,还有很多文学类的书,偏偏就是没有一个工程技术类相关的、垂直的图书馆,所以我觉得我要建成一个最大的。
极客时间:是想做成一个实体图书馆吗?
道哥:是的,因为纸质书比较重要,我是比较相信纸质书的重要性的。未来也有可能分布式地做很多点,但是我觉得可能还要有一个大的总馆。这些东西我还没想好怎么来弄,但大概是这么个形式。
现在计算图书馆有个公开的大群,里面大概有几百人。我还没有完全想清楚该如何来运营这个群聊,之前想过读书分享这件事情,但好像遇到了一些挑战,我发现大家不读书。但是我们肯定会把它做好的,这件事情不会放弃,这个是我要保证的。做这个事情之前我就想清楚要做到什么程度了,也会下决心,决定了不放弃才会开始,否则就不会开始。
极客时间:你最后想把它做成什么样的呢?商场里的书店,还是类似博物馆?
道哥:我没想把它变成一个书店。原因很简单,凡是看到好的书我都不想再把它卖出去了,现在我是图书管理员,里面的书必须得我觉得有价值才行。而且现在有大量的书绝版,都买不到了,我就更不想把它再送出去。
现在很多经典损失掉了。你会发现你在书店里买到的畅销书其实很多它的含金量很低的,而且它局限住了我们阅读的范围,它真的只是沧海一粟。太多的资料其实是我们没有接触过的,现在还有渠道能收集到,所以更应该把它收集起来,呼唤出来。
从这个角度来讲,计算图书馆可能不会变成一个具有商业性质的东西,比如说进到商场这些地方。但是有可能会变成一个公益性质的组织。组织的形态现在还没完全想明白,这个是我们要去做的事情。
互动小茶桌
计算的理念对于我这样的非技术同学来说也很容易理解。现在我也可以说自己是理解了世界运行规律的人了。
言归正传,如果你是一位技术同学,可能对于计算的概念还是会有一些疑问。比如,我是前端/后端/运维……工程师,那么,“我”和计算之间到底是什么关系?别着急,下一节,我就帮你问出来。
最后,我也给你留了一个小问题,在你的理解里,还有什么事情可以用计算来解释吗?
欢迎你在留言区和我们互动。如果有所启发,也欢迎把内容分享给更多的朋友一起交流学习。
戳此加入访谈交流群,和道哥一起探索工程师精神。
- Geek_759347 👍(5) 💬(1)
《计算》出版了吗,我搜索了,都找不到
2023-09-21 - 高并发 👍(5) 💬(1)
记得王垠曾经说过, 真正懂计算的人不仅可以设计出强大的编程语言, 还可以设计出强大的机器组件,开始没有很好的想到这些, 后来接触到图灵机和lambda演算的一些东西, 它们两者是完全等价的, 而且从机器的角度去看lambda演算中的变量其实就相当于一根导线, 而函数相等于一个电路模版, 函数调用当于电路模版的实例(我学习数电的时候突然意识这一点, 因为每一个加法器就相当于一个函数), 如果将计算扩展到更多的领域又是如何呢? 我们又如何来设计一个很好的计算系统呢? 所以很期待道哥的新书给我们带来更多关于计算的思考:)。
2023-09-20 - simba 👍(0) 💬(5)
这个主题我很感兴趣,哪里可以加入群呢
2023-10-10 - rocedu 👍(0) 💬(1)
书哪能买到?
2023-10-08 - GeekZd 👍(0) 💬(1)
计算图书馆在哪里?
2023-09-28 - yetin 👍(0) 💬(1)
道哥关于计算世界观,是否有相关书籍我们可以参考
2023-09-21 - xtepCool 👍(0) 💬(1)
所以,现在还是计算时代,没有到智能时代
2023-09-19 - Malcolm 👍(0) 💬(0)
我觉得可以上推到活字印刷术哈哈。 很荣幸自己是物理专业跨行搞IT,想起了数电模电,概率论,线代,统计力学,量子力学这些大学课程,这篇让我重新把它们串联起来。
2024-01-13 - 欧阳娜 👍(0) 💬(0)
图灵提高了计算效率,把人类心里活动,从现实世界搬到了计算机里面,这建模能力,推导细腻,令人欢喜
2023-10-18 - Judea 👍(0) 💬(0)
想到了艺术领域的宝藏书店茑屋书店,总是忍不住去逛,杭州的店铺也非常有设计感;期待计算图书馆也能成为让程序员相见恨晚的宝藏书店。
2023-10-13 - 苏果果 👍(0) 💬(1)
🎉喜大普奔🎉 道哥将于9月20日17:00做客「极客时间」直播间。 关于道哥,关于自己的成长,你还有什么想问的问题吗? 欢迎在任意一节课下方【留言评论】! 我们会在【赞数较高】的问题中挑选3个,在直播间给出【比留言回复更更更详细】的解答! 还等什么!快来提问吧!😉
2023-09-18