由于时间关系,我从数据的角度来介绍人工智能的主要技术,包括0数据、小数据、大数据、全数据。
1.0数据
0数据,即不需要用数据,主要技术是符号表示、逻辑推理,机器证明。1956年在达特茅斯第一次人工智能会议上,艾伦·纽厄尔(Allen Newell)和赫伯特·西蒙(Herbert Simon)就开发了Logic Theorist系统。该系统模仿了人类的思维方式和逻辑推理过程,能够证明一些简单的定理。这种技术路径虽然不需要数据,但总体上是模仿人的思维方式。
另外一种不需要数据的方法是专家系统。1997年,IBM开发的国际象棋电脑Deep Blue,就是一个基于专家知识的系统,它战胜了国际象棋世界冠军卡斯帕罗夫。然而,面对围棋这类复杂系统时,专家系统暂时却显得力不从心,因为这一类复杂系统将带来组合爆炸的问题。
对比国际象棋和围棋的棋盘可以发现,从国际象棋的8×8棋盘,到围棋的19×19棋盘,可以组合的选择是呈指数型爆炸式增长的。因此,专家系统的套路在解决围棋的问题时就无能为力了。Deep Mind的创始人就是看了国际象棋比赛,才发现需要发展新的技术。
2.小数据
在神经网络兴起之前,统计学习(如支持向量机)、Perceptron(小型神经网络)等基于小数据的方法已经在模式识别等领域得到了广泛应用。
然而,小数据方法同样面临维数灾难和组合爆炸的挑战。在数学上,维数指自由度的个数,所谓“维数灾难”指的是问题的自由度太多,导致复杂性指数级增长。
为了解决这个问题,我们也采取了多种策略。例如,在模式识别中,用特征工程来简化问题;在统计学中,用广义线性模型从经验中寻找非线性函数的线性组合,以描述多个变量的非线性关系;在量子化学中,Hartree-Fock模型作为一种基本工具,通过将多变量函数近似为单变量函数的乘积,来解决维数灾难问题。尽管这种方法可能存在较大误差,但在量子化学中却是一种基本的工具。
可以说,对组合爆炸和维数灾难认识的不足是人工智能经历大起大落的根本原因。
作为1956年达特茅斯会议的组织者之一和图灵奖获得者,马文·明斯基(Marvin Minsky)曾在1971年乐观地预测,在未来3到8年内,人工智能模型将达到一般人类的智能水平。显然他的预言没有实现。
1973年,应用数学家詹姆斯·莱特希尔(James Lighthill)在其报告中指出,人工智能的现实成果与专家们的承诺之间存在巨大差距。这份报告引发了人工智能领域的一系列反驳,人们认为该报告可能不够公平合理。事实是,从那时起,英国和美国开始减少对人工智能研究的投入,这导致了人工智能发展的低谷。
3.大数据
十几年前,深度学习开始兴起,这是一种基于大数据和神经网络的方法。其关键事件是2012年辛顿团队赢得ImageNet比赛。神经网络是一个古老的概念,但现代的神经网络层数更多一些。事实上,多层神经网络并非2012年首次出现,在算法层面,深度学习使用的反向传播算法和随机梯度下降算法也都是已知的算法。随机梯度下降算法起源于20世纪50年代,而反向传播算法则是在80年代提出的。
辛顿团队成功的关键在于,它首次真正地训练好了神经网络,这得益于两个主要因素:一是高质量、大规模的数据集,如李飞飞牵头构建的ImageNet;二是强大的计算资源,如GPU。两个因素的组合能够把神经网络的潜力充分发挥出来。
这其中,辛顿(Geoffrey Hinton)功不可没。他坚持了40年的深度学习研究,尽管许多人对他的路径持怀疑态度,但他的坚持最终得到了回报。
辛顿等人提出的AlexNet是一个由5层卷积层和3层全连接层组成的网络,拥有6000万个参数,这与之前用于识别手写数字的几万个可训练参数的LeNet网络相比,差距巨大。
看到这个结果后,我的第一个想法是“或许我们能做得更好”。我甚至还和学生写了一篇文章,试图提出更好的技术路线。但后来发现这是徒劳的,因为我意识到,深度学习的方法不仅适用于图像识别,还具有通用性,可以用于其他任务,这也是现在深度学习如此广泛的原因。
如何用数学的观点来看待神经网络?
神经网络的概念可以追溯到20世纪40年代,是一项历史悠久的技术。直到60年代,明斯基和帕珀特(Seymour Papert)出版了著名的《Perceptrons》一书,希望为人工智能的发展建立一套基础理论。他们研究了哪些逻辑函数可以通过两层的感知机实现。但结论是悲观的:许多简单的函数都无法用神经网络来实现。这本书的出版对当时神经网络和人工智能的发展产生了非常负面的影响。我认为他们的出发点从根本上就是错误的。
进入80年代末,Cybenko定理的提出为神经网络领域带来了新的希望。这个定理证明了任何连续函数都可以用神经网络来逼近,许多人也将其视为神经网络最基本的数学定理。但这个观点也是错误的,数学家都知道,连续函数也可以用多项式来逼近,这被称为魏尔斯特拉斯逼近定理。尽管我们“玩转”多项式这么多年,但对于刚才提到的高维问题,多项式仍然有局限。Cybenko定理虽然正确,但并未明确指出神经网络与传统方法(如多项式)之间的本质区别。
1993年,Barron提出了一个真正的正确观点,他证明了神经网络逼近函数时,其收敛速度与维数无关。以多项式为例,要将误差降低10倍,所需的自由度数量需要指数级增长,这就产生了维数灾难。而神经网络则不受此限制,其性能与维数无关,这为我们提供了一个正确的出发点,突显了神经网络在处理高维问题上的优势。
在了解到Barron定理后,我意识到尽管这一理论没有得到足够的重视,但它为深度学习提供了重要的启示。首先,深度学习有潜力解决维数灾难问题,这正是我们在科学计算研究中所面临的主要困难;其次,我们需要从数学上更深入地理解深度学习与传统多项式方法之间的区别。基于这些认识,我着手布局了两个主要方向。这也是我投身于“AI for Science”的原因。
在科学领域,许多问题和困难都源于自由度过多,例如量子力学、分子动力学、蛋白质折叠等典型的多体问题。2018年,我和汤超院士在北大组织了一个讨论会,从那时起我们开始系统推进“AI for Science”。
当然,除了维数灾难问题,还有其他挑战,例如记忆灾难。在处理时间序列数据的时候,对记忆的依赖是一个主要问题。以侦探小说为例,故事的结局往往与开篇的场景紧密相关,但要处理这样长的记忆依赖是非常困难的。可以证明,传统的循环神经网络在这方面存在局限,而Transformer架构则没有这样的困难。
4.全数据
刚才说的这些都是利用大数据,并且是具体场景下的大数据。接下去要谈到全数据,所谓全数据,就是如何把所有的数据都用起来。
在探讨如何充分利用所有数据的过程中,我们首先需要解决的关键问题是如何有效处理无标注数据。例如,对于医学影像数据,高质量的标注往往需要专业医生的参与,这在实际操作中难以实现。因此,大多数数据实际上是未标注的。为了解决这一问题,预训练模型成为了关键技术。目前,BERT和Open AI的预训练模型是两个主要的解决方案。BERT通过“填空”的方式进行预训练,而Open AI则通过“预测下一个词”的方式。
其次,我们需要考虑模型的通用性,即模型必须能够解决所有下游任务。Open AI的“预测下一个词”模型不仅具有通用性,还是一种生成模型,这与BERT有显著不同。更重要的是,这种模型具有标度律,这为我们提供了两个重要的好处。
首先,标度律可以帮助我们预测所需的计算资源。其次,类似于摩尔定律它可以作为指导我们对未来技术发展的目标。标度律是复杂系统的一个常见现象,它揭示了大尺度上系统行为的可预测性。
此外,我们有“涌现”的概念,即量变引起质变。以人类大脑为例,尽管我们的大脑结构与动物相似,但由于体积的差异,这种量变最终导致了质的飞跃。
如何降低大模型的计算成本
最后,我们来探讨一下如何从系统的层面降低大模型的计算成本。
人工智能有两个基本任务:一是要有知识,二是要有推理能力。
从知识的角度来说,知识可以被分为不同类型,包括极高频知识(如条件反射)、高频知识(如学习得来的数学知识),以及低频知识(如通过网络查询得到的信息)。这些知识需要不同的处理方法,但在此不作深入讨论。
从推理能力来说,有时需要严格推理,有时则可以相对宽松。以AlphaGeometry为例,它通过定理库实现严格推理,而直观的辅助线添加则来源于大数据模型。这种模式值得更广泛的推广。
但最重要的是,大模型开发不是“一锤子买卖”,而应视为整个系统的一部分,系统包括:底层的计算系统、算力、系统软件、数据库、模型、智能体和机器人,上层操作系统负责任务分配。这将是未来通用人工智能的正确发展框架。自2018年以来,我就开始布局这一领域,包括推动开发国际上第一个AI数据库。
当前,探索人工智能基本原理的时机已经成熟,与过去相比,现在我们拥有了所有必要的基本条件。这一探索不仅是人工智能长期发展的基础,也是确保其持续进步的关键,对中国而言,考虑到我们在某些资源方面有所不足,从基本原理出发制定技术路线尤为重要。此外,这一过程还需要多学科人才的紧密合作。
至于我国应该如何布局人工智能战略,我认为要从整个计算产业的角度来规划。高校作为人才培养的基地,需要认识到人工智能是一个特殊的学科,并从全校层面进行战略布局。最终目标是实现人力资源和算力资源的有效对接,构建一个高质量、多层次的人才梯队。
谢谢大家。