预训练大型语言模型 在我们之前的所有任务中,我们都在使用标记数据集对神经网络进行特定任务的训练。对于像BERT这样的大型变压器模型,我们使用自监督的语言建模来构建一个语言模型,然后通过进一步的领域特定训练将其专门化为特定的下游任务。然而,已经证明大型语言模型也可以在没有任何领域特定训练的情况下解决许多任务。能够做到这一点的一类模型被称为GPT:生成式预训练变压器。 课前测验 文本生成和困惑度 在论文《Language Models are Unsupervised Multitask Learners》中提出了一个神经网络能够在没有下游训练的情况下执行一般任务的想法。主要思想是许多其他任务都可以通过文本生成来建模,因为理解文本本质上意味着能够生成它。
在我们之前的所有任务中,我们都在使用标记数据集对神经网络进行特定任务的训练。对于像BERT这样的大型变压器模型,我们使用自监督的语言建模来构建一个语言模型,然后通过进一步的领域特定训练将其专门化为特定的下游任务。然而,已经证明大型语言模型也可以在没有任何领域特定训练的情况下解决许多任务。能够做到这一点的一类模型被称为GPT:生成式预训练变压器。
在论文《Language Models are Unsupervised Multitask Learners》中提出了一个神经网络能够在没有下游训练的情况下执行一般任务的想法。主要思想是许多其他任务都可以通过文本生成来建模,因为理解文本本质上意味着能够生成它。由于该模型是在包含人类知识的巨大文本量上进行训练的,因此它也变得对各种主题有广泛的知识。
理解和生成文本还涉及了解我们周围的世界。人们也主要通过阅读学习,而GPT网络在这方面与此相似。
文本生成网络通过预测下一个单词的概率 (P(w_N)) 来工作。然而,下一个单词的无条件概率等于该单词在文本语料库中的频率。GPT能够给我们提供给定前一个单词的条件概率:(P(w_N | w_{n-1}, ..., w_0))
您可以在我们的数据科学入门课程中了解更多关于概率的知识。
语言生成模型的质量可以通过困惑度来定义。这是一个内在的指标,使我们能够无需任何特定任务的数据集来衡量模型的质量。它基于“句子的概率”这一概念——模型会为可能真实的句子(即模型不会对此感到困惑)分配高概率,而对于不太合理的句子(例如“Can it does what?”)则分配低概率。当我们给模型来自真实文本语料库的句子时,我们期望这些句子具有高概率和低困惑度。数学上,它被定义为测试集的归一化逆概率:
您可以使用Hugging Face的GPT驱动文本编辑器来实验文本生成。在这个编辑器中,您开始写您的文本,按下**[TAB]**键将为您提供几个完成选项。如果它们太短或您不满意它们,请再次按[TAB]键,您将获得更多的选项,包括更长的文本片段。
GPT不是一个单一的模型,而是由OpenAI开发和训练的一系列模型。
在GPT模型下,我们有:
| GPT-2 | GPT 3 | GPT-4 |
|---|---|---|
| 最多包含15亿参数的语言模型。 | 最多包含1750亿参数的语言模型 | 接受图像和文本输入,输出文本,参数量达到100万亿。 |
GPT-3和GPT-4模型可以作为Microsoft Azure的认知服务使用,也可以作为OpenAI API使用。
由于GPT已经在大量数据上进行了训练以理解语言和代码,它们会根据输入(提示)提供输出。提示是GPT的输入或查询,在此过程中,用户向模型提供任务的指令。为了产生预期的结果,您需要最有效的提示,这涉及到选择正确的词汇、格式、短语甚至符号。这种方法被称为提示工程。
这份文档提供了更多关于提示工程的信息。
继续在以下笔记本中学习:
新的通用预训练语言模型不仅建模语言结构,还包含大量的自然语言。因此,它们可以有效地用于零样本或少样本设置下的某些NLP任务。
声明:
本文件灏天文库团队进行了翻译。尽管我们力求准确,但请注意,翻译可能包含错误或不准确之处。原文档以其原始语言为准。我们不对因使用此翻译而产生的任何误解或误译负责。