Code前端首页关于Code前端联系我们

深入探讨 ChatGPT 的工作原理 - 大型语言模型如何工作?

terry 2年前 (2023-09-23) 阅读数 67 #AI人工智能

文章主要讲述ChatGPT的运行原理。 ChatGPT是OpenAI开发的基于GPT-4架构的大型语言模型。首先,文章介绍了 GPT 的基本概念,旨在创建一个预测网络模型。 GPT 模型使用大量文本数据进行训练,以学习在各种情况下生成连贯的文本。

文章接着更详细地描述了训练过程,分为两个阶段:预训练微调。在预训练阶段,模型学习理解文本数据,包括词汇、语法、事实等;在微调阶段,使用有限的任务数据集对模型进行调整,以获得更准确的结果。作者还提到了训练数据的来源,强调从大量在线文本数据中提取知识的重要性。

在解释输出数据生成时,文章提到了一个关键技术:光线追踪。它是一种用于选择最佳文本序列的启发式搜索策略。此外,作者还强调了解决内容生成问题的策略,包括设置过滤器和调整温度参数。

最后,文章讨论了ChatGPT的局限性,例如在处理输入数据时可能存在偏差或无法回答某些问题。尽管如此,作者指出,ChatGPT 是一个强大的工具,可以为各种任务提供宝贵的帮助。


像 ChatGPT 这样的大型语言模型实际上是如何工作的?嗯,它们既非常简单又极其复杂。

ChatGPT 工作原理深入探究——大型语言模型是如何工作的?

您可以将模型视为一种根据某些输入计算输出概率的工具。在语言模型中,这意味着给定一个单词序列,它们会计算序列中下一个单词的概率,类似于高级自动完成。

ChatGPT 工作原理深入探究——大型语言模型是如何工作的?

要了解这些概率从何而来,我们需要讨论称为神经网络的东西。它是一种类似网格的结构,其中一侧输入数字,另一侧写入概率。它们比你想象的要简单。

ChatGPT 工作原理深入探究——大型语言模型是如何工作的?

想象一下,我们想要训练计算机来解决识别 3x3 像素上的符号的简单问题。我们需要这样一个神经网络:

  • 一个输入层
  • 两个隐藏层
  • 一个输出层。

ChatGPT 工作原理深入探究——大型语言模型是如何工作的?

我们的输入层由 9 个称为神经元的节点组成,每个像素一个。每个神经元都有一个从 1(白色)到 -1(黑色)的数字。我们的输出层由 4 个神经元组成,每个神经元代表一种可能的符号。它们的值最终将在 0 和 1 之间。

ChatGPT 工作原理深入探究——大型语言模型是如何工作的?

在这些之间,我们有一个神经元排列,称为 “隐藏”层。对于我们的简单用例,我们只需要两个。每个神经元都与相邻层中的神经元连接,权重的值可以在 -1 和 1 之间。

ChatGPT 工作原理深入探究——大型语言模型是如何工作的?

当值从输入神经元传递到下一层时,它会乘以权重。然后,神经元简单地将其接收到的所有值相加,将值压缩在 -1 和 1 之间,并将其传递给下一层中的每个神经元。

ChatGPT 工作原理深入探究——大型语言模型是如何工作的?

最后一个隐藏层中的神经元做同样的事情,但是将值压缩在0和1之间并将它们传递到输出层。输出层中的每个神经元都有一个概率,最大的数字是最可能的结果。

ChatGPT 工作原理深入探究——大型语言模型是如何工作的?

当我们训练这个网络时,我们向其中添加一张我们知道答案的图像,并计算答案与网络计算的概率之间的差异。然后我们调整权重以接近预期结果。但是我们怎么知道如何调整权重呢?

ChatGPT 工作原理深入探究——大型语言模型是如何工作的?

我们使用一种巧妙的数学技术,称为梯度下降反向传播来确定每个权重的哪个值会给我们带来最小的误差。我们重复这个过程,直到我们对模型的准确性感到满意。

ChatGPT 工作原理深入探究——大型语言模型是如何工作的?

这被称为高级神经网络——但这种简单的结构不足以解决自然语言处理的问题。相反,LLM 通常使用一种名为 Transformer 的结构,其中包含一些可以发挥很大潜力的关键概念。

ChatGPT 工作原理深入探究——大型语言模型是如何工作的?

首先我们来说说文字。我们可以不将每个单词作为输入,而是将单词拆分为 token,它可以是单词、子单词、字符或符号。请注意,它们甚至包含空格。

ChatGPT 工作原理深入探究——大型语言模型是如何工作的?

正如像素值在我们的模型中表示为 0 到 1 之间的数字一样,这些令牌也必须表示为数字。您可以为每个标记分配一个唯一的编号,然后就到此为止,但是还有另一种表示它们的方式可以添加更多上下文。

ChatGPT 工作原理深入探究——大型语言模型是如何工作的?

每个标记都可以存储在一个多维向量中,该向量指示其与其他标记的关系。为了简化,想象一下在二维平面上绘制单词位置。我们希望具有相似含义的单词彼此接近。这称为 嵌入

ChatGPT 工作原理深入探究——大型语言模型是如何工作的?

嵌入有助于在相似单词之间建立关系,但它们也可以捕捉类比。例如,单词“dog”和“puppy”之间的距离应该与单词“cat”和“kitten”之间的距离相同。我们还可以为整个句子创建嵌入。

ChatGPT 工作原理深入探究——大型语言模型是如何工作的?

变压器的第一部分是将我们的输入单词编码到这些嵌入中。然后,这些嵌入被传递到名为 attention 的下一个过程,该过程为 嵌入 添加更多上下文。 注意力在自然语言处理中非常重要。

ChatGPT 工作原理深入探究——大型语言模型是如何工作的?

嵌入 捕获具有多种含义的单词很困难。考虑一下 bank 这个词的两个含义。人类根据句子的上下文来推断正确的含义。每个句子中的MoneyRiver都是与bank相关的重要上下文。过程
ChatGPT 工作原理深入探究——大型语言模型是如何工作的?

attention 扫描整个句子,寻找提供词汇上下文的单词。然后重新调整嵌入权重,使“河流”或“金钱”一词在语义上更接近“词库”。

ChatGPT 工作原理深入探究——大型语言模型是如何工作的?

这个过程注意力被执行多次,以在多个维度捕获句子的上下文。经过所有这些过程,上下文嵌入最终被转移到一个产生概率的神经网络,就像我们前面提到的简单神经网络一样。

这是 LLM(语言模型,如 ChatGPT)工作原理的极大简化版本。为了简洁起见,本文的大部分内容已被省略或省略。

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门