“足够大的神经网络当然无所不能!”

ChatGPT 的能力令人印象深刻,以至于人们可能会想象,如果能够在此基础上继续努力,训练出越来越大的神经网络,那么它们最终将“无所不能”。对于那些容易被人类思维理解的事物,这确实很可能是成立的。但我们从科学在过去几百年间的发展中得出的教训是,有些事物虽然可以通过形式化的过程来弄清楚,但并不容易立即为人类思维所理解。

非平凡的数学就是一个很好的例子,但实际而言,一般的例子是计算。最终的问题是计算不可约性。有些计算虽然可能需要很多步才能完成,但实际上可以“简化”为相当直接的东西。但计算不可约性的发现意味着这并不总是有效的。对于一些过程(可能像下面的例子一样),无论如何都必须回溯每个计算步骤才能弄清楚发生了什么。

{%}

我们通常用大脑做的那类事情,大概是为了避免计算不可约性而特意选择的。在大脑中进行数学运算需要特殊的努力。而且在实践中,仅凭大脑几乎无法“想透”任何非平凡程序的操作步骤。

当然,我们可以用计算机来做这些。有了计算机,就可以轻松地完成耗时很长、计算不可约的任务。关键是,完成这些任务一般来说没有捷径可走。

是的,我们可以记住在某个特定计算系统中发生的事情的许多具体例子,也许甚至可以看到一些(计算可约的)模式,使我们能够做一些泛化。但关键是,计算不可约性意味着我们永远不能保证意外不会发生—只有通过明确的计算,才能知道在任何特定的情况下会实际发生什么。

说到底,可学习性和计算不可约性之间存在根本的矛盾。学习实际上涉及通过利用规律来压缩数据,但计算不可约性意味着最终对可能存在的规律有一个限制。

在实践中,人们可以想象将(像元胞自动机或图灵机这样的)小型计算设备构建到可训练的神经网络系统中。实际上,这样的设备可以成为神经网络的好“工具”,就像 Wolfram|Alpha 可以成为 ChatGPT 的好工具一样。但是计算不可约性意味着人们不能指望“进入”这些设备并让它们学习。

换句话说,能力和可训练性之间存在着一个终极权衡:你越想让一个系统“真正利用”其计算能力,它就越会表现出计算不可约性,从而越不容易被训练;而它在本质上越易于训练,就越不能进行复杂的计算。

(对于当前的 ChatGPT,情况实际上要极端得多,因为用于生成每个输出标记的神经网络都是纯“前馈”网络、没有循环,因此无法使用非平凡“控制流”进行任何计算。)

当然,你可能会问,能够进行不可约计算是否真的很重要。实际上,在人类历史的大部分时间里,这并不是特别重要。但我们的现代技术世界是建立在工程学的基础上的,而工程学利用了数学计算,并且越来越多地利用了更一般的计算。看看自然界,会发现它充满了不可约计算—我们正在慢慢地理解如何模拟和利用它们来达到我们的技术目的。

神经网络确实可以注意到自然界中我们通过“无辅助的人类思维”也能轻易注意到的规律。但是,如果我们想解决数学或计算科学领域的问题,神经网络将无法完成任务,除非它能有效地使用一个“普通”的计算系统作为“工具”。

但是,这一切可能会带来一些潜在的困惑。过去,我们认为计算机完成很多任务(包括写文章)在“本质上太难了”。现在我们看到像 ChatGPT 这样的系统能够完成这些任务,会倾向于突然认为计算机一定变得更加强大了,特别是在它们已经基本能够完成的事情(比如逐步计算元胞自动机等计算系统的行为)上实现了超越。

但这并不是正确的结论。计算不可约过程仍然是计算不可约的,对于计算机来说仍然很困难,即使计算机可以轻松计算其中的每一步。我们应该得出的结论是,(像写文章这样)人类可以做到但认为计算机无法做到的任务,在某种意义上计算起来实际上比我们想象的更容易。

换句话说,神经网络能够在写文章的任务中获得成功的原因是,写文章实际上是一个“计算深度较浅”的问题,比我们想象的简单。从某种意义上讲,这使我们距离对于人类如何处理类似于写文章的事情(处理语言)“拥有一种理论”更近了一步。

如果有一个足够大的神经网络,那么你可能能够做到人类可以轻易做到的任何事情。但是你无法捕捉自然界一般而言可以做到的事情,或者我们用自然界塑造的工具可以做到的事情。而正是这些工具的使用,无论是实用性的还是概念性的,近几个世纪以来使我们超越了“纯粹的无辅助的人类思维”的界限,为人类获取了物理宇宙和计算宇宙之外的很多东西。


精选留言