XuLaLa.Tech

首页客户端下载Windows 使用V2Ray 教程SSR 教程Clash 教程

要开始使用 ChatGPT,只需阅读这篇文章。

2024.06.25

哈喽大家好我是站长,美区火箭apple ID 土耳其apple ID 其他apple ID 账号资源,可加微信: 咨询 公众号:Ai

也许你用过 ChatGPT,也许你没用过,但这并不妨碍 AI 进入我们的世界。

ChatGPT可以实现很多功能,它可以回答问题、撰写文章、翻译文本、编写代码、提供思路等等。

但ChatGPT是如何实现这些功能的,它是如何工作的,以及未来又会如何发展。

我觉得了解这背后的原理和知识可以帮助大家更好地理解ChatGPT,更好地使用这样的超级AI工具。

通过这篇文章,我将从非技术人员和新手的角度来看看 ChatGPT 的工作原理。

首先,重要的是要知道,当您与 ChatGPT 进行对话时,您实际上是在与一个称为“语言模型”的计算机程序进行交互。

ChatGPT 是基于 GPT 架构的大型语言模型,它通过接受和分析你的输入指令,生成合乎逻辑、合理、连贯的自然语言输出。

从ChatGPT官网OpenAI上可以看到如下的文字介绍ChatGPT模型方法。

我将这段话输入ChatGPT,让它翻译成中文。

结果是:

我们使用强化学习与人类反馈 (RLHF) 方法训练了此模型,遵循与 InstructGPT 相同的方法,但数据收集设置略有不同。我们首先使用监督微调训练了一个初始模型:人类 AI 教练提供对话,他们扮演用户和 AI 助手的双方。我们允许教练访问模型生成的建议,以帮助他们撰写回复。我们将这个新的对话数据集与 InstructGPT 数据集混合,并将其转换为对话格式。为了创建强化学习的奖励模型,我们需要收集由两个或更多按质量排序的模型响应组成的比较数据。为了收集这些数据,我们使用了 AI 教练和聊天机器人之间的对话。我们随机选择了一条由模型生成的消息,抽样了几个备选完成方式,并让 AI 教练对它们进行排名。使用这些奖励模型,我们使用紧密的策略优化方法对模型进行了微调。我们多次迭代了这个过程。

在这一段的描述中,有几个关键词需要注意:带人工反馈的强化学习(RLHF)、监督微调训练、奖励模型。

这些听上去很专业的术语,其实就构成了ChatGPT模型的核心工作原理。只要理解了这三个术语,也就理解了ChatGPT模型的核心原理。

在此之前,我们先来看一下ChatGPT的英文名。Chat很好理解,就是对话、聊天的意思。G、P、T三个英文字母涵盖了这个对话机器人生成内容的过程。

我们先来看看G、P、T分别是什么。

第一个英文单词是——G(Generative),G代表生成,指的是从给定的输入生成输出,输入可以是文本,图像,或者我们提供的任何其他类型的数据。

在ChatGPT的情况下,输入是用户提出的问题或对话的上下文,输出是ChatGPT生成的答案或对话的延续。

生成可以通过多种方式实现。在ChatGPT中,是通过训练GPT模型来实现的。

在训练期间,模型学习输入和输出之间的关系,以便在测试时产生预期的输出。

第二个英文单词是——P(Pre-Training)

预训练是指使用大量无标签的文本数据来训练ChatGPT模型。Pre是提前的意思。

在此阶段,ChatGPT模型将被训练自动学习语言的结构和规则,例如词语之间的关系,上下文信息等,以获得丰富的语言知识。

预训练模型通常使用大型语料库进行训练,这些语料库会将大量数据输入到 ChatGPT。这些语料库包括互联网上的文本、书籍、新闻报道、社交媒体帖子等。

需要记住的是,这些语料库中没有标签或标记(记住这一点,我们稍后会讨论标记)。因此,模型需要通过自学习来尝试理解它们。

请看下面的图表,其中列出了期望库来自的不同领域,并且它们所占的比例也不同。

例如,OpenAI 的 GPT 模型提供了不断增加的语料库。

在预训练阶段,模型学习语言的结构和规律,理解词语之间的关系和上下文信息,从而生成连贯自然的文本,在文本分类、问答系统等各类自然语言处理任务中表现出色。

不同版本 GPT 的预训练数据量正在以惊人的速度增长,看下面的数据,GPT-3 的预训练数据量已经达到了 45TB。

TB 是什么概念?10 的 12 次方个字节,大约是 1000000000000 个字节,也就是 1024GB。而 1TB 可以存储 1000GB 的数据。可见数据量之庞大。

第三个字母——T。在ChatGPT中,T代表“Transformer”,一种广泛应用于自然语言处理任务的深度学习模型。

Transformer 最初由谷歌于 2017 年提出,主要用于机器翻译任务,但很快就被证明在许多其他 NLP 任务上非常有效。

Transformer 的主要特点是在处理长序列数据时能够保持良好的效果。Transformer 使用一种称为“自注意力机制”的方法,通过对输入序列中每个元素进行加权聚合来计算输出序列的表示。

例如:假设我们要训练一个语言模型,给定一段文本的前几个单词,模型需要预测下一个单词是什么。

为了训练这个模型,我们需要将文本转换成数字形式。例如,每个单词可以表示为一个独热向量。

如果我们使用传统的神经网络模型,例如全连接神经网络或者循环神经网络(RNN),我们需要将每个独热向量映射到一个低维向量表示,通常称为词嵌入。

然而,这种方法有一些缺点。

首先,由于独热向量是高维的,矩阵乘法的开销可能非常大,尤其是在处理大量词汇时。

其次,传统的神经网络模型可能难以处理长序列,因为它们需要在每个时间步进行计算,并且计算的复杂性会随着序列的长度而增加。

Transformer模型利用自注意力机制解决了这些问题。

自注意力机制允许模型在计算嵌入向量时考虑所有其他单词的信息,而不仅仅是输入序列中的前几个单词。这使得模型能够更好地处理长序列,而不需要像传统模型那样进行矩阵乘法。

例如:当我们要做一道数学题的时候,通常需要进行多步计算。

如果只用纸笔来计算,我们需要反复记下计算过程,记录中间结果,最后再进行总结,而使用计算器可以让我们更轻松地完成这些计算步骤。

在这个例子中,我们可以将笔和纸比作传统的机器学习算法,将计算器比作使用 Transformer 的机器学习模型。

使用Transformer机器学习模型就像使用计算器一样,可以更快速地完成计算,并且不需要像纸笔那样记录中间结果。

这时Transformer模型就派上用场了,它可以更有效地处理数据,从而提高模型的准确性和效率。

说完GPT三个字母,大家可能对GPT的底层原理已经有了一个大概的了解,也就是:

√ 海量数据预训练

√ 利用Transformer模型的自注意力机制

√它具有生成性。

这时候通过GPT(Generative Pre-trained Transformer)的方法,ChatGpt其实是可以生成结果的,核心方法有点类似我们所说的文字链游戏。

比如你在ChatGPT中输入“中国的首都”,它会生成相关的词汇,但根据其数据可能会有不同的答案,如“美丽”、“在北方”、“有天安门”、“北京”等等。

显然,这个答案是不准确的。

此时,你可以把ChatGPT想象成一个拥有一些知识和词汇量,但说话时不考虑情景和逻辑的孩子。

因此我们需要对ChatGPT的答案进行微调,这时候就需要人为的干预,告诉它在这样的语言环境下,我们希望产生什么样的结果。

同时,我们也应该告诉他要多一些善良,多一些人类的情感,多一些人类的期望。

即在预训练之后,ChatGPT通过监督微调、奖励模型、强化学习技术进一步优化,以满足特定任务的要求。

原理如图所示,分为三步:

第一步叫做:监督微调训练。

具体步骤是,首先从指令数据集中选取一些样本,然后将预期的回答结果/行为添加到这些样本中,最后利用这些数据生成模型来训练GPT。

从前面的介绍我们都知道,ChatGPT 最初是在无监督条件下训练的,也就是说它是使用大量未标记的数据进行训练的。

然而,为了让 ChatGPT 更好地适应特定领域或任务,研究人员开发了一种监督微调(SFT)模型。

监督微调 (SFT) 是一种用于自然语言处理 (NLP) 的监督学习方法,它根据人类提供的数据对预训练的语言模型进行微调。

使用标记数据集对 SFT 模型进行微调,以提高 ChatGPT 的性能。

例如,当 ChatGPT 用于客户服务领域时,可以使用有关客户问题和解决方案的数据集来微调 ChatGPT,从而提高其响应的准确性和相关性。

在ChatGPT中,采用监督微调的方法对预训练模型进行微调,以提高对话生成的质量和连贯性。

通常,人类 AI 训练师提供的对话数据用于让模型学习如何生成自然流畅的对话。

同时,ChatGPT还提供模型生成的建议,帮助训练者撰写答复。

通过反复对模型进行微调,可以提高模型在对话生成任务上的表现,从而提供更加智能、自然的对话体验。

以下是一些常见的数据标注方法:

“命名实体识别”(NER):注释文本中具有特定含义的实体,例如人名、地名、组织名称等。

词性标注(POS):标记文本中每个词的词性,如名词、动词、形容词等。

“语义角色标注”(SRL):标注文本中每个词在句子中所起的角色,如主语、谓语、宾语等。

情感分析:标记文本的情感,例如积极、消极、中性等。

“文本分类”:标记文本所属的类别,例如新闻分类、垃圾邮件过滤等。

“监管微调案”

假设我们想训练一个 ChatGPT 来帮助用户预订航班。我们可以先从扮演用户和机器人角色的人类训练师那里收集对话数据。

例如,一名受训人员可能会说:“我想预订从纽约飞往洛杉矶的航班。”

然后聊天机器人会回答:“好的,你想什么时候去洛杉矶?”

培训师会回答说:“我想下周末离开纽约,下下周末返回纽约。”

这次对话将被记录并添加到我们的训练数据中。

然后我们将这些对话数据输入到 ChatGPT 的初始模型中进行监督微调。

在微调过程中,聊天机器人将尝试学习如何根据用户的请求生成正确的响应。

在这个过程中,我们可以利用人类训练师的专业知识来指导聊天机器人的学习,帮助它更好地理解人类语言并产生更自然的反应。

例如,在我们的机票预订示例中,培训师可以提供一些与机票预订相关的专业术语,例如“经济舱”、“头等舱”、“转机”、“直飞”等。

聊天机器人将尝试学习如何使用这些术语,并根据用户的请求提供有用的建议。

随着我们不断地训练和微调聊天机器人,它将越来越熟练地理解人类语言并提供更准确的回答。

比如上面的案例,经过人类训练师的训练之后,中国首都是这样的判断就变得更加偏颇了,而且它们的权重也是不一样的。

“北京”一词可能会被赋予更高的权重,而“非常美丽”则会被赋予较低的权重。

“奖励模式”

监督微调模型之后的第二步称为奖励建模。

具体来说,奖励模型的工作流程如下:

▼“收集数据”:首先需要收集大量人工标注的数据,包括模型生成的对话响应,以及一些其他的替代响应。

▼ “建立对比模型”:接下来,你需要建立一个模型来对比不同对话回复的质量。对比模型可以是基于规则的,也可以是基于机器学习的。

▼ “比较”:在模型生成对话答案的同时,从候选答案中随机选择一些答案,使用比较模型进行评估,并将分数返回给ChatGPT。

▼ “训练代理”:ChatGPT 将根据对比模型的反馈,使用强化学习来训练代理。

代理每次生成对话响应时都会选择一个响应,并通过比较模型的反馈来优化其策略,以获得更高的奖励。

▼“调整生成策略”:通过不断训练代理,ChatGPT可以不断调整其生成策略,以提高生成对话的质量和自然度。

比如前面的例子中,如果AI机器人选择了北京,那么就会获得更高的分数奖励。

简而言之,奖励模型的作用是通过与人类专家的交互获得对生成响应质量的反馈信号,从而进一步提高ChatGPT的生成能力和自然度。

“值得学习的案例”

假设我们正在训练 ChatGPT 提供旅行信息,并且我们希望机器人根据用户反馈改进其答案。我们可以使用奖励模型来收集用户反馈并提高机器人的性能。

首先,我们需要确定一个指标来评估 ChatGPT 答案的质量。

例如,训练师可以使用准确性、流畅性和帮助性作为衡量标准。然后我们可以要求用户在与机器人互动时对机器人的响应进行评分。

假设有用户问:“我想去巴黎,有什么好玩的景点?”

机器人回答说:“巴黎有埃菲尔铁塔、卢浮宫、巴黎圣母院等著名景点。”

用户可以选择向机器人提供正面或负面的反馈,或者不留下任何评论。

如果用户给出积极的反馈,我们可以将其视为奖励并将其添加到奖励模型中。

如果用户给出负面反馈,我们可以将其视为惩罚并将其添加到奖励模型中。

通过积累足够的奖励和惩罚数据,机器人可以逐渐学会如何提供更好的答案以获得更多积极的反馈。

例如,如果机器人回答“我不知道”或“我不确定”,用户可能会给出负面反馈,这可以帮助机器人学习更好地回答用户的问题。

另一方面,如果机器人能够提供详细、有用的信息,用户可能会给予积极的反馈,这将有助于机器人进一步提高性能。

通过使用奖励模型,我们可以不断优化机器人的性能,以便它更好地满足用户的需求。

“强化训练”

第三步,强化训练。

在上一步的奖励模型基础上,利用PPO强化学习对GPT进行进一步优化。

ChatGPT的强化学习模型是基于上下文生成模型和奖励模型进行训练的,主要包括以下步骤:

▼ “收集对话数据”

首先,ChatGPT需要收集大量的对话数据,包括用户与机器人的对话,以及机器人与自身对话的数据。

▼训练上下文生成模型

ChatGPT 利用收集到的对话数据,通过监督学习方法训练上下文生成模型。

在训练过程中,ChatGPT 将机器人的响应作为输出,将之前的对话历史作为输入,让模型预测机器人应该如何响应。

▼“构建奖励模​​型”

ChatGPT 需要一个奖励模型来衡量机器人响应的质量。

为此,ChatGPT 首先从训练数据中选择一些对话并随机生成一些可能的响应,然后交给人工审阅者进行评分。

然后,ChatGPT 使用这些评分结果来训练奖励模型,让模型根据当前对话内容评估机器人响应的质量。

▼训练强化学习模型

利用上下文生成模型和奖励模型,ChatGPT 开始使用强化学习来训练机器人。

具体来说,ChatGPT 使用一种称为近端策略优化(PPO)的算法来训练机器人。

PPO是一种基于策略梯度的强化学习算法,通过不断试错、优化机器人的策略来最大化机器人的累积奖励。

▼「持续优化」

最后,ChatGPT还会不断优化机器人的强化学习模型,通过不断的试错和反馈,进一步提高机器人的性能。

综上所述,ChatGPT 的强化学习模型通过上下文生成模型和奖励模型来训练机器人,以最大化机器人的累积奖励。

这种方式使得机器人能够根据当前的对话上下文自主做出最佳响应,从而提高机器人的交互质量和用户体验。

以下是强化学习的一个简单例子:

假设有一个机器人想要学习玩迷宫游戏。

这个迷宫由很多房间和通道组成,机器人需要找到一条通往迷宫出口的路径。我们使用强化学习来训练机器人。

首先,我们定义机器人的动作。

在这个例子中,机器人可以选择四个动作之一:向上、向下、向左或向右移动一个方格。然后,我们定义机器人的状态。在这个例子中,机器人的状态是它所在的房间。

我们还需要定义机器人的奖励。

当机器人到达迷宫出口时,它会获得正奖励,但当机器人到达死胡同或回溯其脚步时,它会获得负奖励。

这鼓励机器人尝试寻找最短路径并避免回溯或陷入死胡同。

接下来,我们让机器人在迷宫中随机移动,并记录它采取的动作、所处的状态以及收到的奖励。

然后,我们使用这些数据来训练强化学习模型,让机器人更好地了解如何在迷宫中移动。

每次训练后,模型都会尝试更新机器人采取不同行动的概率,以便它在未来的游戏中做出更好的决策。

经过多次训练,机器人将能够学会如何避开死胡同和回溯,找到最短路径,获得最大奖励,这就是强化学习的基本原理。

基于前面的例子,ChatGPT 不断训练自己,找到符合正常逻辑的答案。

综上所述,ChatGPT 是一个强大的自然语言生成工具,它基于 Transformer 网络架构,并使用深度学习、监督微调、奖励模型和强化学习模型等技术来生成合理、流畅、相关的对话响应。

通过这些技术的结合,ChatGPT可以提供类似于人类对话的体验,并为用户提供有用的信息和支持。

如今,我们正处于AI无处不在的转折点,ChatGPT引发的AI浪潮,其规模堪比工业革命和电力的发明。

未来的竞争,不是人类与人工智能之间的竞争,而是掌握人工智能的人与不掌握人工智能的人之间的竞争。

领先一步,掌握最流行的AI工具和知识,将让你在未来的生活和工作中拥有超强的竞争力。

哈喽大家好我是站长,美区火箭apple ID 土耳其apple ID 其他apple ID 账号资源,可加微信: 咨询 可扫码下方关注公众号获取账号教程资源

© 2010-2022 XuLaLa 保留所有权利 本站由 WordPress 强力驱动
请求次数:69 次,加载用时:0.665 秒,内存占用:32.19 MB