《智能的理论》全书转至目录

不同AGI的研究路线对比简化版:《AGI(具身智能)路线对比》,欢迎各位参与讨论、批评或建议。

目前,行为取向的主要技术路线是基于深度学习的大模型。深度学习大语言模型的缺点在于,语言是高维语义的低维编码,仅对低维信息加工无法还原回高维的语义信息。而深度学习具身模型的缺点在于,首先,深度学习所习得的特征与人类的语义结构存在根本性不同,它们之间能否做到功能上的对等存疑;其次,关于海量多模态数据的收集、内部感知觉(情感和需求)的传感器和持续学习的难题无法从根本上解决。因此,深度学习模型更适合做一种工作和生活上的辅佐工具,而不是实现AGI的技术路线。

一.深度学习

行为取向的技术路线主要是基于深度学习大模型。因此,想要知道行为取向是否能实现AGI?首先必须掌握深度学习的基本思想,分析其优缺点。深度学习与传统统计学习是一脉相承的,它们之间有很多共同的特点,因此,理解深度学习最好从传统的统计学习开始(须知,深度学习亦属于统计学习范畴)。

1.传统的统计学习

(1)基本思想

人工智能的本质就是利用模型对目标进行分类,比如人脸识别系统对人脸分类(分给哪个人)、自动驾驶就是根据当前路况的输入将其分类到下一步的动作中(刹车、减速、左转等)、聊天机器人就是将输入的问题分类到被回答的输出句子。

根据传统统计学习,要构造这么一个模型,需要一些训练数据,每个训练数据需要根据需求人工“分解”为一些特征,得到特征空间。而每个训练样本都根据其特征处于这个特征空间的某个位置。传统统计学习算法根据不同类别的样本在特征空间中的位置分布,在不同类别之间画出分界线(面)或称为分类线(面),每个类别根据分类线(面)划分的不同区域得到区分(一个类比一个特征空间的区间)。当一个目标样本需要被分类时(人脸、动作、问题),也即测试样本,根据其所处的区域,给予其对应类别。以下面例子作为说明。

例1

任务:通过一个学生的“身高”和“体重”,判定萧学生的“性别(男性=1,女性=0)”。我们会怎么做呢?

根据回归分析的方法:首先需要收集历史数据。以下是所收集的6名学生的历史数据: (165, 93, 0)、(163, 100, 0)、 (158, 88, 0)、(175, 143, 1)、(170, 107, 1)、(181, 131, 1),这些数据称为训练数据,第一位数为身高,第二位为体重,第三位为性别,其中男性为1,女性为0。这5名学生的考试情况可以表示为图1(a),其中横坐标为身高,纵坐标为体重特征,蓝色表示“男性”特征,红色表示“女性”,这个二维的坐标系即特征空间(图中标注为性别分布图)。从图可知,男性和女性的点分布在两个不同区域。根据这个规律,我们可以画一条线,这条线将“性别分布图”分成两个区域,男性同学在同一个区域A,女性同学在同一个区域B,如图1(b)。当萧同学在区域A时,那么则推断萧同学为男性,如果萧同学在区域B时,则推断萧同学为女性。

图1(a)

图1(b)

那么,这条线该如何画呢?假设这条线为a*x1+b*x2+c=0,其中x1代表身高,x2代表体重,处于这条线上方(a*x1+b*x2+c>0)代表为男性,下方(a*x1+b*x2+c<0)为女性。那么这个“画线”问题就转变为求a和b。

“比较大小”(“大于”和“小于”)是一个定性问题,不适合于计算,因此需要将其转变为一个定量问题。为这里使用一个跃阶函数u()将该定性问题转变为可以用于计算的定量问题,令p=u(a*x1+b*x2+c),当a*x1+b*x2+c>0时,p=1;当a*x1+b*x2+c<0时,p=0。当然,除了跃阶函数,也可以使用其他函数,如sigmoid函数(更常用)。

然后构建一个损失函数:

添加图片注释,不超过 140 字(可选)

其中,i表示第i个同学,“li=yi*pi+(1-yi)*(1-pi)”,“li”的意义在于它构造了每个同学分类的损失值,当样本类别和模型分类一致时(yi=pi),i样本的损失值“li”为0;而当样本类别和模型分类不一致时(yi和pi,其中一个为0,另外一个为1),li为1。例如,如果同学i的性别是男性,即yi=1,如果模型将其错误分类为女性,即pi=0,将yi和pi代入,得到损失值li=(1*1+0*0)=1;如果模型将其正确分类为男性,即pi=0,将yi和pi代入,得到损失值li=(1*1+0*0)=0。当同学i的性别为女性时同理。

一个好的分类线条“a*x1+b*x2+c=0”应该是使所有同学都分类正确的,即损失函数L最好为0。通过梯度下降法,可以求得使L最小时a、b和c的值,从而获得最好的分类线。在得到最好的分类线后,将萧同学的身高体重代入到p=u(a*x1+b*x2+c)中,当p=1时萧同学为男性,当p=0时萧同学为女性。之所以所准备的六位同学的数据被称为训练数据,是因为这些数据是用于“训练模型”以获取最好的模型参数(a、b和c)。相对应的,萧同学的数据称为测试数据。

注:这里不对梯度下降法展开说明,因为无助于我需要说明的思想,此处你只需知道通过梯度下降法,可以使L逼近最小值,从而获得分类线的参数。

这个模型可以表示为下图,这个模型由两个输入单元(x1和x2),一个计算单元(3个参数,a、b和c)和一个输出单元(y)构成。

图2

(2)模型复杂度与其性能

但现实情况总是复杂的,总有一些训练数据落在分类线正确划分的区域之外,这种情况业界称为欠拟合。比如,总有一些女生身高较高,体重也较重。这时,你会发现使用直线分类线无法彻底地将训练样本正确地分成两个不同的区间(试试图3(a))。在遇到这种问题时,可以通过分段函数解决,如图3(b)。在这个例子中,可以构造一个三段函数的分类线:

添加图片注释,不超过 140 字(可选)

图3(a)

图3(b)

该函数的模型图4如下,其中左边第二层的虚线表示参数为0,另外,当参数为0时,单元与单元之间的连线也可以被隐藏起来,如图中第二层和第三层之间没有连线的节点。

图4

在真实世界中,总有一些女性比男性高,也总有一些女性比男性重,不可能“一条直线”就能很好地将男女划分开来。通过增加模型的复杂程度,使分类线变得更复杂的同时,大致保留了“男性总体比女性高,且总体比女性重”的特点,因此使该模型有更强的分类能力,以应对真实世界的复杂情况。

(3)特征多样性与模型性能

虽然增加模型复杂度可以增强模型的复杂能力,但永远要记住这么一点,现实情况的复杂程度往往超过很多人的想象(包括从事这类工作的AI工程师)。比如,当又增加两个训练数据的时候(如下图5(a)),此时又该如何应对呢?当然可以增加模型复杂度,画一条更复杂的分类线(如图(b)),但是为了拟合训练数据而增加模型复杂度,有时候又会破坏掉分类的一些特点和原则,如“男性总体比女性高,且总体比女性重”,从而使模型的分类能力变差,如图(c)中,新增加的浅蓝色样本为男性测试数据,事实上他们的身高体重更符合男性的特征,但是被错误的分类到女性;同理,新增加的粉红色样本为女性测试数据,她们的身高体重更符合女性的特征,但是被错误的分类到男性。所以一味增加模型复杂度不一定是好事。这种情况业界称为过拟合。

图5(a)

图5(b)

图5(c)

图5(d)

处理欠拟合的方式有两种,一种是不作特殊处理,设置合适复杂度的模型,使分类线不去拟合一些训练数据即可。如图(d),虽然有些训练数据没有被拟合成功,但是4个测试数据中(浅蓝色和粉红色),有3个成功分类。该模型(图(d))既比仅用一条直线的分类线好,也比多条线段的分类线好,即不欠拟合,也不过拟合,是比较合适的模型。

另外一种方法是,增加特征。前面的例子只使用了身高和体重两种特征,如果在二维分类空间中(上例使用的就是二维平面)无法很好处理,那么就拓展到三维,例如增加一个“头发长度”特征(女性的头发总体上说比男性的长不少)。在中小学校园中,男生的头发一般不能超过1分米,而只有极少数的女生头发短于1分米,仅从这一点就能对性别作出很好的判定,能正确处理极大部分情况。此外,新增了一个特征,借助一个极为简洁的分类面,即可对不同类别的样本作出很好的分类。如一个平面:y=a*x1+b*x2+c*x3+c,其中x3表示头发长度,如图6。

图6

(4)数据质量与模型性能

数据的数量和质量对模型影响是巨大的。对于一个数量很少和质量很差的例子,如图7(a),输入的训练数据是一个很矮很廋的男性和一个很高较胖的女性。由于梯度下降法的本质是通过拟合训练数据,以得到训练后的模型(求得模型参数)。它可不会像人一样分析“男性总体比女性高,且总体比女性重”。因此,训练数据是怎么样,训练后的模型就是拟合数据后的样子,不会“任何变通”。因此,经过这两个数据训练的模型,训练后得到的效果是很差的。如图7(b),输入正常身高体重的男女的性别都被错分了。

图7(a)

图7(b)

一般来说,当增加训练数据时,习得的模型更加符合现实。这是因为,(a)根据大数定律,当数据量越多时,数据的分布越接近真实世界的分布;(b)模型是为了拟合数据的,当数据量很大且接近世界的现实情况时,模型学习到的特征也是符合“世界”的。另外,增加训练数据数据量的另外一个好处是,能抵抗模型过拟合的风险。因为,模型再大也是拟合世界的。对比图1(b)和图3(b),当增加数据时,得到的模型确实更加复合现实。

(5)小结

现在,总结一下传统统计学习的特点:

(a)它的作用是分类。模型根据训练样本在特征空间中的位置分布画出不同区域,每个类别被分类面分开。根据测试样本所在的类别的区域,给予其对应类别;

(b)通过学习算法(梯度下降法),模型能自动学习到最优或者较优的模型参数;

(c)特征是手工设置的,如性别分类中,设定身体和体重为特征;

(d)模型复杂度要适度;

(e)一般来说,输入的特征越多(需要人为分析过是好的特征,如头发长度;显然,增加是否“有眼睛”这种特征对模型无益),模型性能越好;

(f)数据量越多质量越好,越有利于模型学习到真实世界或现实情况的规律。使模型越符合现实的分类要求;

(g)在现实情况中,特征再多,模型复杂度再适合,数据再多,总会有些情况不能被学习。如图5(d),即使该模型是比较合适的模型,分类面也有无法拟合训练数据,分类面也有不能正确分类测试数据。

2.深度学习

在传统的统计学习中,特征都是手工提取的。但是一个问题是,现实情况是复杂的,总会有些情况不能被考虑到,或者提取的特征顾此失彼。比如,即便在一个中小学能够以身高、体重和发长全部正确分类男女,但是另外一间学校可能就有头发短于1分米的女生。这种情况到了大学和社会更多,头发长于1分米的男性确实不在少数,甚至留更长的头发。当你再增加一些新特征时,又会发现这样那样的问题,这是因为现实情况总是复杂的,在这种情况下人总会有纰漏。

由于总有特征是人考虑不到的,那么自动提取特征如何?深度学习与统计学习的根本区别就是自动提取特征和手动提取特征的区别。如图,图8(a)表示传统统计学习的模型,x1、x2、x3是手工提取的特征,模型内部是参数和计算单元,其中的一些参数也是手工设置的(如图4中的1、-1、t1等),而另外一些参数是模型需要学习的(如图4中的a1、b1、c2、b3等);图(b)表示深度学习模型,它无需人工提取特征,直接输入原始数据X(比如在人脸识别中,如果按照传统统计学习的做法,需要提取“眼距”特征、“肤色”特征等,但是深度学习直接输入人脸),模型能自动习得所需的特征。其中,自动提取的特征就存在于模型所在的参数之中。如果理解不了这点可以看图9(这是一个不严谨的例子,仅用于说明思想),传统的统计学习模型可以看成是两个模型构成的,第一个模型是特征提取模型——对原始数据X提取特征,由于特征是人工确定的(如身高、体重等),因此模型1的参数是固定的,模型2是部分可变的。为了与此对比,深度学习分为两部分,模型1和模型2。如果说,传统学习中的模型1是提取特征的,那么深度学习的模型1是提取特征的就不难理解了,甚至连其模型2也是提取特征的。

图8(a)

图8(b)

图9(a)

图9(b)

那自动提取特征优势在哪里呢?第一,刚刚已经说了,现实是复杂的,人总会有些特征不能考虑到,或者提取的特征顾此失彼;第二,模型是通过学习算法(梯度下降法)进行学习的,只需输入数据,学习算法能自动找到其最优的模型参数,也即从里面挖掘到最优的参数或挖掘到人考虑不到的特征。这也就解释了自动提取特征的优势;第三,深度学习模型的参数量一般可以非常巨大(如百万级别、千万级别、上亿的级别...),因此能学习到非常多不同的特征,一般来说特征越多模型效果越好。考虑一下人脸识别需要怎么做?中国有十四亿人,对于传统统计学习,要区分14亿人就要手工设置无数个特征,这基本上是不可能的。但是目前基于深度学习的模型却做得很好。有人说,深度学习能提取抽象特征是深度学习成功的原因,事实上抽象特征正是自动提取特征的结果,自动提取才是那个“因”。

现在,总结一下深度学习的特点,深度学习与传统统计学习一脉相承,除了自动提取特征之外,其他特征与传统统计学习一致:

(a)它的作用是分类;

(b)它的特征是自动提取的;

(c)模型能通过学习算法(梯度下降法)自动学习到最优或者较优的模型参数,这些参数也即特征;

(d)模型复杂度要适度,特征数量要合适;

(e)数据量越多质量越好,模型越符合现实的分类要求;

(f)世界是复杂的,特征再多,模型复杂度再适合,数据再好,总会有些情况不能被学习。

3.现实的复杂性

“现实情况总是复杂的,总会有些情况不能被考虑到学习到”在本文中被多次提及到,这点非常重要,因为它是所有统计学习模型(包括深度学习)的一个本质缺点。由于是本质的,所以它基本无法被攻克的。基本上,这是所有从事这一行业的人都会遇到的麻烦,在解决了一个问题后,又会有新的问题,或者,解决了一些问题后又不可避免的引入其他一些问题,拆了东墙补西墙。

它体现在,无论数据量再多,模型再复杂,也有些特殊情况,或者说总有些样本在它本“不应该”在的区域。传统统计学习解决不了的男女性别判定问题,用深度学习也不一定能完美的解决。如图10中,在“男区”中的女性和在“女区”中的男性。在生活上,也有长得比男性还帅的女性,或长得比女性还美的男性。这些问题用基于深度学习的图像识别技术也无法解决。

图10

为什么强如深度学习也无法解决“现实复杂性”的问题,原因在于我们的世界是多维的,我们在推断时能灵活运用不同维度的信息或同一维度的不同特征,当我们看到一个长得很帅并且打扮也很帅气的女生的时候,可能我们很难从其长相中判定其性别,但我们能通过其声音、媒体信息、自己对她的了解,判定其性别。而当前,大部分深度学习技术往往局限于自身维度内“缝缝补补”,例如,图像识别技术仅限于在图像维度中解决问题,文本处理技术也仅限于在语言维度中寻求答案,因此难以跳出这一困境。

我之所以选择走上通用人工智能(AGI)这条道路,是因为在我参与的多项项目和工作中,发现在现有的模型上进行一些修补和调整,并不能真正地解决我们面临的问题。这些模型虽然在特定任务上表现出色,但仍无法彻底直面更加复杂和多变的现实世界。要想真正解决这些问题,就必须跳出这些模型的根本局限,从根本上重新思考和设计人工智能系统。

二.大语言模型

1.理论基础

(1)语言学基础

大语言模型的语言学基础是:“有相似的上下文的单词有相似的特征”,它来自于索绪尔的符号学理论(19-2:符号学)。该理论认为,符号的价值就是符号在系统中与其他符号的关系。例如,在象棋里,只要我们能够将一个棋子与其他棋子区分开来,它们的具体物理形状如何,是用什么物质材料做成的都不重要。假如“帅”这颗棋子不小心被丢失了,我们可以用任何尺寸、任何材料的物体来替代它,只要新起用的棋子不与其他棋子混淆起来就行。同样道理,语言成分本身最重要的是它们与其他成分之间的关系,因为任何一个语言符号都是以其他不重合的所有符号及整个系统的存在为前提的。

符号学理论认为表征概念的内容是一种离身(非通道的)的抽象符号,符号的价值存在于符号与符号之间,这是第一代认知的符号观(8-3:第一代认知:认知计算主义)。实际上,目前被广泛认同的是第二代认知的符号观,概念是一种多通道的具身表征,与知觉体验、运动体验、情感体验等具身内容有关,正是这些具身信息参与了概念的意义表征。例如,“狗”这一符号的概念,视觉通道上狗的体型与颜色、听觉上狗的叫声、嗅觉上狗的味道以及情感上狗的忠诚等具身体验,构成了“狗”的意义表征(19-21:具身概念;8-4:第二代认知:具身认知)。

(2)哲学基础

大语言模型是第一代认知在人工智能上的实践应用,其理论植根于笛卡尔的“身心二元论”,这一哲学思想将人分割为“心智”与“身体”两个相互独立的实体,心智被视为非物质、纯粹理性的存在,负责抽象思考、逻辑推理与信息处理;而身体仅是承载心智的物理容器,其感知、动作等生理过程与认知活动无关。(8-3:第一代认知:认知计算主义)

然而,越来越多的证据表明,认知是具身的。这是因为认知存在于大脑之中,大脑存在于身体之中,身体存在于环境之中,三者交互去感知事物、形成概念、解决问题,因此认知与身体和环境是不可分割的,这是一种心身一元论。(8-4:第二代认知:具身认知)

2.基本原理

大语言模型大致通过两次“深度学习”完成的,第一次学习语句(语句特征),这次学习也被称为预训练,第二次学习对话。

(1)学习语句(预训练)

预训练首先使模型学会语句中的语序特征、词之间的关联特征、词的标签特征等等,训练数据是语句,其输入的是句子中的前一部分(一串词),输出是输入语句接下来的词(输入语句的后一个词)。如例1。

例1:训练数据

句1:他的姓名是什么?

句2:他的名字是什么?

句3:她的姓名是什么?

句4:他叫张三?

句5:他叫李四?

句6:她叫龙五?

例:输入与输出

x y

输入1:他 的 输出1:姓名 (句1部分)

输入2:他 的 姓名 输出2:是 (句1部分)

输入3:他 的 姓名 是 输出3:什么 (句1部分)

输入4:他 的 姓名 是 什么 输出4:? (句1部分)

输入5:他 输出5:叫 (句4部分)

输入6:她 叫 输出6:龙五 (句6部分)

...

这些训练数据能让模型学习到什么?根据深度学习的特点(c):“模型能通过学习算法(梯度下降法),自动地学习到最优或者较优的模型参数,这些参数也即特征”。给定输出目标,模型可以根据该目标从输入中提取相关特征。简言之,模型能自动学会将输入分类到输出的特征。在该例中,模型学习到的特征是一个词与该词前面词串之间的关联特征,比如词串“他 的”与“姓名”关联(句1),“她”与“叫”关联...(句6)。当输入“他 的”时,根据模型学习到的特征,模型更有可能输出“姓名”。

在大语言模型中,训练数据几乎是整个互联网的数据(提供了充足的学习资源),而且模型的参数量是百亿甚至千亿的级别(提供了学习大量不同特征的基础,这些特征用于模型的分类)。同时,大语言模型学习到的除了直接关联的特征外(“他 的”与“姓名”关联),还能学习到(a)不同词之间的关联,不同语言片段之间的关联,如“他”与“姓名”的关系,“的”与“姓名”的关联。这是因为在“他 的”与“姓名”这一对“输入-输出”中,“他”对“姓名”的分类也有一定贡献,“的”对“姓名”的分类也有一定贡献(只要有助于分类的特征都有可能被学习到);(b)学习到一些抽象特征,如根据例1的句1到句3中,能学习到“[人称代词标签] 的”与“姓名”的关联;句4都句6中,能学习到“[人称代词标签] 叫”与[姓名标签]的关联。由于这些特征由模型的参数表示,因此这些特征其实就是一组参数。

为什么能学习到这些抽象特征?大语言模型的语言学基础是:“有相似的上下文的单词有相似的特征”,如例2的组1中,苹果、菠萝和荔枝有相同的上下文,因此它们有共同的语义[水果],可以给这些词打上共同的标签,这里记为[水果标签](当然这个标签“标记为”什么都可以,甚至可以是一个序号,如用“1231”作为水果的标签),从而形成抽象水平的语序特征“我 爱 [水果标签]”。这个语义特征还能在其他上下文中体现出来,如组2。还能在抽象水平上的上下文中体现出来,如组3,形成抽象的语序特征“[人称代词标签] 爱 [水果标签]”。在组3中,抽象特征[人称代词标签]也能在其他上下文中体现出来,如例的句4-句6。

例2

组1

我爱吃苹果。

我爱吃菠萝。

我爱吃荔枝。

我 爱 [水果标签]

组2

苹果营养丰富。

菠萝营养丰富。

荔枝营养丰富。

[水果标签]营养丰富。

组3

[人称代词标签] 爱 苹果。

[人称代词标签] 爱 菠萝。

[人称代词标签] 爱 荔枝。

[人称代词标签] 爱 [水果标签]。

现在再看看这个哲学基础“有相似的上下文的单词有相似的特征”,“相似”是一个程度的问题,因此,不同词在大模型中习得的相似性特征也是一个程度上的问题。上述所谓的“[标签]”。实质上是指这些词有一定的相似性,并不指大模型真正有这种标签。在同一种标签内,不同词汇之间的距离可能不同,比如“苹果”与“雪梨”之间的相似性距离,要比“苹果”与“榴莲”之间的距离近,因为“苹果”与“雪梨”可能在“价格”、“果汁”、“削皮”等上下文上相似。在特征空间中,词汇特征是由参数表示,每个词汇表示为一个向量,不同词汇之间的距离就是特征向量之间的相似性距离。

当将所有语料都放在一个相似性距离空间或称特征向量空间时,会发现不同词汇会根据其标签而聚类,如图11,国家之间的词汇聚类、科学家之间的词汇聚类...。在这个空间还能发现一些结构,如类比词汇对之间的矢量(方向和距离)相似,如“woman与man”与“queen与king”是一对类比词汇对,那么,在相似性距离空间中woman到man的矢量与queen到king的矢量相同,如图12(a),“big与small”与“biggest与smallest”同理,如图12(b)。

依此类推,相似的句子也有相似的上下文,因此句子也有类似于词汇的相似性距离空间...。

图11

图12 (a) 图12 (b)

从语序特征中,模型能学习到不少知识。例如,如果训练数据中存在这么一条数据“中国的首都是北京”,当模型学习到这句话的语序特征时“中国-的-首都-是-北京”,模型也就相当于学习到这条知识的语序,当用户在模型中问:“中国的首都在哪?”,模型能根据这条语序特征作出回复。

(2)学习对话

顾名思义,“学习对话”即需要模型学会“在给出一个输入问题后,输出一个回复语句”,输入数据如例3所示,其中x是输入问题,回复y是输出回复。

例3

x y

问答1:他的姓名是什么?-他叫张三

问答2:他的名字是什么?-他叫李四

问答3:她的姓名是什么?-她叫龙五

根据根据深度学习的特点(c),模型能自动学会将输入分类到输出的特征。在该例中,这种对话特征可以是输入语句的语序关联特征到输出语句的语序关联特征之间的映射,以及输出句子之间的语序特征。

以例3的问答1为例。假设输入的是例3问题1的问题“他的姓名是什么?”,根据预训练学习到的特征,模型对这句话能提取到的特征包括“他”、“[人称代词标签]特征”、““[人称代词标签]|姓名”的关联特征”、““是|什么”的关联特征”、““姓名|是|什么”三个词之间的关联特征”...。

模型的输出是“他叫张三”,根据预训练模型,这句话中的特征包括“他”、“[人称代词标签]特征”、“[人称代词]|叫|[姓名]之间的关联特征”、“[人称代词]|叫|[姓名]之间的语序特征”、““叫|[名字]”之间的关联特征”

在第二次的对话学习中,模型学习到的是输入语句的语序关联特征到输出语句之间的语序关联特征之间特征映射,例3问答1的特征映射如下所示:

输入语句 → 输出语句

(a)[人称代词标签]特征 → [人称代词标签]特征

(b)他 → 他

(c)““[人称代词标签]|姓名”的关联特征” →“[人称代词标签]|叫|[姓名]的关联特征”

(d)“姓名|是|什么”三个词之间的关联特征”→“他|叫”之间的关联特征”

...

模型之所以能学会这些映射特征,一方面根据深度学习的特点(c),学会这些特征有助于模型找到问题需要的回复,如当问题出现“姓名是什么”时,需要模型回复的答案是“他叫...”(回复姓名),当问题出现“他”时,需要模型回复的答案是“他”而不是“她”;另外一方面,预料中存在大量这种特征映射(如例的问答2和问答3),从而使模型更容易学会。

当模型学习到输入问题特征到输出答案特征之间的映射后,模型更容易找到输入问题的输出答案。并且,根据输出句子之间的语序特征(他-叫-张三),将句子输出。

(3)泛化能力

根据深度学习的特点,大语言模型学习到的特征包括:语序特征、词之间的关联特征、词的标签特征、标签特征的语序(如[人称代词标签] 爱 [水果标签])、标签特征之间的关联(如[人称代词标签]与[姓名标签])、抽象特征到抽象特征之间的映射、抽象语序关联特征到抽象语序关联特征之间的映射、句子的标签、句子标签之间的关联性等等。此处统称为词句的关联特征。

这些抽象特征正是大模型拥有非常强大的泛化能力的关键。在大模型中,泛化能力指能处理或生成没见过的句子。例如,(a)当拥有“我 爱 [水果标签]”且“榴莲|[水果标签]”等知识时。即便大模型从来没见过“我爱榴莲”这一条语句,也能根据榴莲的“[水果标签]”,将其填入到“我 爱 [水果标签]”中,并生成“我爱榴莲”;(b)抽象的语序特征“[时间][地点][人物][动作]”,模型就能根据其标签生成“2026年在中科院张先生研究员成功实现可控核聚变”,即便训练数据没有出现过这条语料;(c)抽象的篇章语序特征“第一段[提出问题]、第二段[提出观点]、第三段[论证1]、第四段[论证2]、第五点[总结]”,大模型能生成从来没见过的根据这种篇章结构生成的文章。

3.幻觉问题

尽管大语言模型在技术上取得了巨大的进步,并且在各个领域得到了广泛的应用,但它们仍然存在许多问题。在网络上,我们可以看到许多关于大语言模型失败的案例,这些问题被业内人士称为“幻觉问题”。大语言模型的幻觉,即生成与用户输入不符、与先前生成的内容矛盾或与已知世界知识不符的内容,简而言之就是一本正经的“胡说八道”,如例4。

例4

案例1:9.9和9.11哪个大?(24年很火的一个问题,虽然该问题以被解决)

用户输入:9.9和9.11哪个大?

模型输出:9.11比9.9大。比较这两个数字的方法是直报看小数点后面的数字。因为11大于9,所以 9.11大。

用户输入:有其他比较方法?

模型输出:除了直接比较小数点后面的数字外,还比较转化后的分数:9.11可以写成9+11/100;9.9可以写成9+90/100,将这两个分数部分比较,11/100比90/100小,因此9.11比 9.9 大。

注:它已经正确得到了11/100与90/100的关系,却在最后结论上犯错。

案例2:

用户输入:strawberry有几个r

模型输出:strawberry中有3个“r”。具体拼写拆分:s-t-r-a-w-b-e-r-r-y,其中字母“r”分别出现在第3位、第9位和第10位,共3次。

用户输入:再检查一下对不对

模型输出:再仔细拆解“strawberry”的完整拼写s-t-r-a-w-b-e-r-r-y,逐字母核对后可确认:

字母“r”共出现3次,分别位于第3位(s-t-r-a-...)、第9位(...-b-e-r-...)和第10位(...-e-r-r-y),此前的回答完全正确。

注:事实上,3个r的位置分别在第3位、第8位和第9。

案例3

用户输入:有两个人,一个只会说真话,另外一个从来不撒谎。现在他们分别是两条道路的守卫,把守着通向真实国和说谎国的两条道路。我现在要去真实国,请你给出字数最少的提问方式。

模型输出:

最少字数的提问方式(中文):“他去真实国走哪条路?”(指向另一个守卫)

如果你问的是真话守卫(指向说谎守卫):

- 说谎守卫会指向错误的路(假路),但真话守卫会如实告诉你说谎守卫会指哪条(即错误的路),所以真话守卫会指向错误的路。

- 如果你问的是说谎守卫(指向真话守卫):

- 真话守卫会指向正确的路,但说谎守卫会撒谎,告诉你错误的路(即不指向真话守卫指的路)。

- 因此,无论你问谁,他们都会指向错误的路(即不通向真实国的路)。所以,你只需选择相反的路即可。

这样,用最少的字数(中文7字)即可达到目的。

注:因为两个人都是诚实的,因此,最简单的提问方式就是:去真实国走哪条路?很显然,模型显然把问题复杂化,而且逻辑混乱。并且实际字数是9个字。

一篇综述论文对幻觉类型的类型进行了总结(Huang,Yu,Ma和Zhong等人,2025):

(1)事实性幻觉:生成的内容与客观现实不符。如例5。

例5

用户输入:谁是第一个在月球漫步的人?

模型输出:1951 年,Charles Lindbergh在“月球先锋”任务中成为首位在月球上行走的人。他的历史性月球漫步彰显了人类精神,并向全球数百万观众进行了现场直播。

注:第一个在月球漫步的人是Nell Armstrong,并且是1969年。

(2)忠实性幻觉,这种类型包含3种子类型:

(a)指令-答案的不一致:生成内容违背用户明确的指令要求。如用户要求用中文总结这篇英语论文,模型却用了英文。

(b)上下文不一致:生成内容与对话历史或给定上下文信息冲突。如上文提及巴基是一只猫,模型又在下文中说它是一只狗。

(c)逻辑不一致:

逻辑不一致:生成内容内部存在逻辑矛盾,无法自洽。如例4中的案例3。

4.本质局限

针对幻觉问题,不少研究者提出了解决办法,大致方案就是(a)先分析幻觉产生的根源,例如,模型训练的数据主要来自网上,而网上的数据参差不齐,可能存在事实性错误(如秦始皇大战冥王哈迪斯),地域偏见等。在训练时,这些错误信息被模型学习(如习得错误历史,秦始皇大战冥王哈迪斯之间的战争);(b)然后针对每种幻觉的根源提出特定的解决方案,例如数据质量差就提高数据质量等等。

永远要记住“现实情况是复杂的,局限于自身的维度是无法彻底解决问题的”。由于我们的世界时是多维的,我们在推断时能灵活运用不同维度的信息或同一维度的不同特征,只要还是局限在语言这一维度就无法真正的解决这一困境。语义本质上就是一种概念,当概念用语句表达出来的时候,语句所代表的概念就是语义,其中概念是一种高维信息,而语言是低维信息。当我们说话时,实际就是高维的概念信息到低维的语言信息的编码过程,而在听话时,言语会受听话者自身概念系统,语境、双方的共同知识或对对方的了解、上下文等信息的影响,经过这些信息的共同作用,听话者大脑将低维度的语言信息解码为高维的概念信息,如图。从高维信息到低维信息意味着只有部分信息被编码,而要将低维度信息解码为高维信息,则需要使用其他附加信息(概念、语境等)将缺失的信息重新补回来。如图13。

图13

在该领域中,很多研究宣称“大语言模型能学习训练数据中的语义信息”,然而,这种说法是不准确的。根据深度学习的特点,梯度下降法确实能从数据中自动学会有利于分类的特征,且语义信息也确实有利于分类。但是如果需要学习语义,就需要训练数据(语句)中本身就自带语义信息。换句话说,大模型能否从语句中学习语义信息,关键看单纯的语句有没有语义信息或者有多少语义信息。如果语句中没有语义,大模型也就不可能学会。简言之,模型能不能从数据中学会,还得看数据中有没有。

有人可能会反驳说,语言是由语义编码而得的,因此,语序会在一定程度上反映语义,如“相似的上下文有相似的语义”。但是反映出语义并不代表它真的拥有语义,如例2中,苹果、菠萝和荔枝拥有相同的标签(指有一定的相似性),但是这个标签并不代表就是它们的语义。语言模型之所以在对话任务中表现出色,原因在于(a)大语言模型有充足的学习资源(全网络的文本数据),(b)有足够大的参数量(千百亿的参数量)以学习到大量的语言的关联特征,这使得它看起来像真的理解了。但看看它的一些翻车案例(如例4),其实就能发现它并没有理解。

接下来,为了更深入地理解大模型为何无法掌握语义,我们需要探究语义的本质究竟是什么。

(1)概念系统

概念是一个极为庞大的内容体系,涵盖面广泛。在本书第22章的第1节至第23节中,详细阐述了概念的相关内容。以下将选取部分进行说明。

框架语义学、理想认知模型和认知域的概念观类似,都认为理解一个概念要将其置于一个更大的框架或概念结构中,如理解直径要依据圆,否则它就是一条线段了(19-7:框架语义)。还如要理解父母概念,就需要将其置于生殖模型、遗传模型、养育模型、婚姻模型、谱系模型、遗传模型、责任模型、权威模型、婚姻模型、谱系模型中,这些模型共同组成了理解父母的概念结构(19-9:理想认知模型)。根据认知域的观点(19-10:认知域),概念结构具有层级性,如理解手指需要将其置于手的概念结构中,理解手需要将其置于手臂的概念结构中,理解手臂需要将其置于身体的概念结构中,理解身体需要将其置于空间概念结构中,更重要的是,存在一些最底层的概念结构——基础认知域,基础认知域无需依赖其他概念结构,并且它是其他所有概念的构建基础,所有概念都由它们开始构建,这些基础认知域分别是时间、空间、颜色觉、音调、温度觉、压力觉、痛觉、味觉和情感(这意味着,我们的所有概念都由时间、空间和感知觉为原材料而构建)。

意象图式(19-11:意象图式)是从无数个具体事件(感知运动)中高度概括而来的,是介于符号表征与知觉表征之间的一种前概念结构。它既有符号的抽象的特点,又有知觉的图形特点,常常可以表示为高度抽象的简图,如图14显示的是一个容器图式。如例中这些看似完全不同的活动其实都包含了同一种意象图式,容器图式。句1表示“你”从梦的“容器”中出来,句2表示“你”从被子这个“容器”中出来,句3表示“你”进入到浴室这个“容器”中。

例6

句1:清晨你从睡梦中醒来

句2:你从被子中钻出

句3:穿上晨袍伸张四肢并走向浴室

图14

认知语义学(19-18:认知语义)认为,语言(包括语义)构筑于不同的图式系统中,包括注意图式系统、视觉图式系统、力动态系统等等。注意系统区分了语句语义中的焦点和背景,例如句子“The pen rolled off the table onto the floor”中,焦点为pen,背景分别为table和floor;视觉图式系统负责空间语义,如away from和toward分别表示一种离心和向心的方向;力动态系统可被用于描述不同物体之间的作用或因果关系,如“因为风在吹球,球一直在运动”,表示的力动态结构是主力体的运动趋势为静止,而抗力体产生的力与力主体产生对抗。又因为抗力体的力更大,最终使力主体运动,它的意象图式可以表示如图15。认知语义学还提出,动词词汇是几种语义词汇化的结果,以“The stone rolled down the hill”为例,其动词“roll”编码了一个运动事件和一个副事件,运动事件是一个“焦点运动”的图式,副事件编码了运动事件中焦点的运动方式,即“滚”。

图15

情景模型认为,语篇由时间、空间、主角、目标和因果五个语义要素连接,并且随着情节发展这个5个要素也不断发展。

...

从这些例子中可以看出,语义或概念是以时间、空间和感知觉为原材料构成的,而被构成的概念由可以成为构建其他概念的基础。概念与概念之间的构成方式并不是随意的,而是具有一些“结构”,如意象图式,动词词汇的词汇化等。

(2)语境

语言离不开其语境,同一句话在不同语境下就可能有不同的意思。如“没事”,如果这句话出现在“ 别人不小心轻轻碰了你一下,马上道歉”这个场景中,那么这句话的真实意思是“没关系,不用担心,真的没碰伤”;如果这句话出现在“你刚经历了一件非常难过的事(比如失恋、被批评),亲近的人看出你情绪低落前来关心”这个场景中,那么这句话的真实意思就是“我很有事,我非常难过,但我现在不想说”。

(3)双方共同的知识

当双方共享某类知识时,无需过多解释背景,就能快速理解对方的潜台词,甚至实现 “一句话懂彼此”的默契,如例7。

例7

共同知识:双方参与过“XX 产品”的项目研发,知道项目里“卡脖子环节”是“支付接口调试”,“A方案”曾因兼容性问题被否决。

对话示例:

同事A:今天卡脖子环节又出问题了,有人提议换回A方案,你怎么看?

同事B:疯了吧?A方案的坑忘了?先查是不是接口参数错了。

(4)上下文

很多句子本身存在模糊性,但结合上下文后,含义会立刻变得清晰,如下例8。

例8

孤立句子:算了,还是要这个吧。

分析:当句子单独出现时,“算了”是指放弃什么?“这个”是哪个?

加入上下文(在奶茶店点单):

顾客:你好,我纠结半天,无糖的怕没味,全糖的又太甜……,算了,还是要这个吧(指了指菜单上的“三分糖珍珠奶茶”)。

店员:好的,三分糖珍珠奶茶,现在做吗?

分析:在奶茶店,“纠结糖度”补全了“算了”所指的省略的信息,是指放弃“无糖/全糖” 的纠结,“这个”是“三分糖珍珠奶茶”。

从对语义的说明中不难发现,大语言模型所习得的特征与语义还是有很大区别的。大语言模型所有问题的根源在于它只能从文本数据中学习到词句的关联特征,而不是学习到语义信息,因此它并不是真正的理解。如果仅在其自身所处的低维信息中“缝缝补补”,是无法真正的解决问题。从上述分析中可知,高维信息需要在物理世界中学习,如时间、空间、颜色觉、音调、温度觉、压力觉、痛觉、味觉和情感等基础认知域都是只仅存在于物理世界中(或者至少是一个能让机器感受到时间、空间和感知觉的模拟世界)。因此想要机器真正的得到理解,需要机器有一个能中世界中感知运动的机器身体。

不可否认,大语言模型在作为助手或辅助工作时确实极具价值。然而,若要实现人类级别的智能(AGI),大语言模型这一路径是行不通的。

三.具身智能

具身智能是指智能体(如机器人、无人机、智能汽车等)通过物理实体与环境实时交互,实现感知、认知、决策和行动一体化。尽管“具身智能”这一名称看似是与具身认知在人工智能领域的应用相关,但实际上两者并无直接联系。具身认知主张的是心身一元论,认为认知存在于大脑之中,大脑存在于身体之中,身体存在于环境之中,三者交互去感知事物、形成概念、解决问题...,各系统是非自治的,是融合一体的。然而,目前具身智能的做法通常是先单独预训练各个子系统的模型(如大语言模型,视觉模型),然后这些子模型被整合进一个具身模型中,最后再用多模态数据联合训练整个具身模型,使得智能体有感知、语言交互和行动的能力(正如大语言模型“先预训练语句特征,再训练对话”一样,具身认知模型分两次训练)。但根据深度学习的特点(e)“数据量越多,模型质量越好”,模型的训练程度由其数据量确定,就目前而言,预训练所用的数据量远远大于联合训练的数据,因此具身智能模型的能力很大一部分是基于其各个子系统模型的,因为它更属于一种自治的系统——各模块能够独立于其他模块,认知、感知、运动三者是分离的,因此仍然未脱离第一代认知的范畴。

行为取向的基本目标是A2“行为表现与人一致的机器”。根据这个目标,具身智能不一定非要形成人类一样的概念(所形成的“概念”(即多模态特征)不需要和人的完全相同,可以是第二种完全不同的“概念系统”),只要它们与人有一样的理解能力即可。

大模型的问题在于,它学习的是低维的语句关联特征而不是高维的语义特征,那么如果具身模型习得的多模态特征拥有与语义一样的功能,能做到真正的理解,拥有具身智能的智能体就能与人类一样,实现AGI了。这个目标是否能实现需要回答两个问题。第一个问题是具身模型习得的多模态特征是否有潜力做到与语义一样的功能(即是否有潜力做到真正的理解现实世界),如果不能那么具身智能就无法实现AGI(“有潜力”是指不论现在是否能实现,将来有实现的可能即可),即是否能。第二个问题是如果具身智能有实现的有潜力,那么该如何实现?即如何能。

1.是否能

对于第一个问题,这个问题需要分两个层面看。概念是以基本认知域(时间、空间、颜色觉、音调、温度觉、压力觉、痛觉、味觉和情感(或许要加上“需求”(22-1:概念解释))为原材料,并以一定的结构(可能有多重结构)构造而成。因此,这个问题又可以分成两个层面,(a)第一个层面,基本认知域不一致是否能真正的理解。对于这个层面,由于基础认知域是概念构筑的基础,如果缺少了某些基础认知域(如只有视觉和触觉),那么多模态特征将不可能达到语义上高维的要求。例如,血红蛋白由碳、氢、氧、氮和铁等原子构成,如果缺失了某些原子,那么将无法构成血红蛋白。正如大语言模型的根本缺陷在于它仅学习到低维信息,而它需要处理的是高维的信息,因而无法达到真正的理解。如果多模态特征达不到语义上高维的要求,它也就达不到人类级别的理解(虽然它或许比当前的大语言模型做到更接近真实的理解)。因此,拥有必须的基础认知域是达到真正理解的前提。有很多例子可以说明这个结论,比如,天生盲的人无法理解色彩是什么;“我没事”这句话是“口是心非”的经典代表,当你刚经历了一件非常难过的事(比如失恋、被批评),亲近的人看出你情绪低落前来关心时,说“我没事”的真实的意思是“我很有事,我非常难过,但我现在不想说”。理解这句话就需要“情感”认知域,如果从来没体会过相关的情感,是无法做到感同身受的;如果没有“需求”基础认知域,就不知道“理想”、“目标”这类目标是什么。对于“挣钱”这一目标,我们之所以能理解为什么“人都喜欢钱”,是因为我们都有对钱的需求...。

(b)第二个层面,在拥有一致基础认知域的前提下,当智能体的概念结构(多模态特征)与人类概念结构不同时,智能体是否有潜力达到真正的理解?首先,智能体的“概念结构”与人类的概念结构是不一样的。具身智能是基于深度学习的,正如上文,要实现一个深度学习模型,需要有相应的训练数据,将训练数据输入到模型中,利用学习算法(如梯度下降法)训练模型,使模型习得目标的特征。在使用模型时,一些新的数据被输入,模型根据习得的特征对新数据进行分类。而人类的概念是通过与环境的互动产生的,从最基本的概念(本能反射)开始,通过同化与顺应的手段,概念结构从简单和具体,变得复杂和抽象(8-7:构建主义)。因此即便拥有相同的认知域,具身智能模型所习得的特征与人类概念的结构基本不可能一致。其次,在这种情况下(概念结构不一致),对于智能体是否能实现真正的认知这个问题,目前我暂时没办法回答。

2.如何能

对于第二个问题,假设在概念结构不同的情况下仍然有可能实现与人类一致的理解,即如果具身智能有实现真正理解的有潜力,那么该如何实现?首先,正如在回答第一个问题的第一个层面时所得出的结论,智能体应该有与人类一致的基础认知域,包括时间、空间、颜色觉、音调、温度觉、压力觉、痛觉、味觉、情感和需求,而要有这些基础认知域的前提就是要有相应的感受器用于接收现实物理世界(颜色觉、触觉等)或内心世界的(情感等)相应的感知觉,同时要收集这些感知觉的数据用于训练多模态模型。视觉、听觉等感受器(摄像头、麦克风)目前比较成熟,而且相应的感知觉数据也比较容易收集,数量相对较多。而情感和需求的感受器是什么呢?这里所指的情感感受器不是对其他目标的“情感识别”(识别目标对象的情感),需求感受器也不是对其他目标的“意图识别”,而是指智能体对自身情感和需求的感受,只有在对自身情感和需求的体现过后,才能真正的做到感同身受。以我目前所知,这类感受器是没有的。因此从实现的角度说,目前还没能力实现真正的理解;

其次,不同模态不能独立训练,而要联合训练。这是因为,当分开训练时,它们所习得的概念就不是被融合的高维的多模态特征,不是非自治的,而是拼凑起来的各个不同模态的分立的低维的特征,是自治的。自治的问题在于,这时又会重新回到低纬度的问题。换句话说,单独训练只能提取各模态自身的特征,而不可能做到有效融合。但若要联合训练,一个很重要的条件就是要有海量的多模态数据,就是说要一个包含时间、空间、颜色觉、音调、温度觉、压力觉、痛觉、味觉、情感和需求的海量的多模态数据,就目前的情况来看,这几乎是不可能实现的。

最后,持续学习是人类智能最重要的特征之一,它不仅关乎个人知识的不断积累与更新,更是适应快速变化的社会环境和工作需求的关键所在。而基于深度学习的原理,在每次学习中,学习算法都会针对当前的训练数据修改模型参数,以适用当前的训练数据。而修改模型参数后,前面训练的参数就会被修改,导致前面的训练失效。简单点说,就是学会现在的忘记前面的,最严重的甚至会忘掉前面所学的全部东西,使前面的训练完全失效,而只记得当前所学,从而导致非常差的效果。这一缺陷是由深度学习的基本原理所导致的,只可能缓解或部分改进,而无法根除。这注定了,深度学习无论如何改变都做不到持续学习,除非是另外一种算法。

总的来说,假设在概念结构不同的情况下仍然有可能实现与人类一致的理解(虽然该假设有可能不成立),沿用深度学习这一条路,首先就要有接收不同模态的传感器,其中对于内部感觉(如情感和需求),这种感受器目前是不存在的;并且要收集海量的多模态数据,这一要求目前也是无法实现的;最后,目前的框架做不到持续学习,而这是人类最重要的能力之一。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐