大模型(LLM),或者说大型语言模型(Large Language Model)的出现,使人工智能引起了几乎所有人的关注。由于自然语言本身就是一种“自然的界面”,使得人工智能最近的突破成果对所有人来说都变得触手可及,从而迅速走红。然而,除非你是一名数据科学家或从事其他 AI 相关工作,否则很少有人真正了解 LLM 的工作原理。在这篇文章中,我将尝试改变这一状况。
不可否认,这确实是一个雄心勃勃的目标。毕竟,我们今天拥有的强大 LLM 是数十年 AI 研究的结晶。不幸的是,大多数关于它们的文章通常有两种风格:一种是非常技术化的,假设读者具备大量先验知识;另一种则过于浅显,读完之后你并不会比之前知道得更多。
本文旨在在这两种方法之间取得平衡。或者更确切地说,本文的目标是带你从零开始,了解 LLM 的训练过程以及为何它们能如此令人印象深刻地工作。我们将沿途拼凑所有相关的部分来实现这一目标。
这篇文章不会深入探讨所有细枝末节,所以我们将更多依靠直觉而非数学,并尽可能多地使用可视化手段。但正如你将看到的,虽然细节上这个话题无疑非常复杂,LLM 背后的主要机制却十分直观,这一点本身就能让我们获得很大的收获。
这篇文章也应该能帮助你更好地使用诸如 ChatGPT 之类的 LLM。事实上,我们将学到一些巧妙的技巧,你可以运用这些技巧来增加获得有用回复的机会。正如著名 AI 研究员兼工程师 Andrei Karparthy 最近直言不讳地说:
“English is the hottest new programming language.”(英语是最热门的新编程语言。)
但首先,让我们来了解一下 LLM 在人工智能世界中的位置。
人工智能领域通常被形象地划分为多个层次:
人工智能(Artificial Intelligence,AI)是一个非常宽泛的术语,但通常它涉及智能机器。
机器学习(Machine Learning,ML)是人工智能的一个子领域,专门关注数据中的模式识别。正如你可以想象的,一旦你识别出一种模式,就可以将该模式应用到新的观察中。这就是其思想的精髓,不过我们稍后会详细探讨这一点。
深度学习(Deep Learning,DL)是机器学习中的一个领域,专注于处理非结构化数据,其中包括文本和图像。它依赖于人工神经网络,这种方法在很大程度上受到人脑的启发。
LLM 专门处理文本,这也将是本文的重点。
在接下来的内容中,我们将从这些层次中提取出相关的部分。我们只会略过最外层的人工智能(因为它本身就过于宽泛),而直接进入机器学习的讨论。
机器学习
机器学习的目标是发现数据中的模式。或者更具体地说,发现一种描述输入与输出之间关系的模式。用一个例子来说明这一点会更好理解。
假设我们希望区分我最喜欢的两种音乐类型:reggaeton 和 R&B。如果你对这些类型不太熟悉,这里有一个非常简短的介绍,可以帮助我们理解这个任务。reggaeton 是一种拉丁都市音乐,以其充满活力的节奏和适合跳舞的韵律而著称,而 R&B(Rhythm and Blues)则是一种植根于非裔美国人音乐传统的音乐流派,其特点是充满灵魂的演唱和快节奏与慢节奏相结合的曲目。
假设我们有 20 首歌曲。我们知道每首歌曲的 tempo(节奏)和 energy(能量),这两个指标可以简单地测量或计算出任何歌曲的数值。此外,我们还为它们贴上了标签,标明其所属的类型,要么是 reggaeton,要么是 R&B。当我们将数据可视化时,可以看到高 energy、高 tempo 的歌曲主要是 reggaeton,而较低 tempo、较低 energy 的歌曲则大多是 R&B,这也是合乎情理的。
然而,我们希望避免总是手动标注歌曲类型,因为这样既耗时又不具备可扩展性。相反,我们可以学习歌曲指标(tempo、energy)与歌曲类型之间的关系,然后仅使用这些易于获取的指标进行预测。
用机器学习的术语来说,这就是一个分类问题,因为输出变量(歌曲类型)只能取固定集合中的一个类别/标签——在这里是 reggaeton 和 R&B。这与回归问题不同,后者的输出是一个连续值(例如温度或距离)。
现在,我们可以利用已标注的数据集,也就是一组我们已知歌曲类型的歌曲,来“训练”一个机器学习模型(或称为“分类器”)。直观上来说,模型训练在这里的作用就是找出一条最佳分割这两类的分界线。
这有什么用呢?有了这条分界线,对于任何新歌曲,我们都可以根据该歌曲落在分界线的哪一侧来预测它是 reggaeton 还是 R&B。我们所需要的只是歌曲的 tempo 和 energy,而这些指标假定更容易获得。这比让人类为每一首歌曲手动分配类型要简单得多,也更具可扩展性。
此外,正如你所预料的,歌曲离分界线越远,我们对预测结果的准确性就越有信心。因此,我们通常还可以根据歌曲与分界线的距离来说明预测结果的可信度。例如,对于那首低 energy、低 tempo 的新歌曲,我们可能有 98% 的把握认为它是 R&B,而只有 2% 的可能性它其实是 reggaeton。
但当然,现实通常比这更复杂。
分离类别的最佳边界可能并不是线性的。换句话说,输入与输出之间的关系可能更加复杂。它可能像上图那样呈曲线,甚至可能复杂许多倍。
现实在另一个方面也通常更为复杂。我们往往不只有示例中的两个输入,而是有几十个、上百个,甚至上千个输入变量。此外,我们通常有超过两种类别。而所有类别都可能通过一种极其复杂的非线性关系与所有这些输入变量相关联。
即便是我们的这个例子,也知道实际上音乐类型不止两种,而且除了 tempo 和 energy,我们需要更多的指标。它们之间的关系也可能远非如此简单。
我主要希望你能明白这一点:输入与输出之间的关系越复杂,我们需要的机器学习模型就越复杂、越强大,才能学习这种关系。通常,模型的复杂性会随着输入数量和类别数量的增加而增加。
此外,我们还需要更多的数据。稍后你就会明白这为什么如此重要。
现在让我们转向一个稍微不同的问题,但对于这个问题,我们将试图应用之前建立的思维模型。在我们的新问题中,输入是一张图像,例如这张袋子里可爱的小猫的照片(毕竟带猫的例子总是最好的)。
至于输出,这次假设有三个可能的标签:老虎、猫和狐狸。如果你需要一些动机来理解这个任务,不妨设想我们可能想要保护一群羊,当看到老虎时发出警报,而看到猫或狐狸时则不报警。
我们已经知道这又是一个分类任务,因为输出只能取几个固定类别中的一个。因此,就像之前一样,我们可以直接利用一些现有的已标记数据(即带有类别标签的图像)来训练一个机器学习模型。
然而,如何处理视觉输入并不那么显而易见,因为计算机只能处理数值型输入。当然,我们之前提到的歌曲指标 energy 和 tempo 就是数值型的。幸运的是,图像也是数值型输入,因为它们由像素组成。图像有高度、宽度以及三个通道(红色、绿色和蓝色)。因此,从理论上讲,我们可以直接将这些像素输入机器学习模型(暂且忽略这里存在的空间元素,因为这是我们之前还未涉及的内容)。
然而,现在我们面临两个问题。首先,即使是一张小尺寸、低质量的 224x224 图像,也包含超过 150000 个像素(224×224×3)。请记住,我们之前讨论的输入变量最多只有几百个(很少超过一千),而现在我们突然有了至少 150000 个变量。
其次,如果你思考一下原始像素与类别标签之间的关系,从机器学习的角度来看,这种关系极其复杂。我们人类大脑拥有惊人的能力,通常能轻易区分老虎、狐狸和猫。然而,如果你逐个查看那 150000 个像素,你根本无法知道图像中到底包含什么。但机器学习模型正是以这种方式“看待”图像的,因此它需要从零开始学习这些原始像素与图像标签之间的映射或关系,而这绝非易事。
深度学习
我们已经通过了解机器学习的基础知识以及使用更强大模型的动机,迈出了理解 LLM 的一大步,现在我们将通过引入深度学习,再迈出一大步。
我们之前讨论过这样一个事实:如果输入与输出之间的关系非常复杂,同时输入或输出变量的数量又很大(而在我们之前的图像和语言示例中,这两者都是如此),那么我们就需要更灵活、更强大的模型。线性模型或任何类似的模型都无法解决这类视觉或情感分类任务。
这正是神经网络(Neural Network,NN)登场的地方。
神经网络是强大的机器学习模型,它们可以对任意复杂的关系进行建模。它们是驱动大规模学习这种复杂关系的引擎。
实际上,神经网络在一定程度上受到了大脑的启发,尽管这种相似性仍存在争议。它们的基本架构相对简单,由一系列相互连接的“神经元”层构成,输入信号依次通过这些层以预测输出变量。你可以将它们看作是多层线性回归的堆叠,在各层之间加入了非线性因素,从而使神经网络能够建模高度非线性的关系。
神经网络通常层数很深(这也是“深度学习”这一名称的由来),这意味着它们可能非常庞大。例如,ChatGPT 就是基于一个包含 1760 亿个神经元的神经网络,而人脑大约只有 1000 亿个神经元。
因此,从这里开始,我们将假设神经网络为我们的机器学习模型,同时考虑到我们也已经学会了如何处理图像和文本。
LLM
最后,我们可以开始讨论 LLM 了,这也是事情变得真正有趣的地方。如果你已经看到这里,那么你应该已经掌握了理解 LLM 所需的所有知识。
那么,一个好的开始方式是什么呢?大概可以从解释 LLM 到底意味着什么开始。我们已经知道大模型的“大”就是仅仅指神经网络中神经元(也称为参数)的数量。对于什么样的模型构成了大语言模型,并没有一个明确的数字界限,但你可以认为超过 10 亿个神经元的模型就是大型的。
既然如此,那么什么是“语言模型”?接下来我们就来讨论这个问题——同时请记住,稍后我们还会了解 ChatGPT 中的 GPT 代表什么。但一步一步来。
让我们把以下的想法构造成一个机器学习问题:在给定的一系列单词(比如一句话或一段话)中,下一个单词是什么?换句话说,我们只是想学习如何在任何时刻预测下一个单词。从本文前面的内容中,我们已经掌握了构造这一机器学习问题所需的一切知识。实际上,这个任务与我们之前讨论的情感分类任务非常相似。
就像那个例子一样,神经网络的输入是一系列单词,但现在输出仅仅是下一个单词。同样,这依然是一个分类任务。唯一的区别在于,我们现在的类别数不再只有两个或几个,而是和单词的总数一样——假设大约有 50000 个类别。这正是语言建模的核心:学习预测下一个单词。
好了,如你所想,这比二元情感分类复杂了几个数量级。但既然我们已经了解了神经网络及其强大的能力,对于这种复杂性,我们唯一能回答的就是“为什么不呢?”
快速声明:当然,我们在这里对许多内容进行了简化(正如全文所做的那样)。实际上情况会稍微复杂一些,但这不应阻碍我们理解主要机制,因此我们选择了简化并省略掉部分细节。
我们已经了解了任务,现在我们需要数据来训练神经网络。实际上,为我们的“下一个单词预测”任务创建大量数据并不困难。互联网上、书籍中、研究论文中以及其他地方都有丰富的文本资源,我们可以很容易地从中构建一个庞大的数据集。我们甚至不需要为数据打标签,因为下一个单词本身就是标签,这也就是为什么这种方法被称为自监督学习。
上图展示了这一过程:仅仅一个序列就可以被转换成多个用于训练的序列,而我们拥有大量这样的序列。更重要的是,我们对许多长短不一的序列(有的长达数千个单词)都进行这样的处理,以便在各种上下文中都能学会下一个单词应该是什么。
总而言之,我们所做的就是训练一个神经网络(即 LLM),让它预测给定一系列单词中的下一个单词——无论这个序列是长是短,是德语、英语还是其他任何语言,无论它是一条推文、一个数学公式、一首诗还是一段代码。所有这些都是我们将在训练数据中遇到的序列。
如果我们拥有足够大的神经网络以及足够多的数据,LLM 就会非常擅长预测下一个单词。它会完美无误吗?当然不会,因为通常一个序列后可能跟随多个单词。但它会变得非常擅长从语法和语义上都合适的候选词中选择出一个最恰当的单词。
既然我们已经可以预测一个单词,那么我们可以将扩展后的序列重新输入到 LLM 中,再预测下一个单词,如此不断循环。换句话说,借助训练好的 LLM,我们现在不仅能够生成单个单词,而是可以生成整段文本。这正是 LLM 被称为生成式 AI 的原因。可以说,我们刚刚教会了 LLM 一次只说一个单词。
这里还有一个我认为非常重要的细节需要理解:我们不必总是预测最有可能出现的单词。我们可以选择从例如当时最可能的五个单词中进行采样。这样一来,LLM 可能会展现出更多的创造性。有些 LLM 实际上允许你选择输出结果的确定性或创造性程度。这也是为什么在采用这种采样策略的 ChatGPT 中,当你重新生成回答时,通常不会得到相同的答案。
说到 ChatGPT,你可能会问,为什么它不叫 ChatLLM。事实证明,语言建模并不是故事的终点——实际上它只是个开始。那么,ChatGPT 中的 GPT 究竟代表什么呢?
我们实际上刚刚了解了 G 所代表的含义,即 Generative——意味着它是在语言生成预设任务上训练的,就像我们之前讨论的那样。那么 P 和 T 又代表什么呢?
这里我们先略过 T,它代表 Transformer,这是一种神经网络架构类型。这其实不会对我们造成困扰,但如果你感兴趣并只想了解它的主要优势,那就是 Transformer 架构之所以能如此高效,是因为它能够在任何时刻将注意力集中在输入序列中最相关的部分。你可以认为这与人类的工作方式类似,我们也需要关注与任务最相关的部分,忽略其余内容。
接下来是 P,它代表 Pre-training(预训练)。接下来我们将讨论为何我们会突然开始谈论 Pre-training,而不仅仅是训练。
原因在于,像 ChatGPT 这样的大型语言模型实际上是分阶段进行训练(1-预训练,2-指令微调,3-人类反馈强化(RLHF))的。
预训练
第一阶段是预训练,这正是我们刚刚讨论过的内容。这个阶段需要海量的数据来学习预测下一个单词。在这一阶段,模型不仅学会了掌握语言的语法和句法,而且还获得了大量关于世界的知识,甚至一些我们之后会讨论的新兴能力。
但是现在我有几个问题要问你:首先,这种预训练可能存在哪些问题?当然可能有不少问题,但我想指出的一个问题在于 LLM 实际上学到了什么。
也就是说,它主要学会了在某个主题上喋喋不休。它可能在这方面表现得非常出色,但它并没有学会如何对你通常希望给 AI 的那种输入(比如一个问题或一条指令)作出恰当的响应。问题在于,这个模型没有学会成为(也就没有表现为)一个助手。
例如,如果你问一个预训练的 LLM “What is your first name?”(你的名字是什么?),它可能会回答 “What is your last name?”(你的姓是什么?),仅仅因为这是它在预训练过程中见过的数据类型,例如在许多空白表单中出现的那种情况。它只是试图完成输入的序列。
它在遵循指令方面表现不佳,原因在于这种语言结构——即指令后跟一个回应——在训练数据中并不常见。也许 Quora 或 StackOverflow 是最接近这种结构的例子。
在这一阶段,我们可以说 LLM 并未与人类的意图保持一致。对齐(Alignment)是 LLM 的一个重要课题,我们将学习如何在很大程度上修正这一点,因为事实证明,那些预训练的 LLM 实际上是相当可控的。所以,即便它们最初对指令的响应并不理想,仍然可以通过训练来使其学会遵循指令。
指令微调与 RLHF
这就是指令微调发挥作用的地方。我们拿到预训练好的 LLM 以及它目前的能力,基本上重复之前的做法——也就是一次预测一个单词——但这一次我们仅使用高质量的指令和响应对作为训练数据。
这样一来,模型就不再仅仅是一个文本补全器,而是学会成为一个有用的助手,能够遵循指令并以符合用户意图的方式作出响应。这个指令数据集的规模通常远小于预训练数据集,因为高质量的指令-响应对通常需要人工提供,其生成成本远高于我们在预训练中使用的廉价自监督标签。这也是这一阶段被称为监督式指令微调的原因。
此外,一些 LLM(例如 ChatGPT)还会经历第三个阶段,即通过人类反馈进行强化学习(Reinforcement Learning from Human Feedback,RLHF)。我们在这里不会详细展开,但其目的与指令微调类似。RLHF 也有助于实现对齐,并确保 LLM 的输出能够反映人类的价值观和偏好。有一些早期研究表明,这个阶段对于达到或超越人类水平的表现至关重要。事实上,将强化学习与语言建模相结合被证明极具前景,很可能会使我们目前的 LLM 获得巨大提升。
现在,让我们通过一些常见用例来检验我们的理解。
首先,为什么 LLM 能够对较长的文本进行摘要?(如果你还不知道,它的表现确实非常出色。只需粘贴一份文档,然后让它生成摘要即可。)
要理解其中的原因,我们需要考虑训练数据的情况。事实上,人们经常会对文本进行摘要——无论是在互联网上、研究论文中、书籍中,还是其他地方。因此,一个在这些数据上训练出来的 LLM 也学会了如何进行摘要。它学会了抓住主要观点,并将它们压缩成一段简短的文本。
请注意,当生成摘要时,完整的文本其实是 LLM 的输入序列的一部分。这类似于一篇研究论文,其中结论部分出现在完整正文之后。
因此,这项技能很可能已经在预训练阶段学到了,尽管毫无疑问,指令微调进一步提升了这一技能。我们可以假设,在这一阶段的训练中也包含了一些摘要的例子。
其次,为什么 LLM 能回答常识性问题?
如前所述,能够作为助手并作出恰当响应的能力归功于指令微调和 RLHF。但回答问题所需的所有(或大部分)知识本身早在预训练阶段就已经获得了。
当然,这就引出了另一个大问题:如果 LLM 不知道答案怎么办?不幸的是,在这种情况下它可能会凭空编造一个答案。要理解原因,我们需要再次考虑训练数据和训练目标。
你可能已经听说过“幻觉”(hallucination)这个术语,在 LLM 的语境下,它指的是 LLM 在不应该的时候编造事实的现象。
为什么会发生这种情况呢?嗯,LLM 只学会生成文本,而不是生成事实正确的文本。它的训练过程中没有任何内容能为模型提供关于训练数据真伪或可靠性的指示。然而,这甚至不是主要问题;真正的问题在于,互联网上和书籍中的文本通常听起来非常自信,因此即便内容错误,LLM 也会学会以同样自信的方式表达。这样一来,LLM 很难表现出不确定性。
话虽如此,这仍然是一个活跃的研究领域,我们可以期待随着时间的推移,LLM 会越来越不容易产生幻觉。例如,在指令微调过程中,我们可以尝试在一定程度上教导 LLM 避免产生幻觉,但能否完全解决这一问题,还要拭目以待。
你可能会惊讶,其实我们现在就可以一起尝试解决这个问题。我们已经掌握了所需的知识,可以找到一种至少部分有助于缓解这一问题,并且目前已经被广泛应用的解决方案。
假设你问 LLM 以下问题:哥伦比亚现任总统是谁?LLM 很可能会给出错误的名字。这可能有两个原因:
第一个原因就是我们之前提到的:LLM 可能会产生幻觉,直接回答一个错误甚至虚假的名字。
第二个原因我就不多说了:LLM 的训练数据只截止到某个特定时间点,这个时间点可能早至去年。因此,LLM 甚至不能确定当前的总统是谁,因为自数据生成以来情况可能已经发生了变化。
那么我们如何才能同时解决这两个问题呢?答案在于为模型提供一些相关的上下文。其原理在于,LLM 输入序列中的所有内容都是它可以直接处理的,而它在预训练中获得的隐含知识则更难以准确提取。
假设我们将关于哥伦比亚政治历史的维基百科文章作为上下文提供给 LLM,那么它回答正确的可能性就会大大增加,因为它可以直接从上下文中提取出正确的名字(前提是这篇文章是最新的,并且包含了现任总统的信息)。
在上图中,你可以看到一个带有额外上下文的 LLM 提示(prompt)的典型样例。(顺便提一句,prompt 只是我们给 LLM 的指令的另一种说法,也就是说,这些指令构成了输入序列。)
这一过程被称为将 LLM 与上下文(或者说与现实世界)相结合,而不是让它自由生成文本。
这正是 Bing Chat 和其他基于搜索的 LLM 的工作原理。它们首先利用搜索引擎从网络上提取相关的上下文,然后将所有这些信息与用户的初始问题一起传递给 LLM。请参见上图,了解这一过程的可视化展示。
神奇的 AI
我们现在已经到了一个阶段,你基本上理解了目前最先进的 LLM 的主要机制。
你可能会想:“其实这并没有什么魔力”——毕竟所有发生的事情只不过是一次次地预测单词而已。毕竟,这完全就是统计学的应用。真的是这样吗?
让我们稍微回顾一下。真正神奇的地方在于它的工作效果异常出色。事实上,每个人,甚至 OpenAI 的研究人员,都对这种语言建模能够达到的效果感到惊讶。近年来的一个关键推动因素就是神经网络和数据集的大规模扩展,性能也随着它们的增长而显著提升。例如,据报道,GPT-4 是一个总参数量超过一万亿的模型,它在律师资格考试或 AP 生物考试中能取得前 10% 考生的成绩。
令人惊讶的是,那些大型 LLM 甚至展现出了一些新兴能力,也就是解决任务以及完成那些它们并未被明确训练过的事情的能力。
在本文的最后部分,我们将讨论一些这些新兴能力,并向你展示一些如何利用它们来解决问题的小技巧。
一种普遍出现的新兴能力,正如其名称所暗示的那样,是指 LLM 能够执行在训练中从未遇到过的全新任务,这被称为零样本(zero-shot)能力。只需要提供一些关于如何解决该任务的指令即可。
为了用一个有趣的例子来说明这种能力,你可以要求 LLM 将一句德语翻译成英语,并且要求其回答中只包含以字母 “f” 开头的单词。
例如,当被要求用仅包含以 “f” 开头单词的方式翻译一句话时,某个 LLM 将德语句子 “Die Katze schläft gerne in der Box”(德语,字面意思是“猫喜欢在盒子里睡觉”)翻译为 “Feline friend finds fluffy fortress”(猫咪朋友找到毛茸茸的堡垒),我觉得这是一个相当酷的翻译。
对于更复杂的任务,你可能很快就会意识到,零样本提示通常需要非常详细的说明,即使如此,其表现往往也远非完美。
再与人类智能做个类比:如果有人让你执行一项新任务,你很可能会要求提供一些示例或演示,看看任务究竟是如何完成的。LLM 也可以从这种方式中受益。
举个例子,假设你希望模型将不同的货币金额转换成统一格式。你可以详细描述你的需求,也可以只给出简要的指令和一些示例演示。
上图展示了一个示例任务。使用这个提示,模型在最后一个示例“Steak: 24.99 USD”上应该能表现得不错,并回应为 $24.99。
注意,我们只是简单地省略了最后一个示例的答案。记住,LLM 本质上还是一个文本补全器,因此保持结构的一致性非常重要。你几乎应该迫使模型仅按照你想要的方式作出回应,就像我们在上面的例子中所做的那样。
总而言之,一个普遍的建议是:如果 LLM 在零样本方式下难以完成任务,那么提供一些示例通常会帮助它更好地理解任务,从而使其表现更好、更可靠。
另一个有趣的 LLM 能力同样让人联想到人类智慧。尤其当任务较为复杂、需要多步推理才能解决时,这项能力就显得尤为有用。
假设我问你:“在 Lionel Messi 出生前一年,谁赢得了世界杯?”你会怎么办?你可能会一步步地解决这个问题,写下所有必要的中间步骤,最终得出正确答案。而 LLM 正是能够做到这一点。
研究发现,简单地告诉 LLM “think step by step”(一步一步思考)就能在许多任务中大幅提升其表现。
为什么会这样呢?我们已经掌握了解答这个问题所需的一切。问题在于,这种复杂的复合知识可能并不直接存在于 LLM 的内部记忆中,但所有单独的事实——比如 Messi 的生日以及历届世界杯的冠军——可能是存在的。
让 LLM 逐步构建出最终答案有助于其“边思考边输出”,也就是拥有一个工作记忆,使它能先解决较简单的子问题,再给出最终答案。
关键在于要记住,待生成单词左侧的所有内容都是模型可以依赖的上下文。所以,如上图所示,当模型说出 “Argentina” 时,我们查询的 Messi 生日和世界杯年份已经存在于 LLM 的工作记忆中,这就使得正确回答问题变得更加容易。
总结
在结束之前,我想回答一下文章前面提出的一个问题:LLM 真的是仅仅在预测下一个单词,还是还有更多的内涵?一些研究者主张后者,他们认为,为了在任何情境下都能如此出色地进行下一个单词预测,LLM 必须在内部获得对世界的一种压缩理解,而不是像其他人所说的那样,模型仅仅学会了记忆和复制训练过程中看到的模式,而对语言、世界或其他任何事物没有真正的理解。
目前,这两种观点之间可能没有明显的对错之分;这或许只是观察同一现象的不同角度。显然,这些 LLM 正证明自己非常有用,展示了令人印象深刻的知识和推理能力,甚至可能闪现出一些通用智能的火花。但是,它们在何种程度上类似于人类智能,以及语言建模还能在多大程度上推动技术进步,这些问题仍有待确定。
我希望这篇文章能帮助你理解 LLM 以及围绕它们的当前热潮,从而让你能够形成自己对 AI 潜力和风险的看法。决定如何利用 AI 来造福世界不仅仅是 AI 研究者和数据科学家的责任;每个人都应该有发言权。这正是我想写一篇不需要大量背景知识的文章的原因。
如果你能坚持读完这篇文章,我认为你至少在宏观层面上已经基本了解了一些最先进的 LLM 的工作原理。
最后,我想分享一些我对当前人工智能和 LLM 状况的最终看法。
https://medium.com/data-science-at-microsoft/how-large-language-models-work-91c362f5b78f