ChatGPT到底是如何工作的?-玩转AI大模型论坛-副业网赚-海豚优课

ChatGPT到底是如何工作的?

ChatGPT,学名全称:聊天生成训练转换器(英語:Chat Generative Pre-trained Transformer),是OpenAI 开发的人工智能聊天机器人程序,于2022年11月推出。近几个月来,像ChatGPT这样的人工智能聊天机器人吸引了全世界的注意力,因为它们能够以类似人类的方式就几乎任何话题进行有效的交流。

image

它就像一个超级聪明的AI聊天机器人,似乎无所不知。它可以做任何事情,从你的家庭作业,到写一封求职信,再到编程代码、撰写文章、回答问题,等等。根据测试,回答问题的水平高于常人测试者。

许多人自然会问,像ChatGPT这样的人工智能聊天机器人,到底是如何工作的呢?这里,我们尽量用通俗的语言给予简单、基本的解释。

我们许多人知道互联网搜索引擎,如谷歌、百度等,能够进行大量的数据库查找,并提供一系列可能会回答你查询的匹配项。ChatGPT的强大功能在于能够根据其接受过训练的大量文本数据生成所谓的语料库,用以解释特定查询的上下文和含义,并以语法正确的自然语言生成相关答案,从而有了上述的应用。

那么,它具体是怎样工作的呢?

首先,需要搞清的是,它不是先知先觉,它本身不会自动变得聪明,它不能像人类那样灵活地学习新东西,它从被告知要学习的任何内容中学习。它本身是有一个知识库,并用它来回答你的问题。

这个知识库接受了来自书籍、互联网络、新闻文章、小说科技论文期刊及其他数据,以用于训练它。这些训练材料的日期至今收集到大约2021年9月为此。也就是说,在此以后任何更新的信息,比方说对于最近这几个月,最近这几周、或最近这几天的新信息等,它都一无所知。如果想得到这种新的答案,必须教会它这些新的信息材料。

如果用一句话来简单概括它的工作原理就是,通过大规模训练人工智能神经网络来学习语言模型,然后使用这个语言模型来生成自然流畅的文本或完成其他自然语言处理任务

如果再用稍稍专业的语言来描述是:ChatGPT是一种基于深度学习技术的自然语言处理模型,其基本原理是利用神经网络模拟人类的语言处理能力。ChatGPT的核心组成部分是一个很深的多层神经网络,这个神经网络使用了一种称为“Transformer”(转换器)的架构。这个架构允许模型同时处理多个输入,并能够注意到输入之间的关联性。

上面的工作原理的定义是什么意思?首先,我们最简单地来看看ChatGPT是怎么做的,然后再进一步地解释这一点。

image

例如我现在向它输入一个问题,“用非常简单的术语两句话解释量子力学”。ChatGPT 的实际输出是这样的:“量子力学是一种研究微观世界(比如原子、分子、粒子)的物理学理论,它描述了微观粒子的行为和相互作用,包括波粒二象性、不确定性原理等。”

image

一般来讲,这个答案不错。那么,它是怎么想到这个答案的呢?

它所做的基本上是估计哪些单词、短语和句子可能与我刚刚输入的内容相关联,然后它会选择它认为最有可能与输入相关联的单词和句子。

因此,它会尝试理解你的提示,然后根据它所训练的数据输出它预测最能回答你问题的单词和句子。它还会随机化一些输出,以便你针对相同输入获得的答案通常会有所不同。因此,例如,当我要求它重新生成对应于之前相同的问题的响应时,我们会得到这个答案:

image

“量子力学是一种研究微观世界中粒子运动科学,它描述了微观粒子(如原子、分子、电子等)的行为和性质,其中最重要的概念是“波粒二象性”和“量子叠加态”。”

一般来说,这也是一个很好的答案。我们现在进一步地来看看它,在这个背后具体发生了些什么?

关于ChatGPT的基本工作原理需要了解的第一件事是,它首先是在试图了解你的输入,与数十亿页的网页、书籍和其他数据上的文字进行比较,然后试图确定最有可能出现的词语。这是一个受过训练的、巨大的数据集,形成为一个深度学习神经网络。

简而言之,这是一种多层加权算法,类似于我们所认知的人脑的工作方式,使它能够学习文本数据中的模式和关系。它利用这种学习的一种方式,是通过预估任何给定句子中的下一个文本,来创建类似人类的响应。

 

我们常常在手机上打字时,手机会自动提示你一个可能即将要打出的一个词。像ChatGPT这样的人工智能聊天机器人,会自动提示的不仅是一个词,而是一个句子以及整个段落。它试图创建的是完全连贯的句子及其段落作为对任何输入的响应。

有人可能又会问,这是如何具体做到的呢?我们举一个简单例子来说明。假设我们向它提出这样一个非完整问题,“量子力学是……”。在它的背后所发生的处理过程是这样的。它根据该文本中的所有实例元素计算下一个词是什么,以及出现的时间是多少。

它不是从字面上看文本,而是从上下文和含义中寻找匹配项。结果是它会生成一个可能跟在后面的单词的排名列表,以及它们的“概率”。例如,在编写“量子力学是….”的后面,它可能会选择下一个这样的不同的输出单词:

 

它会根据概率及内置随机性选择输出完全不同、同时又较为自然连贯的词语所组成的答案。比如说对于我关于我们上面的问题,它的回答过程是:

  • 量子力学是
  • 量子力学是一门
  • 量子力学是一门研究
  • 量子力学是一门研究微观世界
  • 量子力学是一门研究微观世界的物理学科,
…..,等等,这样一直做下去。所以它的计算可为之后的一个又一个的下一个单词产生类似这样的结果。
它基本上是在自己问自己:“给定目前的文本,下一个词应该是什么?” 每次它问这个问题时,它都会添加一个词。所以它会不断添加单词,直到完成输出。基于长度和格式的粗略标准,模型中内置了一个停止机制。
你可能认为它总是会选择概率最高的词。但它并不总是那样做。内置有随机性,因此它的答案可以更有创意。比如上面的对同一问题的两种答案输出都不错,但它们是不同的。因为有很多可能的下一个词,所以每次任何人提出完全相同的查询时,答案都可能并不相同。
这个模型不只是想出下一个词,它还在句子和段落级别工作,因此它可以输出例如可能符合第一句话的上下文和含义的最佳句子。从根本上说,这就是模型正在做的事情。它正在逐步选择它确定的对查询的最佳响应。但是,仅仅完成句子的模型显然是不够的。
比方说,我们问它类似“解释量子力学的原理”之类的问题,它必须使用不同的策略。如果ChatGPT仅使用句子完成模型,它的答案响应可能类似于:“根据薛定谔方程解释量子力学是如何工作的……”,这往往不是用户所寻求的答案。
所以现在的问题是,如何训练模型以更恰当的对话方式做出回应。这一切都归结于它的训练方式。
在训练过程的第一个阶段,人工训练师扮演用户和理想聊天机器人的角色。每个训练都包含一个对话,其中人类用户和人类作为聊天机器人进行对话。这两个角色可以是同一个人。基本思想是训练模型进行类似人类的对话。与真实人类的对话过程历史被输入到模型中。
通过这种方式,模型可以最大化地学习在任何特定的对话交流中选择正确的单词和句子序列的概率。通过这种受监督的人工授课过程,它学会了输出,不仅仅是完成句子的输出。它学习有关各种输入的上下文和含义的模式,以便它可以做出适当的响应。这就是为什么与ChatGPT聊天有时看起来在另一端好像是人而不是机器。
这个训练过程还没结束。然后是训练第二阶段,进一步微调以便良好输出,开发人员会教ChatGPT为每个输出分配奖励或排名。比方说,培训师可能会问模型“描述一个原子”之类的问题 – 可能的答案有:a) 它是由电子、中子和质子组成的物质的最小部分;b) 它是一种基本化学元素;c )它是由亚原子粒子构成的物体;d) 它是一种最小粒子。人工训练师将这些可能输出答案由好到差地排名次,譬如像这样排名系统模型:A好过C,C好过B,B好过D,从而教导ChatGPT批判性地评估最佳输出可能是什么。
接下来的问题是训练规模,在这种类型的监督学习中,仅仅使用人类培训师是不够的。人类培训师必须随时预测任何用户可能请求的任何潜在查询的所有输入和输出。显然这是不可能的。但是,我们现在知道,ChatGPT没有这种限制。
你可以让它写一篇关于几乎任何主题的短篇故事,它会想出一些合理的东西。那么它是怎么做到的呢?
为此,它需要通过第三步训练过程,这一步被称为强化学习。这是一种无监督学习。在这个模型训练过程中,没有特定的输出与任何给定输入相关联。取而代之的是,模型经过训练 ,可以基于其早期的人工预训练,来学习输入数据中的底层上下文和模式。换句话说,模型使用了包括上面提到的排名系统在内的预训练,为无监督训练阶段形成其输出的基础。
通过这种方式,这种模型可以处理来自各种来源的海量数据,从几乎无限量的主题的文本和句子中学习模式。而且它可以自己完成,因此可以将人工授课的训练扩展到庞大的数据集。
这种数据集有多庞大?譬如,用于训练基于GPT-3.5的ChatGPT数据集大约有45太字节的数据。今天你可以花不到100元购买具有1个太字节的闪存驱动器,这看起来存量并不多,但这可以处理大量的文本。
1 太字节(TB) = 1024吉字节(GB)= 1024 x 1024兆字节(MB) = 1024 x 1024 x 1024千字节(KB) = 1024 x 1024 x 1024 x 1024 字节。字节是最小的计算机存储单位。
每一个太字节相当于8千3百万页书的信息。它足够的大,可以让ChatGPT以足够的规模学习单词和短语之间的模式和关系,这样它就可以为几乎任何查询提供相对有意义的输出。
对于ChatGPT来说,最重要的是训练数据的数量和质量。训练数据越多,模型学习到的知识就越全面,因此可以生成更自然、流畅的文本。而质量则关乎训练数据的准确性、代表性和多样性。为了获得高质量的模型,需要使用大规模、高质量的语料库,并使用有效的数据预处理和清洗技术来清除噪声和不良数据。
GPT-3是OpenAI发布的第三代语言模型,它具有1750亿个参数,可以生成高质量的自然语言文本,被广泛应用于语言处理领域。GPT-3.5则是GPT-3的增强版本,具有更高的效率和更好的性能。新的的GPT版本将接受更多数据的训练,并且将进行更精细的调整,所以它应该更为强大。
以上就是像ChatGPT这样的人工智能聊天机器人的最简单、最基本的工作原理。因篇幅所限,这里我们未能具体解释其中的文本信息如何转换为数字的方式,以及像ChatGPT这样的神经网络是如何工作的一些必要的数学机理。如果感兴趣,你可以进一步学习这些有关方面的内容。
请登录后发表评论

    没有回复内容