深度学习浪潮下的个人经历
编写本文时,笔者已经完成了硕士论文答辩,即将结束两年的读研生活。这几天闲来无事,便阅读一些生成式 AI 的回顾性文章,以及早年的 AI 相关书籍。本文的主题是对复旦大学徐英瑾教授所著的《人工智能哲学十五讲》的批判,但在讨论这本书之前,请允许笔者先回顾深度学习浪潮下的一些个人经历。过去十年间,深度学习的高速发展与笔者个人的求学生涯梦幻般地重合在一起,让笔者见证了深度学习从嗷嗷待哺到席卷各种任务的过程,笔者深以为幸。
笔者从初一开始学习编程,但直到高一才开始认真学习算法。高一下学期,AlphaGo 横空出世,拉开了本轮人工智能浪潮的序幕。犹记得 AlphaGo 与李世石对弈的那几天,笔者和信息竞赛组的几位同学每天中午都用班里的电脑阅读新闻,下午则趁着课间休息的 10min 上网追踪进展。尽管看不懂棋谱,但每当 AlphaGo 赢下一局,便弹冠相庆。那段日子里,全互联网都在讨论深度学习、神经网络等热词,甚至有人赋予 AlphaGo 一些人类感情,畅想 AI 奴役人类的未来。
2018 年秋,笔者进入哈工大读本科,开始学习 AI。最初是用 numpy 写一个多层感知机,然后是用 PyTorch 训练一些模型。那时的模型都很小,transformer 还没有特别火爆,CV 领域的主流技术还是卷积神经网络。2019 年,笔者参与了一个学生项目,旨在判断一张图片有没有被 PS 过。当时采用了一些顶会上发表的方法:最初参考了基于 Faster R-CNN 的目标检测模型(Peng Zhou et al.),后来改用一个端到端模型(ManTra-Net),取得了不错的效果。后来,transformer 一统机器学习业界,ViT 成了大量 CV 任务中的 SOTA 方法,模型也变得越来越大,个人电脑很难跑起来最新的模型了。
2022 年秋,笔者开始读研,这个秋天发生了两件大事,恰好一件与 CV 相关,一件与 NLP 相关。这年 10 月,NovelAI 模型泄露,笔者体验了 diffusion 模型,与 GAN 相比确实是飞跃性的进展。11 月,OpenAI 推出了 ChatGPT。笔者亲眼见到 ChatGPT 有模有样地扮演 bash 终端,这种震撼感很难用文字描述,仿佛原本遥不可及的 AGI(通用人工智能),突然变得可以想象了。
笔者在 AI 领域算是技术乐观派(至少在每个时间点上,都比主流舆论更加乐观),但过去几年间,AI 的发展速度仍然远远超过了笔者这个乐观主义者的心理预期。社会舆论最早说围棋是游戏之王、人类智慧的高峰,不是 AI 可以轻易征服的;后来又说人类的绘画拥有灵魂,AI 无法画出有灵魂的画作;现在则宣称 AI 只能基于概率来拼凑句子,不具有对这些事物的深入理解,因此不可能拥有真正意义上的智能。我们可以看到,AI 的发展过程,就是不断打破「AI 永远无法 ×××」这类偏见的奋斗历程。AI 的发展日新月异,每个月都有振奋人心的报告;对 AI 本质、AI 能力边界、AI 未来发展的讨论也时刻吸引着我们的注意力。时至今日,AI 已经成为计算机领域无可争议的显学,我们身为计算机工程师,没有人可以置身事外。然而,在使用大模型画 logo、翻译论文、写代码的同时,我们也该进行一些思考:当前的技术路线可以通往 AGI 吗?有哪些论据可以帮助判断?可能存在的瓶颈在哪里?
笔者认为,要对未来的 AI 发展进行预测,则前人作出的那些正确或错误的预测,可以成为珍贵的经验;真正可贵的并非这些命题本身,而是前人的推理过程。如果前人犯了某种错误,则我们也许可以规避这些错误。怀着这样的思路,笔者阅读了《人工智能哲学十五讲》。这本书中包含了许多对深度学习的经典偏见,很适合作为笔者与读者进行相关讨论的基座。另一方面,本站虽然曾经发表过几篇 AI 文章,但都是技术性的,缺乏思辨,故本文也是一个良好的载体,来总结笔者对深度学习的过去及未来的看法。
徐英瑾的观点:人工智能可不能太指望深度学习
《人工智能哲学十五讲》分为上、下两篇,上篇「主流人工智能批判」首先介绍了人工智能哲学的基本内容(第一讲),然后对逻辑学路线和深度学习路线进行了批判(第二、三讲)。作者认为,AGI 离我们还很远(第四讲),并讨论了苏联、日本、欧盟的几项失败计划(第五、六、七讲)。作者在第八讲提出「从大数据主义走向小数据主义」,第九讲则利用儒家学说为小数据主义作解释。此书下篇「如何实现通用人工智能」则是作者对 AGI 实现途径的思考,作者提出了几个基本观点:(1)AGI 需要有意向性,例如「我相信×××」;(2)AGI 需要具有意图,即「我想要×××」;(3)AGI 需要如同人类一样具有情绪;(4)AGI 需要能理解人类的伦理规范;(5)AGI 应当有按照正确方式去做事的禀性,或称「德性」。最后,作者对军用人工智能武器进行了想象。
前文已经提到,笔者之所以阅读此书,是想看看前人犯过什么推理错误,从而「见不贤而内自省也」。此书出版于 2021 年,可谓是 LLM 爆发的前夜:在 CV 领域,ViT 已经得到广泛使用;在 NLP 领域,业界开始了从 BERT 路线(预训练 + 微调)到 GPT 路线(预训练 + prompt)的转向。书中的一些结论,在今天看来是颇为滑稽的,但我们最重要的任务,不是批判这些结论本身,而是将自己放回到 2021 年的时间节点上重新思考,讨论如何在 2021 年作出正确预测。
《十五讲》对深度学习技术路线的批评,集中在第三讲「人工智能可不能太指望机器学习」。现在,我们来快速介绍一下书中的论证过程。
与社会各界对深度学习技术的高度期待不同,徐英瑾认为「深度学习并非 AI 研究的真正康庄大道」。下这个结论,是基于如下观察:深度学习机制的根底就是对人类专家的数据归类能力的肤浅模仿,之所以说肤浅,是由于:深度学习的运作完全依赖于人类专家提供的大量优质训练数据;与此同时,这种模仿却又并非建立在对人脑机制的深刻理解上,因此知其然不知其所以然。徐英瑾将上述观点视为深度学习路线的本质特征,并得出了深度学习技术可能对人类文明造成的几大潜在威胁:
- 鉴于深度学习就是透过大量数据来拟合 input 与 output 之间的映射关系,那么掌握数据调配权的人类训练员就可以投毒,使系统产生偏见。
- 深度学习的运作过程很难以解释,具有黑箱性,即使是系统的设计者,有时也说不清楚为何系统会在某些运行条件下给出这样的运算结果。于是,若此类 AI 系统被纳入以「说理」为基本交流方式的公共生活中,则会与社会习俗和法律系统产生碰撞。
- 深度学习的大量运用,会对特定领域的人类工作岗位产生威胁,而且会威胁到人类专家的稳定培养机制,使得深度学习未来的智慧汲取对象变得枯竭。
接下来,徐英瑾将深度学习机制与人类智慧进行了对比,认为前者不如后者。其主要观点如下:
- 深度学习的实质是「胡猜」,这样的系统并不知道自己得到的输入信息到底意味着什么,设计者不能与系统进行符号层面的交流。系统的工作方法就是先胡猜一个答案,如果蒙中了,系统就会记住结果,并继续学习。这个学习是低效的,但由于计算机的计算能力很强,故这种低效性得以被容忍,但其原理仍然是十分笨拙的。
- 深度学习在原理上参照了人类神经网络的结构,但略去了大量的生物学细节,在复杂程度上与真正的人脑不可同日而语。既然深度学习系统在复杂程度上不如人脑,则我们不能期望这样的系统能完全具备人类的智慧。
- 深度学习在原则上无法成为通用智能系统,而人类智慧肯定是通用智能系统。以 CV 为主要任务的深度学习系统,其设计肯定与 NLP 系统非常不同,因此,一旦一个深度学习系统完成了特定任务上的训练,它就不能同时胜任另一个领域的工作了。至于迁移学习技术,徐英瑾认为,人类拥有强大的类比推理能力,而深度学习系统决不可能是任何一种推理系统,因此其类比能力本质上就是受限的。
接下来,文章开始讨论深度学习机制对人类既有人文资源的剥削。徐英瑾认为,与传统机器使人类社会更加繁荣相反,深度学习技术的广泛运用会成为人类文明的威胁。徐英瑾如此解释其「人文资源」概念:人文资源包含一个经济体内部成员的价值观体系、文化知识、一般智力水平等,还包括了劳动力的培训机制和隐性文化背景。一个培训体系能稳定地培养出具备相应素质的劳动力,其中高级劳动力还会拥有挑战权威、勇于创新等品质。徐英瑾认为,深度学习产品不能成为人文价值的真实承载者,因为人文价值的承载者需要「理解」相关的价值规范,这需要非常复杂的心智活动,而深度学习系统在原则上就没有这样的心智能力。
徐英瑾认为,深度学习技术不可能真正取代相关领域内的人类专家,但同时,深度学习会威胁到人类劳动者的培养机制。关于为何深度学习技术不可能取代领域内的人类专家,作者举了一个例子:考虑自动语音识别(ASR)任务,人类速记员可以根据发言人的背景知识,来推测其某个发音代表哪个语义。例如,人类专家听出发言者只有小学文化水平之后,就不会期望他说出「高大上」的词汇,因此可以避免一些歧义。另外,徐英瑾认为,在发言者说出一些比喻时(例如用历史典故比喻当代商战),人类可以理解本体和喻体,而深度学习技术路线不可能拥有语义类比能力,因为这些比喻都具有强烈的个性色彩,而深度学习机制是对大多数人在大多数情况下的行为的「平均化」,无法捕捉个性因素。
关于深度学习为何会威胁到劳动者的培养体制,徐英瑾认为,深度学习技术可以被视为寄生在人文资源上的寄生虫,它会慢慢挥霍人文资源的红利,但本身不产生新的历史发展可能性。这种「只取不补」体现在四个方面:
- 以「平均值」的名义消灭偶然性,长远来看会削弱人类人文资源的丰富性。
- 深度学习的大规模应用,会固化技术分工,造成人的深度异化。
- 深度学习对人类分工机制的僵化作用,会削弱人类为新动议进行辩护时的规范性力量。作者认为,在人类智力主导的辩护活动中,基本原则是逻辑、统计学、常识等;而深度学习的广泛运用会形成新的规范性力量,例如使得决策者以「缺乏数据支持」否决动议,但深度学习是面向过去而非面向未来的,这会导致医生无法获得支持来展开新的手术方案,电影制作者无法获得支持来从事新方向的创作。长远来看,会导致人类文明的发展停滞。
- 深度学习的广泛应用,会从根底上消灭产生自己的土壤。作者举了这样一个例子:特斯拉汽车的装配工作已经机器人化,但这些机器人不理解汽车为何要如此装配,他们只是按照程序行事。而一旦汽车结构产生明显变化,机器人就需要重新编程;而与之相比,人类技工只要看看图纸,就能马上开始工作。因此,工业机器人只是人类技工的剥削者与复制者,他们并不真正具备这些技能。但另一方面,这些机器人会使得大量人类技工失业,于是机器学习所需的人类样本就会走向枯竭,最终使整个机制停摆。
以上就是徐英瑾教授在「人工智能可不能太指望机器学习」章节中的观点。这一章节中的错误数不胜数,但书中的某些观点亦有可取之处,本文接下来将展开批判和反思,以期激浊扬清。我们先从最简单的几个技术性错误谈起,然后讨论理念层面的问题。
事实:深度学习的训练绝非「胡猜」
徐英瑾将深度学习理解为「胡猜」,并以此作为「深度学习不如人工智能」的论据。相关言论如下:
……但这“胡猜”二字却恰恰切中了人工神经元网络运作的实质。概而言之,这样的AI系统其实并不知道自己得到的输入信息到底意味着什么——换言之,此系统的设计者并不能与系统进行符号层面上的交流,正如在前面的例子中师父无法与徒弟进行言语交流一样。毋宁说,系统所做的事情,就是在各种可能的输入与输出之间的映射关系中随便选一种进行“胡猜”,然后将结果抛给人类预先给定的“理想解”,看看自己瞎蒙的答案是不是恰好蒙中了。如果真蒙中了,系统则会通过保存诸神经元之间传播路径权重的方式“记住”这蒙中的结果,并在此基础上继续“学习”。而这种低效学习的“低效性”之所以在计算机那里能够得到容忍,则是缘于计算机相比于自然人而言的一个巨大优势:计算机可以在很短的物理时间内进行海量次数的“胡猜”,并由此遴选出一个比较正确的解,而人类在相同时间能够完成的猜测的数量则会是非常有限的。但一旦看清楚了里面的机理,我们就不难发现:人工神经元网络的工作原理其实是非常笨拙的。
有机器学习背景的读者可以马上发现上述段落中的谬误。训练神经网络一般采用类梯度下降法,此类方法并非如徐英瑾所说是「如果猜中了就记忆下来」,而是无论是否猜中,都衡量输出值与目标值之间的 loss,然后调整网络权重。神经网络训练的过程,并非如他所讲的那样「进行海量次数的胡猜并遴选出正确的解」;事实上,神经网络根本不遴选正确的解。或者说,梯度下降训练过程等价于降低 loss 的过程,除了降低 loss 以外没有任何其他目标。
可能有人会作出如下辩护:「徐教授并非纠缠这些技术细节问题,他的核心观点是,先预测、再反向传播的过程是笨拙的」。然而,即使是这个让了步的观点,也是有问题的。类梯度下降技术只是神经网络的训练方法中的一种,绝非神经网络的本质特征,因此也不可能是深度学习技术路线的本质缺陷。现在我们来详细解释这一论断。
回顾机器学习的核心目标:在拥有训练数据集的情况下,构造一个函数,以拟合数据分布。我们来讨论一个最简单的例子,考虑如何用函数拟合下面的点:
假如我们选择使用 3 次多项式函数来拟合,那么,所有合法的 3 次多项式 $f(x) = a_3 x^3 + a_2 x ^ 2 + a _ 1 x ^ 1 + a_0$,构成了 hypothesis set。现在,机器学习的任务就是找到最佳的参数 $(a_3, a_2, a_1, a_0)$,使得拟合结果最佳。如何定义这个「最佳」?我们可以指定 loss 值为均方误差,loss 越小则认为拟合结果越好。如何学到这四个参数呢?可以采用的训练方法有一大批:可以使用原始的梯度下降,可以使用 Adam,可以用 RMSProp,也可以直接利用矩阵运算给出精确最优解。那么,我们会说矩阵运算是上述这套方法的本质吗?显然不是。hypothesis set 的设计才是这套方法的本质。我们选择使用多项式来拟合而不是用其他函数拟合,这决定了我们模型的表达能力之边界;而训练方法只是尽可能让它接近其能力上限。
所以说,hypothesis set 决定了神经网络的潜力,而训练方法决定了其潜力可以发挥到何种程度。因此,hypothesis set 的设计(即网络设计)才是深度学习技术的本质。举个典型的例子:梯度消失问题是梯度下降法的缺陷,但残差网络的出现使得这个缺陷被绕过了,网络可以堆得非常深。于是,网络设计方法的革新,解决了训练方法的缺陷。从中我们可以看出,对特定训练方法的批评,无法攻击到深度学习技术路线的核心。
事实:深度学习绝非「多数人在多数情况下的表现之平均化」
将深度学习的表现误认为「多数人在多数情况下的表现之平均化」,是徐英瑾犯的第二个知识性错误。徐英瑾煞有介事地搞了一个三段式论证:
大前提:任何在两个领域之间建立类比联系的临时性修辞活动,都会具有鲜明的个性色彩;
小前提:深度学习机制只能对大多数人在大多数情况下所作出的言语行为进行“平均化”,并因此无法把捉任何作为“统计学异常数”出现的个性因素;
结论:深度学习机制无法把握任何在两个领域之间建立类比联系的临时性修辞活动。
这里的小前提是错误的,属于徐英瑾对深度学习技术的臆想。徐英瑾在后文进一步描述称:
但正如我们已经看到的,在深度学习机制之中,被机械系统加以“记忆”的仅仅是人类相关领域内行为的一般倾向,而被过滤掉的,却恰恰就是有别于平均值的种种异常数。譬如,美国某县的语言发音如果与全美其他地方差异过大,就会被深度学习的言语识别系统所忽略。不难想见,这种对于“异常数”的删除机制将从长远上造成人类文化市场的可交易内容的减少,并最终削弱人类人文资源的丰富性。
无可否认,一些极早期的机器学习技术,确实是某种意义上的样本平均。例如,支持向量机、最小二乘法拟合多项式、K-means、k-NN 等。这些技术容易欠拟合,导致忽略离群个案。然而,在深度学习时代,过拟合(体现为过于注重离群个案)往往比欠拟合更常发生,跟深度学习讲「平均化问题」,宛如对一个大学生说九九乘法表颇为重要。直观上看,模型越大,其表达能力就越强,也就越能涵盖各种边角案例,离平均化就越远。很大的模型甚至出现了「直接记忆一部分数据集」的现象,就是一条有力的证据。
对机器学习不了解的读者,可以陪笔者来玩这样一个思维游戏:你的朋友 A 君正在参与某项活动,桌子上盖着 20 张牌,A 君要猜每张牌的颜色(红/黑),猜中越多,奖品越丰厚。A 君对这些牌一无所知,但你通过技术手段,得知了这些牌的情况:
现在,你决定给 A 君传递一张小纸条,指导他猜这些颜色。然而,纸条的空间非常紧凑,写不下几个字。我们可以如何做呢?
- 写「全黑」,两个字,准确率 13/20。
- 写「质数红」,三个字,准确率 19/20。
- 写「质数红,17 除外」,七个字,准确率 20/20。
我们立刻发现,纸条越长,我们所能表达的信息就越多,能覆盖的情况也越多。三个字的「质数红」忽略了 17 这个离群个案,但是七个字的「质数红,17 除外」将 17 也纳入了考虑;套用徐英瑾的说法,这个方案「捕捉到了个性因素」。可以看到,增加模型的尺寸之后,模型就能考虑千奇百怪的个案,因此徐英瑾对深度学习「过于平均化」的批评是站不住脚的。
以上,我们讨论完了书中的两项技术性错误。这两项错误都是作者对机器学习缺乏了解导致的,在写书时完全可以避免。接下来,我们分析一些深层的问题。
观点:神经网络不是对人类神经网络的简单模仿
徐英瑾在大作中开篇便讲,深度学习的根底是对人类的肤浅模仿,但这种模仿不以深入理解人脑机制为前提,所以有大问题。其具体论证如下:
深度学习机制的根底,乃是对于人类专家某方面的数据归类能力的肤浅模仿——此类机制正是在这种模仿的基础上,才能在某类输入信息与某类目标信息之间建立起特定种类的映射关系。而之所以说此类技术对于人类能力的模仿是“肤浅”的,又恰恰是因为深度学习机制的运作完全是以大量人类专家提供大量优质的样板数据为逻辑前提的;与此同时,这种模仿却又不以深入理解人脑对于信息的内部加工过程为自身的理论前提,故天生就带有“知其然而不知其所以然”之弊。
……深度学习系统的设计虽然在原理上参照了人类神经元网络的结构,但略去了大量的生物学细节,而且在复杂程度上与真正的人脑也不可同日而语。需要注意的是,一些深度学习的倡导者主张人类某些神经元的微观结构实际所采用的信息处理程序非常类似于深度学习的算法。但即使这一发现是有意义的,也恰恰说明人类大脑的实际复杂程度远远超过了现有的深度学习系统(理由是:若你发现你的模拟对象的一个微观部分的复杂程度与你的模拟系统自身大致相当的话,那么按照“整体大于部分”的原理,你就应当推理出:你的模拟对象的整体复杂度远远超过了你所设计的模拟系统)。而我们由此不难立即推出:既然现有的深度学习系统在复杂程度上远远不如人脑,那么,我们也就不能期望这样的系统能够完全地具备人类的智慧。
我们不难总结出该文中的观点:神经网络是对人类神经元的模拟,而人类神经元有很多性质被模拟器忽略了,所以神经网络不如人脑复杂,所以神经网络无法具备人脑智慧。然而,这个链条是站不住脚的,主要问题有两个:(1)神经网络并非对人类神经元的简单模拟;(2)神经网络中的神经元固然比人类神经元简单,但这无法推出神经网络的复杂程度不如人脑,更无法推出神经网络无法具有人类级智慧。
先来说第一个问题。假如深度学习社区真的将神经网络作为人脑在电脑中的复现,那么我们就该观察到这样的场景:神经科学每研究出一些成果,深度学习社区就赶快将其运用到神经网络上,来刷新 SOTA 榜单——但这样的闹剧显然并未上演。事实上,机器神经网络与人类神经网络的关系,类似于滑翔机与鸟类的关系。不可否认,多层感知机从人类神经网络中汲取了灵感,但这就如同滑翔机从鸟类身上汲取灵感一样,是正确的废话。深度学习的研究范式早已从「模仿」变成了独自发展,模型不是越像人类神经元越好,而是越能刷 SOTA 榜越好;如果能补一个神经科学解释,那自然是锦上添花,但没有神经科学解释也是正常的。举个深度学习发展脱离神经科学发展的例子:残差网络在提出时并未参考神经网络,后来的研究才指出自然界也有类似结构(Qianli Liao et al.)。
现在来讨论第二个问题。固然,单个的神经元是很简单的,几十万个神经元也不显得复杂。然而,神经网络模型可以堆到非常大,宏观规模的复杂性可以弥补微观结构的简单性,所以断言「神经网络没有人脑复杂」是缺乏依据的。另一方面,人脑确实复杂,但人脑中所有的参数都被用上了吗?显然没有。很多参数在沉睡,很多参数在维持生命体征,留给思考用的参数数量要打折扣。无可否认,当前的模型规模还没有大到可以与人脑等量齐观(2020 年发表的 GPT-3 拥有 1750 亿个参数,按照 Hinton 的说法,人脑大约有 100 万亿个参数),但鉴于模型的规模可以进一步扩增,而人脑在可见的未来都不会进化,这个 571 倍的差距,似乎并不特别遥远,不足以作为否定深度神经网络复杂程度的论据。从另一个角度说,人类级别的智慧真的需要使用 100 万亿个参数才能实现吗?如果认同这个说法,那等同于认同人脑的结构设计是所有可行的结构设计中最优的那一类,以至于难以进一步蒸馏,这似乎也缺乏依据。
因此,笔者的观点是:深度学习的发展已经走上了与自然界的神经系统截然不同的方向,因此不宜将人脑研究的方法论和结论生搬硬套到深度学习中;近年的神经网络规模确实没有人脑那么大,但想要达到人类级别的智能,不一定需要人脑规模的模型。这有待未来的研究验证。
观点:深度学习可以学会推理
徐英瑾声称,任何深度学习模型都不可能是推理系统。理由是:
然而,任何一种基于深度学习机制的AI系统却不可能是任何一种推理系统,因为任何一个推理系统都应当能够体现出对于被推理内容的起码的中立性与抽象性(在某些理想情况下,比如在三段论推理的“芭芭拉式”中,推论的有效性,完全是与推理所牵涉的小项、中项与大项的经验语义无关的,而只与这些要素在大前提、小前提与结论中的排列位置有关。请参看上一讲的讨论)。但不幸的是,任何能够投入运用的深度学习系统,一旦经过特定领域内样本的训练,就会成为相关领域(或与之底层特征足够近似的领域)内的奴隶,而无法成为某种中立于各个特殊领域的一般推理机制。这一点之所以会成为深度学习的“宿命”(而不是某种通过特定的工程学技巧可以被克服的暂时性困难),则又是缘于深度学习的本质:它们能够做的,只不过是在经过特定的训练过程之后,将具有特定特征的输入归类为人类语义网中的一些既定标签,而不能在符号层面上直接表征人类的各种逻辑或概率推理规律。
这段话认为,深度学习根本学不会符号推理,因为「学了哪个领域,就会成为相关领域内的奴隶,无法成为中立于各个领域的推理机制」。这个论断富有煽动性,但稍微想想就知道不成立。既然学了哪个领域就会变成哪个领域的奴隶,那我们何不让神经网络去学习推理领域,让它成为推理专用模型?
笔者要强调,神经网络具有极强的拟合能力,很多任务对神经网络来说不是「能不能做」的问题,而是「能不能以低代价做」的问题。任何函数都可以被足够复杂的神经网络拟合(见通用近似定理),因此如果一个人说神经网络在「宿命」中就不能做×××任务,那他应该拿出极为强力的论据。笔者看不到有何阻止神经网络学习推理技术的巨大障碍。徐英瑾得出这个结论的过程过于武断了。
读者应该不会反对,神经网络在 2021 年已经拥有一些粗浅的推理能力。而笔者认为,粗浅的推理能力可以成为精妙的推理能力的基石。让我们回顾《几何原本》——我们一般认为它凝聚着惊人的智慧——这本书以五条公理为出发点,推出了一个又一个定理,前面的定理成了后面的定理的基石,于是搭起了通天的几何学大厦。固然,从五大公理直接推出第 100 条定理是困难的,但有了一些其他定理作为脚手架,第 100 条定理也就不那么高不可攀了。笔者要说的是,如果神经网络拥有了一些简单的推理能力,那它就有潜力一步步搭建起理性的大厦。22 年 1 月发表的 Chain-of-Thought 印证了这一观点:当 LLM 难以一次性推理出最终结果时,可以把目标分成一系列步骤,用粗浅的推理能力去解决每个小步骤,最后得到可靠的结果。
到了 2024 年的今天,GPT-4 的推理能力展现在我们面前,许多 AI 应用都将 GPT-4 作为推理后端。笔者相信已经没有人会再说「深度学习学不会推理」,他们顶多说说「深度学习展现出的推理能力不代表它内部对此有所觉解」。后文将进行关于黑盒性的讨论。
观点:深度学习可以成为「通才」
在前一小节中,我们已经稍微触碰了「神经网络能否成为通才」的问题。徐英瑾的观点是,神经网络在哪个任务上训练,就会被限死在附近。书中第三讲写道:
譬如,以图像识别为主要任务的深度学习系统,其在神经元网络构架与反向传播算法的设计的细节方面,肯定与以自然语言处理为主要任务的深度学习系统非常不同。换言之,一旦一个深度学习系统已经完成了以特定任务为指向的训练,它就不能同时胜任另外一个领域的工作了(这就好比说,一套被拼装为埃菲尔铁塔的模型的乐高玩具,是很难再被拆碎后重新拼装为山海关的模型了)。
作者在第四讲还不忘再次攻击一遍深度学习的专才问题,甚至声称「在概念上就不可能存在能够自动切换工作领域的深度学习系统」:
曾经因为打败李世石与柯洁而名震天下的谷歌公司的Alpha Go,其实就是一个专用的人工智能系统——除了用来下围棋之外,它甚至不能用来下中国象棋或者是日本将棋,遑论进行医疗诊断,或是为家政机器人提供软件支持。虽然驱动Alpha Go工作的“深度学习”技术本身,也可以在进行某些变通之后被沿用到其他人工智能的工作领域中去,但进行这种技术变通的毕竟是人类程序员,而不是程序本身。换言之,在概念上就不可能存在能够自动切换工作领域的深度学习系统。由于一切真正的AGI系统都应当具备在无监督条件下自行根据任务与环境的变化切换工作知识域的能力,所以笔者上述判断本身就意味着:深度学习系统无论如何发展,都不可能演变为AGI系统。
这套理论在 2022 年被 ChatGPT 打得粉碎,ChatGPT 展现出的 zero-shot 能力使得用户只需要修改 prompt,就能让模型变成翻译官、文法修正器、剧作家和程序员。但笔者要强调,就算在作者写书的 2021 年,我们也能从逻辑上宣告这种说法不成立。固然,神经网络只能精通它所学到的那种任务,所以扫地机器人和洗碗机器人都是专才而不是通才。但是,如果我们训练 AI 的任务不是「扫地」或「洗碗」,而是「做家务」呢?这是说得通的,我们既然能训练猫/狗分类模型和牛/羊分类模型,那我们也能训练一个模型同时给这四种动物分类。假如我们训练出了一个以「做家务」为导向的 AI,它涵盖了扫地、洗碗、洗衣、做饭等功能,那我们还能指责它是一个专才而非通才吗?
2021 年,已经出现了 BERT 和 GPT-3,它们的共同特点就是预训练。预训练出的模型就是通才,而不同之处在于,BERT 路线选择对预训练模型进行微调,来获得一个个专才;GPT-3 路线选择不修改网络权重,只通过 prompt 给模型指定任务。也就是说,GPT-3 路线的设计哲学就是「由单个通才负责各种任务」。考虑到 GPT-3 发表于 2020 年,合格的研究者一定能在 2021 年判断出深度学习是有可能成为通才的。事实上,早在 BERT 和 GPT-3 之前,就有很多研究者将 ResNet 的最后一层分类网络摘掉,将主干网络作为「通用的图像特征提取器」,冻结参数,在主干网络输出的特征向量上训练分类器,显然主干网络在此就被当作通才来用了。
笔者要强调一个观点:深度学习去学某个任务,不是只学了这一个任务,而是学了很多相关的子任务。例如猫/狗分类任务,它可以分为很多个子任务,例如「边缘提取」「纹理提取」等,而这些子任务可能分为一个个更小的任务……笔者并非是说任务之间存在明确的分界线,也不是说大任务一定是严格基于小任务结果的,也不是说存在「原子任务」。这个模型只是一种粗浅的描述。在这个意义下,每个神经网络都已经算是某种程度上的「通才」,只是有的模型能力广,有的模型能力窄而已。
笔者猜测,训练一个通才来达到一些目标,比起对每个目标各自训练专才,不仅更有潜力,甚至可能还更有效率。这是因为,有很多小任务是所有专才都需要学习的,与其各自学习,会浪费很多训练时间,不如统一学习;另一方面,某领域的数据可能让模型学到某种能力(例如,根据研究,阅读适量的代码数据可以提升 LLM 的推理能力),这种能力完全可能运用到其他领域上。
讨论:深度学习能否具备资源节俭性?
徐英瑾在书中第二讲提了一个很有趣的问题:我们问「羽毛和铅球哪个下坠更快」,模型该如何回答呢?
在这种情况下,一台处在人类正常生活环境中的机器人,若按照经典物理学的要求去计算事物的运动状态(同时又试图使其计算结果符合日常直觉)的话,它就将不得不计算空气的浮力对于下坠事物的加速度的影响,而这样的复杂计算显然会降低其运作效率。与之相比较,一台仅仅根据“重物下坠快”这样的常识物理学原则去运作的认知机器,其给出符合常识的输出行为的速度显然也会更快。
这是一个很值得关注的观点。一个更强的 AI,掌握的知识比普通 AI 更全面,于是它可能将各种条件都纳入考虑。但是,客户所需的回答,可能仅仅根据常识就可以得出,在此基础上浪费算力似乎是不值当的。
笔者的个人观点是,比较强的模型可能确实会陷入这种「强者的烦恼」,但更强的模型也许能评估问题场景,找到更经济的推理手段。具体地说,对于复杂场景,就深入思考;对于简单的场景,则调用 shortcut 来轻松解决。举一个例子:如果一个模型连四则运算都不会,我们问它「114514 是不是 3 的倍数」,它会说不知道,或者乱猜一个结果。一个稍强一些的模型会一点数学计算,它便列式计算除法(可能需要 CoT 的帮助),这个推理代价就比前者更大。然而,一个很强的模型可能知道「十进制下想判断一个数是否为 3 的倍数,只需要看各个数码之和是否为 3 的倍数」,于是推理代价重新降低了。我们在 GPT-4o 上面做一下这个实验,可以看到,GPT-4o 选择了最经济的推理方法:
然而,徐英瑾提出的问题并未得到完全解决。众所周知,很多模型的训练是依靠 LLM 代替人工来标注「两个回答中哪个更好」,但是,研究表明,LLM 特别偏向于认为更长的答案更好。假如「由 LLM 的喜好来训练 LLM」继续发展若干时间,有可能产生「基准模型偏好更长的回答 - 新模型倾向于生成更长的回答 - 新模型成为新的基准模型」这样的正反馈循环,导致模型之间关于输出长度的内卷。然而,更长的输出意味着更高的推理成本,这不是一件好事,甚至可能导致 LLM 在拥有节俭地回答问题的能力的情况下,仍然故意以复杂的方式思考。即便是今天,我们也经常嫌 LLM 话太多了,可以预见,「节俭地推理」将成为一项不可忽视的课题。好在这并不是本质性的问题,可以通过 prompt 进行一定程度的调控。解决这个问题的优先级比「尽早实现 AGI」低得多,在那之前,我们就忍受一下话痨 LLM 吧。
讨论:深度学习的黑盒问题是否被高估了?
深度学习的可解释性问题一直是外界对其批判的焦点。神经网络确实不像 SVM 那样能给出泾渭分明的分界面,深度学习的参数规模使得人类难以分析其决策方法。长期以来,人们对深度学习形成了一种看法:「它能把分类/回归任务做得很好,但它无法向我解释它为何作出这个决定」。
有趣的是,一些用于对抗过拟合的手段,能帮助神经网络变得更可解释。发表于 2014 年的 dropout 论文有一项发现:在传统的神经网络中,一个组件可以轻易地耦合其他组件,导致整个系统非常复杂。而在添加 dropout 层之后,组件无法过分依赖于很多其他组件,在训练结束后,系统便显得更加内聚了。
然而,尽管有这样或那样的工作来缓解可解释性问题,神经网络仍然过于复杂了。即使是训练在 MNIST 上的简单分类模型,我们想要完全描述它的知识和决策方法,也是不可行的。不过,LLM 的出现使这个议题产生了转机——假如神经网络自己就能解释(而不是由研究者来解释)论据,那我们为何不相信它?
举个例子。现在我们问 LLM 一个选择题,它可以选出正确的结果:
现在要它解释原因:
看起来 LLM 的说法很有道理。换个方向来想。我们人类的思维,当真就不是黑盒吗?我们想要论证观点 A,我们会说出论据 B、C、D,但我们的大脑中是如何浮现出 B、C、D 的?这样无限还原下去,总会抵达一层,是没法讲清楚的。现在我们问 LLM 为什么它支持观点 A,它不也能说得头头是道吗?当然,有人会讲,也许 LLM 说的是 B、C、D 但想的是 E、F、G,但是,人类不也能进行类似的活动吗?我们问一个人他为何要做某事,他很可能讲一个崇高的理由(而非事实上的阴暗理由),假如我们能容忍人类给出的或真或假的 reasoning,那有何理由不容忍 LLM 给出的或真或假的 reasoning 呢?
因此,笔者认为 LLM 能很大程度上缓解用户的「可解释性焦虑」。这不是因为 LLM 的结构本身比以往的神经网络更可解释了(事实上恰恰相反),而是因为,既然用户只想要一个解释,那么无论由研究者来解释,还是由 LLM 自己来解释,都算是解释,只要能说服用户,笔者看不出有何不妥的地方。固然,这样的好事目前主要发生在 NLP 领域,CV 模型暂且还难以自己说出 reasoning,但随着多模态研究的发展,CV 领域的「自我解释」将会马上到来,甚至一定程度上可以说已经到来(需要参考 GPT-4o 未来几个月的表现)。
讨论:深度学习对人文资源的剥削是否被高估了?
徐英瑾的文章强调了深度学习对人文资源(尤其是人才培养机制)的剥削,这是一个很值得关注的视角。在 AI 绘画进入大众视野后,网络上「AI 拿着人类画师的训练集,却砸掉人类画师的饭碗」、「AI 玩家拉低市场价格会导致人类画师培养机制崩溃」这样的言论便越来越多了。笔者认为,深度学习剥削了人文资源是无可争议的事实,但其负面影响远远未到「威胁到人类文明自身的稳定发展」这个程度。
徐英瑾举的例子是 ASR 任务,认为深度学习的过度使用可能使速记员的培养体系遭到破坏。那么笔者举另外一个例子:接线员。在上个世纪的很长一段时间内,人们打电话之后,先对接线员说出想要接通的地址,接线员则连接上电路,才可以开始通讯。后来的程控交换机将这个职业送进了历史。我们完全可以说,接线员群体、接线知识和接线员培养体系构成了「人文资源」,高级接线员拥有很强的专业技能,他们熟记一大批电话号码、地址和人名,并且敏捷地完成接线工作。那么,程控交换机不仅抢了他们的工作,还砸烂了他们的培养体系,可以说彻底摧毁了「接线技术体系」这一人文资源,但人类文明的发展受此阻碍了吗?
可能有人会说,接线是低级工作,不能与高级工作被 AI 冲击相提并论。那笔者马上就可以举一个高级工作的例子:围棋。在这项游戏中,围棋选手、围棋文化、围棋教学体系显然构成人文资源,而且在传统观点来看,是一种很高雅的人文资源,对于高等级围棋选手,我们不仅说他智力超群,往往还津津乐道于他的风范(韩国棋院颁发给 AlphaGo 的名誉九段证书中都有「棋道研磨,人格陶冶」等套语,令人捧腹)。那么,现在深度学习成为了围棋领域之神,再也没有人能战胜 AI,请让我们来观察围棋的发展:在 AI 辅助训练下,顶尖棋手的水平突飞猛进,业余爱好者也可以利用 KataGo 分析棋谱,而无需乞灵于玄而又玄的经验理论。AI 对围棋人文资源绝非徐英瑾所担忧的「只取不补」,事实上,AlphaZero 时代的模型,训练过程没有用到人类棋谱,称得上是「不取只补」。深度学习的广泛运用非但没有摧毁围棋这一人文资源,反而还提升了玩家们的竞技水平。那又何谈阻碍人类文明发展呢?
现在我们回头再考虑 ASR 技术。可以发现,速记员这个职业,恐怕不比接线员这个职业高级多少,假如这个职业可以被 AI 完全替代,那摧毁「速记员的培养体系」又有何不可呢?笔者毫不怀疑 AI 会在 ASR 准确度上超过人类,笔者认为所谓高等的同声传译行业,也会在不远的将来被 AI 超越。
那么,我们该如何回答徐英瑾的「人类劳动力被驱逐出去之后,就没有新的人类数据来训练 AI,于是 AI 无法继续向前发展」这项担忧呢?这项担忧看似合理,但我们来进行这样的推演:假设使用人类的数据,能训练出水平超过人类的模型 A,那么,使用模型 A 产出的数据,岂不是能训练出水平超过模型 A 的模型 B?
可能有读者会说,模型产出的分布是趋同的,上述迭代最终会收敛,但人类能依据自己的知识和性格,给出一些绝妙的新结果,例如,一个翻译家可能犯了不少低级错误,但他对某个句子的翻译真是惊为天人;但由于整体平均准确率不如 AI,他便被赶了出去,无法再为翻译任务提供新数据。这是一个很强力的批评,但笔者认为,深度学习技术路线可以解决这个问题。这有两方面原因:(1)上述批评的靶标是一个不合理的翻译者能力评判标准,即「只看平均准确率」,但我们完全可以采取更好的 loss 值设计,来使系统更注重于产出绝妙翻译;(2)通常来讲,一位优秀的翻译家,不太可能同时是网络安全专家,但神经网络完全可以拥有跨领域的广博知识,因此可以达到新的、人类译者由于知识所限而无法达到的空间。如果说译者的个性和知识能引入「新东西」,那么 AI 也能引入「新东西」,尽管各自的「新东西」侧重面不同,但都是能使翻译水平进步的。翻译领域的创新不一定只能由人类实现,机器也有潜力实现创新!
预测:机器学习将具备自我进化的能力
假如读者能接受「AI 可以在翻译领域创新」,那么应该也不会否认 AI 有潜力在所有领域创新。让我们来考虑一个例子:假如一个家务机器人,它要煎蛋、加热预制菜、洗衣服、扫地。低级的机器人可能就会串行执行这些任务,但如果一个机器人看过许多语料,其中包含一些规划类的数学资料,它可能就学以致用,算出一个较好的安排,来并发执行这些任务,例如,打开微波炉之后,把 60s 的等待时间利用起来,先把厨房的地扫一扫。这显然是 AI 在家务领域的创新,而这种创新是不以「优质的家务训练资料」为前提的。
我们决不能否认这是一种创新。事实上,近几年的 AI 论文,就有大量的「把其他领域的×××方法移植到×××任务上」这类创新,这些工作无疑扩展了人类知识的边界,因此是有效的。笔者认为,人类的许多知识可以如同五大公理生成《几何原本》那样生成出来,用这个知识加上那个知识,推理一番,获得新的知识。当然,想要获得科学知识,也许还需要做实验。假如给 AI 以用于推理的算力,让它能通过一些方法与世界交互,那它当然是有潜力获得人类还未获得的知识的。因此,笔者预测,人类将不会是 AI 永远的老师,AI 在学到一定程度之后,将有能力比人类更快发现新知识。届时,AI 将进行自我进化。
预测:未来的深度学习将更加深度利用人文资源
有一项对神经网络的常见批判:「人可不是看了十万张猫/狗图片之后才学会分类的」,现在我们来回答这个问题。本文在「深度学习能否成为通才」一节中提到过,「猫/狗分类」绝非原子任务,训练一个猫/狗分类网络,不仅是训练猫/狗分类能力,还训练了边缘提取、纹理提取等能力。而对于人类来说,人类在其他任务的训练中早早就掌握了这些基础能力,因此面对猫/狗分类任务,只需要稍微看几个样本,就能掌握。神经网络所需的那十万张图片,很大程度上是为了弥补基础能力的匮乏;如果神经网络已经掌握了一些基础能力,那它想要在此基础上学会猫/狗分类,也将轻而易举。典型的证据就是:在 ResNet 预训练模型的基础上微调训练哆啦A梦/大雄分类任务,比从零训练一个哆啦A梦/大雄分类器,想要达到同等的准确率,所需的样本数量是大为减少的。一个更现代的论据是:LLM 在掌握了大量常识和基础能力的情况下,表现出了良好的 few-shot 甚至 zero-shot 能力。
那么,我们自然能得到一个观点:模型能力越强,它学东西越快,相同规模的数据对它的指导价值也就更大。一百张图片,对于从正态分布参数刚刚起步训练的模型来说,没有多大的价值,但强力的模型能从这一百张图中,学到大量知识。这似乎提醒我们,目前的模型对人文资源的利用还不够有效,强大的模型将能从已有的人文资源中,榨取比现在更多的价值。
启发:应该关注量与量的区别
在本文的批判范围中,出现了很多处将「量与量的区别」误认为「质与质的区别」的情况。例如,认为大模型规模与人脑规模有本质差异、认为专才与通才之间有本质差异、认为联结主义路线与符号推理之间存在不可逾越的鸿沟。这给我们一项启发:深度学习中,如果有一件事暂且做不到,我们不宜急于说「本质上就做不到」,而应当关注「离做到还有多远」。
进一步地,我们可以总结一条经验规律:在深度学习领域,假如某项困难存在 workaround,那我们极有可能在未来正面解决它。现在给出这条经验规律的使用例:我们想做语音问答机器人,但 LLM 是基于文字而非语音的。传统方案是进行 ASR 语音转文字,再由 LLM 从输入文字生成输出文字,再用 TTS 技术将答案文字转成语音。这是一个 workaround,部分地解决了问题,所以按照上述经验规律,我们可以预测这个任务将被正面解决。事实上,现在 GPT-4o 所使用的多模态端到端技术显然正面地解决了这个问题。
启发:应该抛弃对人类智慧的盲目自信
当一个人说「AI 永远学不会下围棋」、「AI 不可能画出人类画师特有的灵魂」、「AI 学不会深层次推理」、「AI 永远无法理解人类感情」时,我们应当意识到,他讲出这些话,大部分是出于对人类荣光的骄傲,而非出于理智。如果问他要论据,他除了直觉以外,大概率什么也拿不出来。虽然笔者也相信人类荣光永存,但 AI 的发展,毕竟不会考虑人类的慷慨陈词。
人会从直觉上认为人类智慧是某些问题的唯一解决方案。然而,假如我们想要对 AI 的未来发展有更清晰的预判,而不是满足于精神胜利的快感,那就必须抛弃对人类智慧路线的盲目自信,承认世间存在与人脑运作模式不同的智能。既然人可以想象外星生物存在智慧,那为何不相信人类可以亲手造出异构的智能体呢?我们暂且不必担心成为硅基生命的 bootloader;等到超级 AI 实现之后,人类的哲学必将产生剧变,到那时,人类何去何从的问题,将会有崭新的讨论。笔者期待着那一天。