AI最终能做到一切吗?
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/12.bmp)
图1:AI能解决科学问题吗?
尤其是鉴于其最近的惊人成功,人们普遍认为AI最终能够“做一切”,或者至少能够做我们目前所做的一切。那么科学呢?几个世纪以来,我们人类逐步取得进展,逐渐建立了现在基本上是我们文明中最大的智力建筑。但是,尽管我们付出了所有的努力,仍然有各种各样的科学问题没有解决。那么现在AI能进来并解决所有这些问题吗?
对于这个终极问题,我们将看到答案不可避免且坚定地是否定的。但这绝不意味着AI不能重要地促进科学进步。例如,在非常实际的层面上,LLMs[2]提供了一种新的语言接口[3]来访问我们(原作者,下同)花了这么长时间构建的Wolfram语言[4]中的计算能力。通过对“传统科学智慧”的知识,LLMs通常可以提供非常高级的“自动补全”,以填充科学工作中的“传统答案”或“传统下一步”。
但我在这里想讨论的是关于AI在科学中的更深层次的问题。三个世纪前,科学因使用数学来表示世界的想法而发生了变革。而在我们这个时代,我们正处于向世界的根本计算表示的重大转变之中[5](是的,这就是我们的Wolfram语言计算语言的核心理念)。那么AI如何应对?我们应该将其视为访问现有方法的实用工具,还是它为科学提供了根本性的创新?
我的目标是探索和评估AI在科学中能够和不能够做的事情。我将考虑一些具体的例子,简化以突出其本质。我将讨论基于我们迄今为止所见的直觉和期望。我还将讨论一些理论上的——以及在某些方面的哲学上的——基础,关于什么是可能的,什么是不可能的。
那么这里“AI”究竟是什么意思?过去,任何严肃的计算通常被认为是“AI”,在这种情况下,例如,我们长期以来在Wolfram语言计算语言[6]中的工作会被算作AI——正如我在计算宇宙中对简单程序的“ruliological”研究[7]一样。但是在这里,我大部分时间会采用一个更狭义的定义——说AI是基于机器学习[8]的(通常是用神经网络实现的),并且是通过给定的示例逐步训练的。通常我还会添加另一个部分:这些示例包括一个大型的由人类生成的科学文本等的语料库,或者是关于世界中实际发生的事情的实际经验语料库——换句话说,除了是一个“原始学习机器”,AI还从大量人类对齐的知识中学习过。
好了,我们已经说明了AI的意思。那么科学和“做科学”的意思又是什么?最终,这一切都与将“存在于世界中的事物”(通常是自然界中的事物)与我们能够思考或推理的事物连接或翻译[9]有关。但实际上,有几种截然不同的“工作流”来做科学。一些工作流围绕预测:给定观察到的行为,预测将会发生什么;找到一个我们可以明确陈述的模型,说明系统将如何运行;给定现有的理论,确定其具体含义。其他工作流则更多地与解释有关:给定一种行为,产生一个人类可理解的叙述;在不同的系统或模型之间找到类比。还有一些工作流更多地与创造有关:发现具有特定属性的东西;发现“有趣”的东西。
在接下来的内容中,我们将更详细地探讨这些工作流,看看它们如何(或不能)被AI转变或启发。但在我们进入这个话题之前,我们需要讨论一个笼罩在任何“解决科学”尝试上的现象:计算不可约性[10]。
计算不可约性的硬性限制
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/13.bmp)
图2
在做科学时,通常存在一个找到某系统运作的基本规则的巨大挑战。但假设我们找到了这些规则,并且我们有一些正式的方式来表示它们,比如一个程序。那么仍然有一个问题,这些规则对于系统的实际行为意味着什么。是的,我们可以一步一步地明确应用规则并追踪发生的事情。但我们是否可以——一蹴而就——“解决一切”并知道系统将如何运行?
要做到这一点,我们在某种意义上必须比系统“聪明无比”。系统必须经历所有这些步骤——但我们可以“跳过”并立即找出结果。一个关键的观点——最终由我们的物理项目[11]在基础层面上支持——是我们可以将所有发生的事情视为一个计算过程。系统正在进行计算以确定其行为。我们人类——或者,我们创造的任何AI——也必须进行计算,以尝试预测或“解决”这种行为。计算等价性原理[12]说这些计算在其复杂性上最多是等价的。这意味着我们不能指望系统地“跳过”并预测或“解决”系统;要弄清系统将做什么,必然需要一定不可约的计算工作。因此,无论我们多么努力,无论是AI还是其他方法,最终我们将受限于行为的计算不可约性。
但鉴于计算不可约性,为什么科学实际上是可能的?关键事实是,每当存在整体的计算不可约性时,也存在无限数量的计算可约性的口袋。换句话说,总有某些系统的方面,可以使用有限的计算努力来说明。而这些正是我们在“做科学”时通常集中精力的地方。
但不可避免地,这有其局限性——会遇到计算不可约性的问题。有时这些表现为我们无法回答的问题,有时则表现为我们无法预见的“惊喜”。但重点是,如果我们想要“解决一切”,我们最终会遇到计算不可约性,而无论是用AI还是其他方法,都无法通过一步到位地模拟系统来解决。
然而,这里有一个微妙之处。如果我们只想知道与计算可约性对齐的事情呢?很多科学——以及技术——都是专门围绕计算可约现象构建的。例如,这就是为什么数学公式在科学中能够如此成功的原因之一。
但我们肯定知道,我们还没有解决我们在科学中想要解决的一切。在很多情况下,我们似乎并没有真正选择要研究什么;自然界,举个例子,迫使我们去研究。结果是我们不可避免地面对计算不可约性。
正如我们将讨论的,AI有潜力为我们提供精简的方式来找到某些类型的计算可约性口袋。但总会有计算不可约性,导致意外的“惊喜”和我们无法快速或“叙述性”获得的东西。这种情况会终结吗?不会。总会有“更多的发现”。需要更多计算才能到达的东西。我们不知道存在的计算可约性口袋。最终——无论有无AI——计算不可约性将阻止我们完全“解决科学”。
这里有一个有趣的历史共鸣[13]。在二十世纪初,有一个大问题是数学是否能够“机械地解决”。然而,哥德尔定理的到来似乎确立了它不能。而现在我们知道科学也有一个计算结构,计算不可约性这一现象——实际上是哥德尔定理的一个锐化——表明它也不能“机械地解决”。
我们仍然可以问,是否人类选择研究的数学或科学可能仅仅存在于计算可约性的口袋中。但从某种意义上说,“数学难”的终极原因是我们不断看到计算不可约性的证据:我们无法绕过实际进行计算的需要。这也正是,例如,神经网络AI(至少没有Wolfram语言工具[14]的帮助)的不擅长之处。
过去有效的方法
在深入探讨现代基于机器学习的AI可能在“解决科学”方面能做什么之前,回顾一下过去有效的方法似乎是值得的——至少作为现代AI可能添加的内容的基准。
我自己使用计算机和计算[15]来发现科学中的事物已有四十多年了。我的第一个大成功是在1981年[16],当时我决定尝试枚举某种类型的所有可能规则(基本元胞自动机)[17],然后在计算机上运行它们,看看它们会做什么:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/14.bmp)
图3
我曾以为,具有简单的底层规则,最终的行为也会相应地简单。但某种意义上,计算机并不假设这一点:它只是枚举规则并计算结果。因此,即使我从未想到它会在那里,它也能“发现”像规则30[18]这样的东西。
一次又一次,我经历了类似的经历:我看不出某个系统如何能做到“有趣”。但当我系统地枚举可能性时,它就在那儿:一些意想不到、有趣且“聪明”的东西,通过计算机发现。
在1990年代初,我想知道最简单的通用图灵机可能是什么。我永远无法自己弄清楚。从1960年代初以来保持记录的机器有7个状态和4种颜色。但计算机让我通过系统枚举[19]发现了2状态3颜色的机器
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/15.png)
图4
并在2007年被证明是通用的[20](是的,它是最简单的通用图灵机)。
在2000年,我对逻辑(布尔代数)的最简单公理系统感兴趣。到那时已知的最简单系统包含9个二元Nand[21]运算。但通过系统枚举,我最终找到了单一的6运算公理[22]
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/16.bmp)
图5
(我使用自动定理证明证明其正确)。再一次,我不知道这是“存在的”,当然我也无法自己构建它。但通过系统枚举,计算机能够找到我认为非常“创造性”的结果。
2019年,我进行了另一种系统枚举,现在是可能的超图重写规则[23],这可能对应于我们物理宇宙的最低层结构[24]。当我观察生成的几何图形[25]时,我感觉作为一个人类可以粗略地分类我所看到的东西。但是否有异常值?我转向更接近“现代AI”的科学——制作一个特征空间图[26]的视觉图像[27]:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/17.bmp)
图6:视觉图像的特征空间图
它需要我作为人类去解释,但,确实,有一些异常值是通过制作特征空间图的神经网络“自动发现”的。
我将再给一个——完全不同类型的——例子,来自我的个人经历。1987年,为了构建现今Wolfram语言的1.0版[28]的一部分,我们试图开发算法,以在非常广泛的参数范围内计算数百种数学特殊函数。在过去,人们会仔细计算特定情况下的级数近似。但我们的方法是使用某种机器学习,花费数月计算机时间[29]来拟合有理近似中的参数。如今,我们可能会用神经网络而不是有理近似来做类似的事情。但在这两种情况下,概念都是从实际数据中学习模型的参数,找到一个科学模型的类比。虽然这并不是“解决科学”,甚至也不能“发现意料之外的事物”。但这是一个“AI式”对光滑性或简洁性的普遍期望知识的地方,能让我们构建科学模型的类似物。
AI能预测会发生什么吗?
这并不是科学的唯一角色——在接下来的部分中,我们将探索其他角色。但历史上,通常被视为成功科学的一个定义特征是:它能预测会发生什么?那么现在我们可以问:AI是否为我们提供了一种显著更好的方式来做到这一点?
在最简单的情况下,我们基本上是想用AI进行归纳推理。我们输入一堆测量结果,然后让AI预测我们尚未进行的测量结果。在这个层面上,我们将AI视为一个黑匣子;我们不关心内部发生了什么;我们只关心AI是否给出了正确答案。我们可能认为我们可以设置AI,使其“没有任何假设”——只是“遵循数据”。但不可避免地,AI中会有一些基础结构,最终使其假设某种数据模型。
是的,这个模型可以有很大的灵活性。但一个真正的“无模型模型”是不存在的。也许AI是基于一个巨大的神经网络,具有数十亿个可以调整的数值参数。也许甚至可以改变网络的架构。但整个神经网络设置不可避免地定义了一个最终的基础模型。
让我们看一个非常简单的例子。假设我们的“数据”是这里的蓝色曲线——可能代表悬挂在弹簧上的重物的运动——物理学告诉我们它会继续红色曲线:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/18.png)
图7
现在我们来创建一个非常简单的神经网络[30]
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/19.bmp)
图8
,然后使用上面的“蓝色曲线”数据对其进行训练[31],以获得具有某些权重的网络:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/20.bmp)
图9
现在我们应用这个训练好的网络来再现我们原来的数据并扩展它:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/21.bmp)
图10
我们看到网络在再现训练数据方面做得不错,但在“预测未来”时基本上失败了。
这里发生了什么?我们是否只是没有训练足够长的时间?以下是随着训练轮数增加的结果:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/22.bmp)
图11
似乎这并没有多大帮助。那么问题可能是我们的网络太小了。以下是具有不同大小的网络的结果:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/23.bmp)
图12
是的,更大的网络确实有所帮助。但它们并不能解决预测成功的问题。那么我们还能做什么?网络的一个特征是它的激活函数:我们如何从输入的加权和确定输出。以下是使用各种(流行的)激活函数[32]的结果:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/24.bmp)
图13
这里有些显著的东西——突显了“无模型模型”这一理念:不同的激活函数导致不同的预测,预测形式似乎直接反映了激活函数的形式。实际上,这里没有什么魔法;只是神经网络对应于一个其核心元素是激活函数的函数。
例如,网络:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/25.bmp)
图14
对应于函数
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/26.bmp)
图15
其中ϕ表示在这种情况下使用的激活函数。
当然,用标准函数组合来近似一个函数的概念是非常古老的(想想:本轮和以前)。神经网络允许使用更复杂(且分层的)非线性函数组合,并提供一种更简化的方式来“拟合所有参数”。但在根本层面上,它是相同的想法。
例如,这里有一些用更直接的数学函数构建的我们“数据”的近似[33]:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/27.bmp)
图16
这些近似的优点是,通过“给出其公式”很容易陈述“每个模型是什么”。但就像我们的神经网络一样,在做出预测时会有问题。
(顺便说一句,存在一系列用于例如时间序列预测[34]的方法,涉及类似于“拟合递归关系[35]”的想法——在现代,使用 transformer 神经网络[36]。虽然这些方法中的一些能够很好地捕捉到像正弦波这样具有周期信号的信号,但人们不期望它们能在广泛预测函数方面取得成功。)
好吧,或许我们尝试用太狭隘的方式使用和训练我们的神经网络。毕竟,似乎对于ChatGPT的成功至关重要的是具有大量关于各种事物的训练数据,而不仅仅是某个狭窄的特定领域。当然,那些广泛的训练数据让ChatGPT学会了“语言和常识的一般模式”[37],这只是从狭窄的训练数据中学不到的。
那么我们的类比是什么呢?可能是我们希望我们的神经网络对函数的“工作方式”有一个“一般概念”——例如了解函数的连续性,或者了解周期性或对称性。是的,我们可以继续训练,不仅仅是某个特定的“窗口”数据,而是整个函数族——例如三角函数的集合,或者可能是Wolfram语言中的所有内置数学函数。
而且,毫无疑问,如果我们这样做,我们肯定能够成功地预测上面的正弦曲线——就像我们使用传统的傅里叶分析[38]时一样,将正弦曲线作为我们的基函数。但这是“做科学”吗?
本质上,它是在说,“我以前见过类似的东西,所以我认为现在会发生这种情况”。毫无疑问,这可能是有用的;实际上,这是一个人类在某个特定领域有经验的典型事情的自动化版本。我们稍后会回到这一点。但现在的主要观点是,至少在预测函数方面,似乎神经网络——以及今天的AI——在任何明显的方式下都不能“看到”超出其构建和训练范围的东西。没有“新兴科学”;只是相对直接的“模式匹配”。
预测计算过程
预测一个函数是一个特别严肃的任务,人们可能会想象“真实过程”——例如自然界中的过程——会有更多的“环境结构”,AI可以利用这些结构找到预测的“立足点”。作为“人工自然”的例子,我们可以考虑像元胞自动机这样的计算系统。这里是一个特定元胞自动机规则的示例,其初始条件如下:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/28.bmp)
图17
这里混合了简单性和复杂性。作为人类,我们可以轻松预测简单部分将会发生什么,但基本上无法说明其他部分将会发生什么。那么AI会如何表现呢?
显然,如果我们的“AI”可以运行元胞自动机规则,那么它将能够预测一切,尽管计算工作量很大。但真正的问题是,AI是否可以捷径,以便在不进行所有计算工作的情况下做出成功的预测——或者换句话说,AI是否能够成功找到并利用计算可约性口袋。
因此,作为一个具体的实验,让我们设置一个神经网络来尝试有效预测我们的元胞自动机的行为。我们的网络基本上是一个直截了当的——尽管是“现代的”——卷积自编码器,具有59层和大约80万个参数:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/29.bmp)
图18:卷积自编码器
它的训练过程与LLM很相似。我们收集了大量元胞自动机演化的示例,然后将每个示例的“上半部分”展示给网络,并尝试让它成功继续,预测“下半部分”。在我们进行的具体实验中,我们给出了3200万个64单元宽的元胞自动机演化示例。(是的,这个示例数量与所有图片可能的初始配置相比微不足道。)然后我们尝试输入64个单元宽、64步长的“块”元胞自动机演化——并查看网络为不同可能的继续情况分配的概率。
以下是不同初始条件的结果:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/30.bmp)
图20
我们看到的是我们可能预期的:当行为足够简单时,网络基本上能搞定。但当行为更复杂时,网络通常表现不佳。它仍然常常大致正确——但细节不对。
或许,有人会认为,网络只是没有经过足够长时间的训练,或者没有足够的示例。为了了解更多训练的效果,以下是随着四分之一百万轮训练次数增加的预测概率:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/31.bmp)
图21
这些应该与实际结果进行比较:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/32.bmp)
图22
是的,随着更多训练有所改进,但到最后似乎不会有多大改善。(尽管其损失曲线在训练过程中确实显示出一些突然的下降,可能是由于“发现”的缘故——我们不能确定网络“了解”了一些结构。)
机器学习非常典型的表现是,它能很好地做到“粗略正确”。但在细节上的准确性却不是机器学习的强项。所以当我们要做的事情依赖于细节时,机器学习会有局限性。在我们这里考虑的预测任务中,问题是,一旦事情稍有偏离,基本上情况只会越来越糟。
识别计算简化性
计算简化性是我们通常所认为的“做科学”的核心。不仅因为它让我们能够进行预测,还因为它让我们能够识别规律、建立模型和压缩我们看到的东西——并发展出我们可以在脑海中捕捉的理解。
但我们如何发现计算简化性[39] ?有时候它非常明显。比如当我们对某些行为进行可视化(比如上面的细胞自动机演化)并立即识别出简单特征时。但在实际操作中,计算简化性可能并不那么明显,我们可能需要挖掘大量细节才能找到它。这是AI有可能大有帮助的地方。
在某种程度上,我们可以把它看作是“找到正确参数化”或“正确坐标系”的故事。一个非常直截了当的例子是,考虑看似非常随机的点云:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/33.bmp)
Image 23
只需将这个特定的点云转到适当的角度就会显示出明显的规律[40]:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/34.bmp)
Image 24
但是否有一般方法可以挑出其中的规律呢?有传统的统计学方法(“A和B之间是否有相关性?”等)。有模型拟合方法(“这是高斯函数的和吗?”)。还有传统的数据压缩方法(“在行程长度编码后是否更短?”)。但所有这些方法只能挑出相当具体类型的规律。那么AI能做得更多吗?它是否可能提供一种一般方法来发现规律?
说一个人发现了某事中的规律,基本上等同于说一个人不需要指定这个事物的所有细节:有一个简化的表示可以从中重建它。所以,例如,给出上图中的“点在直线上”规律,一个人不需要分别指定所有点的位置;只需要知道它们形成了具有一定间隔的条纹。
好的,那么让我们想象我们有一个包含一定数量像素的图像。我们可以问是否有一个涉及更少数据的简化表示——从中可以有效地重建图像。使用神经网络,有一种可以认为是找到这种简化表示的技巧。
基本思路是将神经网络设置为一个自编码器,它接受输入并将其作为输出再现。有人可能会认为这是一个微不足道的任务。但事实并非如此,因为输入的数据必须流经神经网络的内部,在一开始被“粉碎”,在最后被“重建”。但关键是,通过足够多的可能输入样本,有可能训练神经网络成功地再现输入,并作为一个自编码器运行。
但现在的想法是查看自编码器的内部,提取出它所产生的简化表示。随着数据从神经网络的一层流向另一层,它总是试图保留需要的信息来再现原始输入。如果一层有更少的元素,那么在那一层存在的东西必须对应于原始输入的某种简化表示。
我们先来看一个标准的现代图像自编码器[41],它已经在数十亿个典型网络图像上进行了训练。给它输入一张猫的照片,它会成功地再现出看起来像原图的东西:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/35.bmp)
Image 25
但在中间会有一个简化表示,有许多更少的像素——但仍然捕捉到了猫的必要特征(这里显示了它的四个颜色通道):
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/36.bmp)
Image 26
我们可以把这看作是猫图像的某种“黑箱模型”。我们不知道模型中的元素(“特征”)是什么意思,但它确实成功地捕捉了“图像的本质”。
那么如果我们把它应用到“科学数据”上,或者例如像细胞自动机这样的“人工自然过程”上会怎样呢?以下是一个成功压缩的案例:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/37.bmp)
Image 27
在这个案例中它不是那么成功:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/38.bmp)
Image 28
而在这些情况下——当存在基本的计算不可简化性时——它遇到了困难:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/39.bmp)
Image 29
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/40.bmp)
Image 30
但这个故事还有更多内容。你看,我们使用的自编码器是针对“日常图像”训练的,而不是这些类型的“科学图像”。因此实际上它是试图用常见于猫等物体的图片中的结构(如眼睛和耳朵)来建模我们的科学图像。
那么,如果像上面细胞自动机预测的例子一样,我们对自编码器进行更具体的图像类型训练会怎样呢?
这里是两个非常简单的神经网络,我们可以用作“编码器”和“解码器”来制作一个自编码器:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/41.bmp)
Image 31
现在我们拿标准的MNIST图像训练集[42],使用这些来训练自编码器:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/42.bmp)
Image 32
这些图像每个有28×28像素。但在自编码器的中间我们有一个只有两个元素的层。所以这意味着无论我们让它编码什么,都必须简化为只有两个数字:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/43.bmp)
Image 33
我们在这里看到的是,至少对于看起来或多或少像它所训练的图像的图像,即使是从这种激进的压缩中,自编码器也能够管理重建出看起来至少大致正确的东西。如果你给它其他类型的图像,它则不会那么成功,而基本上只是坚持将它们重建为看起来像其训练集中的图像:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0524/1/1.jpg)
Image 34
那么,如果对细胞自动机图像进行训练会怎样呢?我们拿着用特定规则生成的1000万图像:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/44.bmp)
Image 35
现在我们对这些图像训练我们的自编码器。然后我们尝试喂给它相似的图像:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/45.bmp)
Image 36
结果最多是非常大致的;这个小型神经网络并没有成功学习到这种特定细胞自动机的“详细方式”。如果它能成功描述所有明显的细胞自动机演化复杂性仅用两个数字,那么我们可以认为这是一项令人印象深刻的科学成就。但不出所料,神经网络实际上被计算不可简化性所阻碍。
尽管如此,即使它不能“严肃地破解计算不可简化性”,神经网络仍然可以“进行有用的发现”,实际上是通过发现小块计算可简化性和小规律。因此,例如,如果我们拿带噪声的字母图片,并用神经网络将其简化为一对数字,并使用这些数字来放置图像,我们得到一个“降维特征空间图”,将不同字母的图像分开:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/46.bmp)
Image 37
但以不同规则的细胞自动机的集合为例:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/47.bmp)
Image 38
这是一个典型的神经网络如何在“特征空间”中排列这些图像的方式:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/48.bmp)
Image 39
是的,这几乎成功地自动发现了我在1983年初确定的四种行为类别[43]。但并不完全是这样。虽然在某种意义上这是一个困难的案例,非常面对计算不可简化性。而且还有很多情况(想想:基于元素属性排列周期表;基于雷诺数的流体流动相似性等),我们可以期待一个神经网络能够锁定计算可简化性的一些方面,至少成功地重现已有的科学发现。
AI在非人类世界中
在其最初的概念中,AI是关于开发人类智能的人工模拟。的确,AI近期的巨大成功——例如在视觉对象识别或语言生成方面——都是关于拥有能够再现人类所做的本质的人工系统。这并不是因为有一个精确的理论定义能够区分一张图像是猫还是狗。重要的是我们可以拥有一个神经网络,它会得出与人类相同的结论。
那么为什么这有效呢?可能是因为神经网络捕捉到了实际大脑的架构本质。当然,人工神经网络的细节并不与生物大脑相同。但在现代AI的大惊喜中,似乎存在足够的普遍性,使得人工神经网络在功能上类似于人类大脑,至少在视觉对象识别或语言生成等事项上是如此。
但对于科学问题呢?在一个层面上,我们可以问神经网络是否能模仿人类科学家所做的事。但还有另一个层面:神经网络是否可以直接解决系统的行为——比如在自然中——是否有可能?
如果神经网络之所以在“人类任务”上“有效”,仅仅是因为它们在架构上类似于大脑,那么没有直接原因认为它们应该能够捕捉与大脑无关的“原始自然过程”。那么当AI做类似于预测蛋白质折叠这样的事情时,发生了什么呢?
我怀疑的一个部分是,尽管蛋白质折叠的物理过程与人类无关,但我们认为它的哪些方面重要确实如此。我们不期望神经网络预测每个原子的确切位置(在自然环境中,蛋白质中的原子甚至没有精确固定的位置)。相反,我们想知道的是蛋白质是否具有“正确的一般形状”,具有正确的“可识别特征”(比如说,α-螺旋),或正确的功能属性。而这些现在更多是“人的问题”——更多地在“观察者眼中”——更像是一个问题,例如我们人类如何判断一张图片是猫还是狗。因此,如果我们得出结论说一个神经网络“解决了科学问题”关于蛋白质如何折叠,那可能至少部分是因为我们的大脑(“主观地”)应用的成功标准是某种神经网络——凭借其类似大脑的架构——恰好能够交付的东西。
使用生成式AI制作图像
这有点像用生成式AI制作图像[44]。在基本人类视觉感知的层面上,它可能看起来像我们熟悉的东西。但是如果我们仔细观察,我们会发现它并不是我们所认为的“客观”事物:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/49.bmp)
Image 40
用“第一性原理”来弄清楚蛋白质如何折叠从来都不现实。因此,神经网络能够得到即使是大致正确的答案也令人印象深刻。那么它们是如何做到的呢?其中一个重要部分无疑是有效地将蛋白质块与训练集中所包含的内容进行匹配,然后找到“合理”的方式将这些块“缝合”在一起。但是可能还有其他东西。我们熟悉蛋白质中的某些“规则性片段”(如α螺旋和β折叠)。但是,神经网络似乎有效地接入了我们不知道存在的其他种类的规则性;它们以某种方式发现了可约简性的口袋,而我们不知道这些口袋的存在。特别是如果少数几个可约简性口袋反复出现,它们将有效地代表科学中的新的一般“结果”(例如,蛋白质结构中某种新的常见“元基序”)。
尽管从根本上说,在最终分析中必然存在无数的计算可约简性口袋,但我们不清楚这些在我们关心的事情中可能有多大意义,也不清楚神经网络方法在找到它们时可能有多成功。我们可以想象,既然神经网络反映了我们大脑的基本操作,那么它们只能在我们人类也能够容易发现的情况下找到可约简性口袋,例如通过观察某些可视化图像。
但一个重要的点是,我们的大脑通常只接受我们感官容易体验到的数据:我们见过相当于数十亿张图像,并且听到过无数的声音。但是我们没有直接体验到分子微观运动,或者科学观察和测量设备可以提供的各种数据。
然而,神经网络可以在非常不同的“感官体验”下“成长”——例如直接体验“化学空间”,或者“元数学空间[45]”、金融交易空间、生物有机体之间的相互作用等。但在这些情况下存在什么样的计算可约简性口袋?大多数情况下我们不知道。我们知道那些对应于“已知科学”的口袋。但即使我们可以预期其他口袋存在,我们通常也不知道它们是什么。
这些口袋是否对神经网络“可访问”?我们仍然不知道。如果它们是可访问的,那么可能会有一些表示方式——或者说可视化方式——在这种表示方式中,可约简性对我们来说是“显而易见的”。但有很多方式可能会失败。例如,可约简性可能在3D体积中是“视觉上明显的”,例如在这种情况下很难区分蓬松的云的不同结构。或者可约简性可能只通过某些计算显示出来,这些计算不能被神经网络轻松处理。
必然有许多系统显示出计算不可约简性,至少在其完整形式中,对于任何“捷径方法”(基于神经网络或其他方式)来说都是不可访问的。但我们在问的是,当存在计算可约简性口袋时,神经网络是否能够捕捉到它。
但我们再次面对一个事实:没有“无模型的模型”。某种特定类型的神经网络将能够容易地捕捉到某些特定种类的计算可约简性;另一种将能够容易地捕捉到其他种类。是的,你总是可以构造一个神经网络来近似任何给定的特定函数。但在捕捉某种一般的计算可约简性时,我们要求得更多——我们能得到的东西将不可避免地取决于神经网络的基础结构。
但假设我们有一个神经网络成功地在特定系统中捕捉到计算可约简性。这是否意味着它可以预测一切?通常不是。因为几乎总是计算可约简性只是一个“口袋”,并且在“外面”有很多计算不可约简性和“意外”。
实际上,这甚至发生在像蛋白质折叠这样的例子中。这里是一些我们认为结构相对简单的蛋白质——神经网络预测(黄色)与物理实验结果(灰色管)的结果相当吻合:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/50.bmp)
Image 41
但对于我们认为结构更复杂的蛋白质,吻合度通常不是那么好:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/51.bmp)
Image 42
这些蛋白质至少与用于训练神经网络的蛋白质相似。但对于非常不同的蛋白质——例如具有随机氨基酸序列的蛋白质呢?
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/52.bmp)
Image 43
很难知道神经网络在这里表现如何;特别是如果有“意外”,它可能无法成功捕捉到它们。(当然,可能所有在生物学中通常出现的“合理蛋白质”都具有某些特征,而将神经网络应用于“非生物学的”随机蛋白质可能是“不公平的”——虽然例如在适应性免疫系统中,生物学确实有效地产生了至少短暂的“随机蛋白质”。)
用AI解方程
在传统的数学科学中,典型的设置是:这里有系统的方程;通过求解这些方程来找出系统的行为。在计算机出现之前,这通常意味着必须找到某种“封闭形式”公式[46]作为解决方案。但有了计算机,就有了另一种方法:进行离散的“数值近似”,然后以某种方式逐步求解方程。然而,要得到精确的结果,可能需要很多步骤和大量的计算努力。那么问题是:AI能否加速这一过程?特别是,AI能否例如直接从方程的初始条件到整个解?
让我们以经典的数学物理问题为例:三体问题[47]。给定三点质量在逆平方定律引力下的初始位置和速度,这些质量会沿什么轨迹运动?存在很大的多样性,通常也很复杂,这就是三体问题为什么如此具有挑战性[48]:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/53.bmp)
Image 44
但如果我们训练一个神经网络解决大量示例解?它能在任何特定情况下求解吗?我们将使用一个相当直接的“多层感知器”网络:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/54.bmp)
Image 45
我们将初始条件输入,然后要求它生成一个解。以下是它所做的一些示例,正确的解决方案由较浅的背景路径表示:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/55.bmp)
Image 46
当轨迹相对简单时,神经网络表现得相当好。但当情况变得复杂时,它的表现就会越来越差。就像神经网络“成功记住”了简单的情况,但不知道在更复杂的情况下该怎么做。最终,这与我们在上面预测元胞自动机演化(可能还有蛋白质折叠)时看到的非常相似。
是的,这又是计算不可约简性的故事。要求“一次性得到解”实际上是要求完全的计算可约简性。假设有人可能想象——如果知道怎么做——原则上总能得到解的“封闭形式”公式,这种假设隐含了计算可约简性。但几十年来,我一直认为类似三体问题的东西实际上充满了计算不可约简性。
当然,如果神经网络能够“破解问题”并立即生成解,那实际上就证明了计算可约简性。但是,正如它所表现的那样,神经网络的明显失败为三体问题中的计算不可约简性提供了另一份证据。(顺便提一句,虽然三体问题确实显示出对初始条件的敏感依赖性[49],但这不是这里的主要问题;而是轨迹的内在复杂性。)
我们已经知道,像元胞自动机这样的离散计算系统充满了计算不可约简性。我们可能会想象,连续系统(例如由微分方程描述的系统)会有更多的结构,这将使它们避免计算不可约简性。确实,既然神经网络(在其通常形式中)涉及连续数,我们可能会认为它们能够以某种方式接入连续系统的结构,从而能够预测它们。但不知何故,计算不可约简性的“力量”太强,最终会超出神经网络的能力。
尽管如此,神经网络在做诸如解方程之类的事情上仍然具有很大的实际价值。传统的数值近似方法往往是局部和逐步进行的(尽管通常是自适应的)。但神经网络可以更容易地处理“更大的窗口”,在某种意义上“了解更长的行为序列”并能够“跨越它们”。此外,当处理非常大量的方程(例如在机器人学或系统工程中)时,神经网络通常可以“接受所有的方程并做出合理的处理”,而传统方法实际上必须逐个处理这些方程。
三体问题涉及常微分方程。但许多实际问题则基于偏微分方程(PDE),其中不仅仅是单个坐标,而是整个函数_f_[_x_等随时间演化。是的,可以在这里使用神经网络,通常在实际中具有显著的优势。但计算不可约简性呢?在实际中,许多方程和情况(例如工程目的)往往避免它,但一般来说它确实存在[50](尤其是在流体湍流等现象中)。而当存在计算不可约简性时,最终不能指望神经网络表现得很好。但当涉及到满足我们的人的目的时,如前面讨论的其他例子中,情况可能会更好。
作为一个例子,考虑预测天气。最终,这完全是关于流体动力学的PDE(是的,还有与云有关的其他影响等)。一种方法可以想象直接和计算地求解这些PDE。但另一种方法是让神经网络只是“学习典型的天气模式”(就像老派气象学家必须做的那样),然后让网络(有点像蛋白质折叠那样)试图拼凑这些模式以适应任何出现的情况。
这将有多成功?可能取决于我们在看什么。可能某些特定方面的天气显示出相当大的计算可约简性,并且很容易预测,例如通过神经网络。而如果这是我们关心的天气方面,我们可能会得出结论神经网络表现得很好。但如果我们关心的东西(“明天会下雨吗?”)没有触及计算可约简性的口袋,那么神经网络通常不会成功预测它——而且不得不做显式计算,可能需要很多实际的计算。
AI用于多计算
到目前为止,我们讨论的大多是AI是否可以帮助我们“跳过”并捷径某些计算过程。但还有许多情况,感兴趣的是捷径称为多计算过程的东西,其中每一步都有许多可能的结果,目标是例如找到某个最终结果的路径。
作为多计算过程的一个简单例子,让我们考虑一个在字符串上运行的多方式系统,在每一步我们以所有可能的方式应用规则{A -> BBB, BB -> A}:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/56.bmp)
Image 49
给定这个设置,我们可以问一个问题:从A到BABA的最短路径是什么?在这里显示的情况下,可以通过在图上显式运行路径寻找算法轻松计算出答案:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/57.bmp)
Image 50
有许多问题遵循这个一般模式。在游戏图中找到获胜序列[51]。通过一系列移动在可能性的图中找到解决谜题的方法[52]。在给定某些公理的情况下,找到定理的证明[53]。在给定某些基本反应的情况下,找到化学合成途径。一般来说,在解决涉及许多“非确定性”计算路径的NP问题中解决一大堆问题。
在上面展示的非常简单的例子中,我们可以轻松生成整个多方式图。但在大多数实际例子中,图会大得难以想象。因此,挑战通常是找出如何进行移动,而不必追踪所有可能性的图。常见的方法之一是试图找到一种方法为不同的可能状态或结果分配分数,并且仅追求具有(例如)最高分数的路径。在自动定理证明[54]中,通常的做法是“从初始命题向下工作”和“从最终定理向上工作”,试图看到路径在中间相遇的地方。还有一个重要的想法是,如果已经确定了从X到Y的路径,则可以将X -> Y作为规则集合中的新规则。
那么AI如何提供帮助?首先,我们可以考虑将上述字符串多方式系统拿来,训练一个相当于语言模型的AI来生成表示路径的标记序列(或者在数学环境中是证明)。想法是给AI提供一系列有效的序列,然后呈现一个新的序列的开头和结尾,要求它填充中间。
我们将使用一个相当基础的 transformer 网络:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/58.bmp)
Image 52
然后我们通过给出大量有效路径的标记序列(E表示“结束标记”)
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/59.bmp)
Image 53
以及表示路径不存在的“负面例子”来训练它:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/60.bmp)
Image 54
现在我们用训练数据中出现的“前缀”来“提示”训练好的网络,然后以“LLM风格”(基本上在零温度下,即总是选择“最可能的”下一个标记)迭代运行:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/61.bmp)
Image 55
一段时间内,它表现得非常好——但在接近结束时开始出错,如红色标记所示。不同目的地的表现不同——有些情况下一开始就出错:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/62.bmp)
Image 56
如何做得更好?一种可能性是在每一步不仅保留被认为最可能的标记,还保留一堆标记——从而实际上生成一个“LLM控制器”可能导航的多方式系统。(可以有点滑稽地将其称为“量子LLM[55]”,它总是在探索多条历史路径。)
(顺便提一句,我们还可以想象训练许多不同规则,然后做零样本学习,给出一个“预提示”来指定我们想在任何特定情况下使用的规则。)
LLM方法的一个问题是,它生成的序列通常甚至“在局部是错误的”:下一个元素不能根据给定的规则从之前的元素跟随。
但这表明可以采取另一种方法。与其让AI试图“立即填充整个序列”,不如让它只是选择“下一步去哪里”,始终遵循一个指定的规则。然后,训练的一个简单目标实际上是让AI学习图的距离函数[56],换句话说,是能够估算从任何一个节点到另一个节点的最短路径有多长。给定这样的函数,典型策略是遵循类似于“最陡下降路径”的东西——在每一步选择AI估计最能减少到目的地距离的移动。
如何用神经网络实际实现这一点?一种方法是使用两个编码器(例如由 transformer构造),实际上生成两个嵌入,一个用于源节点,一个用于目的地节点。网络然后将这些嵌入结合起来并学习一个度量,表征节点之间的距离:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/63.bmp)
Image 57
在多方式系统上训练这样一个网络,通过给出几百万个源到目的地距离的例子(以及距离是否为无穷大的指示器),我们可以使用网络预测多方式系统的距离矩阵的一部分。我们发现,预测的矩阵与实际矩阵相似,但绝对不是相同的:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/64.bmp)
Image 58
尽管如此,我们可以想象在每一步都计算神经网络预测的每个可能目的地的估计到目的地的距离,然后选择“走得最远的”:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/65.bmp)
Image 59
每个单独的移动在这里都是有效的,我们确实最终到达了我们的目的地BABA——尽管步骤比真正的最短路径多一点。但即使我们没有找到最佳路径,神经网络仍然成功地让我们至少在某种程度上修剪了我们的“搜索空间”,通过优先考虑节点并只遍历红色边:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/66.bmp)
Image 60
(一个技术点是,我们在这里使用的特定神经网络具有这样的属性:任何给定对节点之间的所有路径始终具有相同的长度——所以如果找到任何路径,它可以被认为是“最短的”。一个规则如{A -> AAB, BBA -> B}没有这个属性,一个为这个规则训练的神经网络可能会找到到达正确目的地的路径,但不是尽可能短的路径。)
尽管如此,和神经网络一样,我们不能确定这将如何有效。神经网络可能会让我们走得太远“偏离轨道”,甚至可能引导我们到一个没有路径通向目的地的节点——因此,如果我们想取得进展,我们将不得不求助于传统算法回溯之类的东西。
但至少在简单情况下,这种方法可能效果很好——AI可以成功找到赢得游戏、证明定理等的路径。但是不能指望它总是有效。原因是它将遇到多计算不可约简性[57]。正如在单个“计算线程”中计算不可约简性可以意味着没有捷径可通向“通过计算的步骤”,在多方式系统中,多计算不可约简性可以意味着没有捷径可通向“遵循所有计算线程”,然后例如看到哪些最终合并在一起。
但即使这种情况原则上可能发生,它在我们人类感兴趣的情况下实际上是否会发生?在游戏或谜题[58]中,我们往往希望它难,但不要太难去“赢”。当涉及到数学和证明定理时,我们用于练习或比赛的案例同样希望它们难,但不要太难。然而,当涉及到数学研究和数学前沿时,不立即期望有任何这样的约束。结果是,然后可以期待面对多计算不可约简性——使得AI帮助太多变得困难。
这个故事有一个脚注,与我们选择数学的新方向有关。我们可以考虑元数学空间[59]通过在一个巨大的多方式图中从其他定理构建定理。但正如我们在下面讨论的那样,大多数细节远非人类数学家认为的“做数学”。相反,数学家隐含地似乎在“更高层次”上做数学,在这一层次上他们“粗略地分级”这个“微观元数学”——就像我们可能以相对容易描述的连续动力学研究物理流体,即使“在下面”有很多复杂的分子运动。
那么AI是否可以帮助我们在这种“流体动力学风格”层次上做数学?可能可以,但主要是提供代码协助。我们有些我们想表达的东西,例如在Wolfram语言[60]中。但我们需要帮助——“LLM风格”[61]——从我们的非正式概念到显式计算语言。只要我们在做的事情遵循之前所做事情的结构模式,我们可以期望像LLM这样的东西提供帮助。但只要我们表达的东西“真正新”,并且我们的计算语言没有太多“样板”,很难想象一个从之前所做事情中训练的AI会有多大帮助。相反,我们实际上需要做一些多计算不可约简的计算,允许我们探索某些计算宇宙[62]的新部分和ruliad[63]。
探索系统空间
“可以找到一个做X的系统吗?”例如运行很长时间然后停止的图灵机。或者一个生长但生长很慢的元胞自动机。或者具有某种特定属性的化学物质。
这是一个与我们迄今为止讨论的略有不同的问题。它不是关于采取特定规则并查看其结果是什么。而是关于确定可能存在的规则,具有某些后果。
给定一些可能的规则空间,一种方法是穷尽搜索。从某种意义上说,这是唯一真正“无偏”的方法,它将发现那里有什么需要发现的东西,即使人们不期望它。当然,即使进行穷尽搜索,也需要一种方法来确定特定候选系统是否满足设定的标准。但现在这是预测计算的问题——我们讨论过的事情适用。
好吧,但我们能否比穷尽搜索做得更好?我们是否可以找到一种方法来确定要探索哪些规则而不必查看每个规则?一种方法是做类似于生物进化通过自然选择的事情:从特定规则开始,然后逐步改变它(可能是随机的),每一步保留做得最好的规则,丢弃其他规则。
这不是我们在这里操作上定义的“AI”(它更像是“遗传算法”)——尽管有点像神经网络的内在训练循环。但它会起作用吗?这取决于规则空间的结构[64]——正如人们在机器学习中看到的那样[65],在高维规则空间中它往往表现得比在低维规则空间中更好。因为维度越多,就越不容易“卡在局部最小值中”,无法找到通往“更好规则”的路。
一般来说,如果规则空间像一个复杂的分形山脉,那么期望可以逐步取得进展(或许像强化学习这样的AI方法可以帮助细化采取的逐步步骤)。但如果相反,它相当平坦,只有一个“洞”(“高尔夫球场风格”),那么不可能期望逐步“找到洞”。那么规则空间的典型结构是什么?确实有许多情况,规则空间整体上相当大,但维度数量只有适度。在这种情况下(例如寻找具有长停止时间的小图灵机[66]),往往有“孤立的解决方案”,无法逐步到达。但当有更多维度时,似乎计算不可约简性保证了“足够随机的景观”,以便逐步方法可以表现良好,正如我们近年来在机器学习中看到的那样。
那么AI呢?是否可能让AI学习如何“直接在规则空间中挑选赢家”,而无需任何逐步过程?是否可以找到一些“嵌入空间”,在该空间中我们想要的规则被简单地排列出来,并因此有效地“预先识别”给我们?最终,这取决于规则空间是什么样子的,以及探索它的过程是否必然是(多)计算不可约简的,或者至少我们关心的方面可以通过计算可约简的过程进行探索。(顺便提一句,尝试使用AI直接找到具有特定属性的系统有点像尝试直接从数据生成神经网络,而不进行逐步训练。)
让我们看一个基于元胞自动机的具体简单例子。假设我们想找到一个元胞自动机规则——从单细胞初始条件开始进化——它会生长一段时间,但在特定的确切步骤后消失。我们可以尝试使用非常简单的AI风格“进化”方法来解决这个问题:从一个随机规则开始,然后在每一代产生一定数量的“后代”规则,每个规则随机改变一个元素——然后保留这些规则中“最好的”。如果我们想找到一个“存活”恰好50步的规则,我们定义“最好的”为一个规则的“存活”步数与50的距离最小化。
例如,假设我们从随机选择的(三色)规则开始:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/67.bmp)
Image 63
我们规则的进化序列(这里只显示图片“结果值”)可能是:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/68.bmp)
Image 65
如果我们看这些规则的行为,我们会看到——在一个不太有希望的开始之后——它们成功进化到了一个符合“存活恰好50步”标准的规则:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/69.bmp)
Image 66
这里展示的是一条随机选择的“进化路径”。但其他路径会发生什么?这是100代中一条路径的“损失”如何演变:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/70.bmp)
Image 67
我们看到,这里只有一个“赢家”达到零损失;在所有其他路径中,进化“被卡住”。
正如上面提到的,维度越多越不容易被卡住。例如,如果我们看4色元胞自动机规则,现在有64而不是27个可能元素(或有效维度)可以改变,在这种情况下,许多进化路径“走得更远”
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/71.bmp)
Image 68
并且有更多的“赢家”,如:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/72.bmp)
Image 69
神经网络在这里如何帮助我们?只要我们可以用它们来预测元胞自动机演化,它们可能会给我们一种方式来加速实际上计算每个候选规则的损失——尽管从我们在上一节中看到的,计算不可约简性可能会限制这一点。另一个可能性是——像前一节中的——我们可以尝试使用神经网络引导我们在每一代中进行哪些随机改变。但尽管计算不可约简性可能有助于使事情“足够随机”,以至于我们不会被卡住,它也使得神经网络难以成功告诉我们“走哪条路”。
科学作为叙事
从许多方面来看,可以认为科学的本质——至少在传统上被实践时——是关于把世界上的东西以某种我们人类可以思考的形式进行表达。实际上,我们希望科学为发生的事情提供一个人类可访问的叙述,例如在自然界中。
计算不可约简性的现象现在告诉我们,这往往是根本不可能的。但每当有一个计算可约简的口袋时,意味着至少有一部分正在发生的事情有某种简化描述。但这种简化描述是人类可以合理理解的吗?例如,它可以简明扼要地用文字、公式或计算语言来表达吗?如果可以,我们可以将其视为代表一个成功的“人类层次的科学解释”。
AI能帮助我们自动创建这样的解释吗?为此,它必须在某种程度上有一个我们人类理解的模型——以及我们如何用语言等表达这种理解。说“这里有100个计算步骤生成这个结果”没有多大用处。为了获得一个“人类层次的解释”,我们需要将其分解成可以人类吸收的部分。
例如,考虑一个数学证明[67]由自动定理证明[68]生成:
![神经网络学不会正弦波,也做不到一切(一)](http://scholarsupdate.hi2net.com/picture/2024/0523/2/73.bmp)
Image 70:Automated theorem–proving table
计算机可以轻松验证这是正确的,因为每一步都来自之前的内容。但我们这里有一个非常“非人类的东西”——没有现实的“人类叙述”。那么要制作这样一个叙述需要什么?本质上,我们需要一些熟悉的“航标”——可能是我们熟知的著名定理。当然,可能没有这样的东西。因为我们可能有一个通过“未知的元数学领域[69]”的证明。因此——无论是否有AI帮助——现今的人类数学可能没有足够的原材料让我们创建一个人类层次的叙述。
在实际中,当证明中的步骤之间的“元数学距离”相对较短时,认为可以给出一个人类层次的解释是现实的。而所需的非常像Wolfram|Alpha[70]在产生其答案的逐步解释[71]时所做的。AI可以提供帮助吗?可能可以,使用类似我们上面第二种AI辅助多计算的方法。
顺便提一下,我们的Wolfram语言的努力也有帮助。因为我们计算语言[72]的整个想法是将“常见的计算工作块”作为内置构造捕捉——从某种意义上说,设计语言的过程正是关于识别“人类可吸收的计算航标”。计算不可约简性告诉我们,不可能为所有计算找到这样的航标。但我们的目标是找到捕捉当前范式和当前实践的航标,并定义方向和框架以扩展这些——尽管最终“我们人类知道什么”是由人类知识的历史演变决定的。
证明和计算语言程序是两种结构化的“科学叙述”的例子。一个潜在的简单例子——与数学传统相符——是一个纯粹的公式。“它是一个幂律”。“它是指数和”。等等。AI可以提供帮助吗?像FindFormula[73]这样的功能已经使用机器学习启发的方法将数据转化为“合理的公式”。