面试篇 - GPT-3(Generative Pre-trained Transformer 3)模型
GPT-3(Generative Pre-trained Transformer 3)模型
模型结构
-
与GPT-2一样,但是应用了Sparse attention:
-
Dense attention:每个token之间两两计算attention,复杂度为O(n2)。
-
Sparse attention:每个token只与其他token的一个子集计算attention,复杂度为O(n∗logn)。
-
使用Sparse attention的好处
-
减少注意力层的计算复杂度,节约显存和耗时,从而能够处理更长的输入序列。
-
具有“局部紧密相关和远程稀疏相关”的特性,对于距离较近的上下文关注更多,对于距离较远的上下文关注较少。
训练范式
-
预训练 + few-shot / in-context learning:
-
GPT-3通过在预训练阶段学习大量的语言模式,然后在few-shot(少样本)或in-context learning(上下文学习)阶段,通过提供少量示例或上下文信息来完成特定任务。
-
Few-shot(少样本)学习是一种机器学习范式,旨在使模型能够在只有少量标注数据的情况下快速适应新任务或识别新的类别。这种能力对于许多实际应用场景非常重要,因为在这些场景中获取大量标注数据可能是昂贵、耗时甚至是不可能的。Few-shot学习通常指的是模型在面对新任务时,只需要少量(如1个、5个或10个等)标注样例就能达到较好的性能。它与传统的监督学习不同,后者依赖于大量的标注数据来训练模型。
-
In-context learning(上下文学习)是一种让大型语言模型(LLMs)通过利用输入上下文中提供的示例来执行任务的方法,而无需对模型参数进行微调。这种方法特别适用于可以通过提示轻松描述的任务,但对于需要深入理解或广泛上下文的更复杂任务,它可能会遇到挑战。上下文学习的关键特点包括无参数更新、灵活性和少样本学习。它支持少样本学习,即使提供的示例非常有限,模型也能基于这些示例进行推理并解决问题。
-
Few-shot学习与in-context learning(ICL)紧密相关,因为它们都是通过提供少量示例来使模型适应新任务。然而,ICL不涉及调整模型参数,而是利用模型的现有知识和能力来生成连贯且与上下文相关的输出。Few-shot学习则可能涉及在少量示例的基础上进行微调,以提高模型在特定任务上的性能。总的来说,Few-shot和ICL都是通过少量示例来提高模型在新任务上的表现,但它们在实现方式上有所不同。
-
few-shot(少样本)是如何实现的?
Few-shot(少样本)学习是一种机器学习技术,它旨在使用非常少量的标注样本来正确分类或预测新类别或任务。Few-shot学习的核心思想是在大量通用数据上预训练模型,然后使用少量特定任务的数据进行微调或适应。这种方法类似于人类的学习方式,例如,孩子在看到几张动物图片后就能识别该动物。
Few-shot学习涉及两个阶段:首先,在大型标注数据集上预训练模型以学习世界知识;然后在任务适应阶段,模型学习如何从少量数据样本中泛化。在每个训练阶段,模型都有一个支持集(support set)和查询集(query set)。支持集包含每个类别的少量示例,模型需要学习并理解这些类别;查询集包含未见过的样本,模型需要根据从支持集中学到的知识对这些样本进行分类。
实现Few-shot学习有几种主要方法,每种方法都有其自身的方法论和适用用例:
-
元学习(Meta-Learning),也称为“学会学习”,通过在许多不同任务上训练来获取通用学习策略。代表性算法包括模型无关元学习(MAML)和原型网络(Prototypical Networks)。
-
迁移学习(Transfer Learning),该方法重用在大型数据集上预训练的模型来执行新任务。在NLP中,尤其常见的是利用大型预训练语言模型,如GPT和BERT,这些模型只需少量数据就能适应新任务。
-
记忆增强模型(Memory-Augmented Model)方法,这些模型包含一个记忆组件,存储先前的例子,并通过比较新输入与存储的实例来进行推理。典型的例子包括匹配网络(Matching Networks)和孪生网络(Siamese Networks)。
与GPT-2的区别
-
模型结构:
-
在GPT-2的基础上,将attention改为sparse attention。
-
-
效果:
-
生成的内容更为真实,效果上远超GPT-2。
-
-
训练范式:
-
GPT-3主推few-shot,而GPT-2主推zero-shot。
-
-
数据量:
-
数据量远大于GPT-2:GPT-3(45T,清洗后570G),GPT-2(40G)。
-
-
模型参数规模:
-
GPT-3最大模型参数为1750亿,GPT-2最大为15亿。
-