德克萨斯大学奥斯汀分校自然语言处理硕士课程汉化版(第八周) - 现代大语言模型

news2024/11/29 22:53:21

现代大语言模型

  • 1. GPT-3
  • 2. 上下文学习
    • 2.1. 零样本提示
    • 2.2. 少样本提示
    • 2.3. 归纳头
  • 3. 对齐
    • 3.1. 指令微调
    • 3.2. 基于人类反馈的强化学习
    • 3.3. 事实与幻觉

1. GPT-3

  • GPT系列论文
    • GPT-1(2018): Improving Language Understanding by Generative Pre-Training
    • GPT-2(2019): Language Models are Unsupervised Multitask Learners
    • GPT-3(2020): Language Models are Few-Shot Learners
    • InstructGPT(2022): Training language models to follow instructions with human feedback

GPT-1(GPT)在之前章节中就介绍过了,GPT-2相比GPT使用了更多的训练数据,并且增加了模型规模。GPT-2是截止到2019年3月训练的最大模型(1.5B)。它能够连续地生成流利和连贯的句子,而这是较小的模型或LSTM所无法实现的。

GPT-3拥有惊人的1750亿个参数(175B),这是GPT-2参数数量的100多倍。这使得GPT-3成为当时最大的语言模型。训练使用45TB超大规模数据。GPT-3可以执行各种自然语言处理任务,包括但不限于文本生成、翻译、问答、总结和文本分类。GPT-3展示了强大的少样本学习能力,只需要通过极少的例子就可以理解和执行新的任务。这种能力被称为“in-context learning”,它使得GPT-3在没有专门训练的情况下可以处理广泛的任务。由于其庞大的参数数量和先进的架构,GPT-3能够生成非常自然和连贯的文本,这在许多情况下几乎无法与人类的写作区分开来。

在这里插入图片描述

2. 上下文学习

GPT-3提出了微调(Fine-Tuning, FT)之外的另一种方法:上下文学习或语境学习(In-Content Learning, ICL)。仅使用现成的模型,不进行梯度更新。

传统的微调方法通常需要对预训练模型进行进一步的训练,以适应特定任务或数据集。这涉及在新的数据集上进行额外的训练,并更新模型的梯度来调整参数,从而使模型更好地处理特定任务。与此相对,GPT-3引入了上下文学习的概念。这种方法不需要对模型进行额外的训练或梯度更新,而是直接使用预先训练好的模型。通过在输入中提供一些示例或提示,GPT-3能够根据这些上下文信息来理解任务并生成相应的输出。这种方法的优势在于:

  1. 无需额外训练:用户可以直接使用预训练好的GPT-3,无需再进行细调或训练过程。这大大简化了使用流程,减少了计算和时间成本。
  2. 多样性和灵活性:由于不需要对模型进行修改,可以在同一个模型上处理多种任务,只需提供不同的上下文示例即可。
  3. 即时适应:模型能够通过提供的上下文快速适应新的任务或主题,展示出强大的通用性和适应能力。

这种上下文学习的能力来自于GPT-3庞大的训练数据和参数,使其在理解和生成文本方面有着卓越的表现。它可以通过少量示例(few shot)或提示(prompt)来学习新的任务,并在输入的上下文中生成合理的响应。

上下文学习的核心是语言模型能够延续观察到的模式。即一个有效的语言模型应该能够根据已经观察到的文本模式,延续这个模式并生成合理的序列。这种延续观察到的模式的能力是语言模型生成高质量文本的基础,尤其是在上下文学习中,模型通过提供的示例来掌握任务,并生成符合这些示例模式的输出。

在这里插入图片描述

  • 相关研究

Demystifying Prompts in Language Models via Perplexity Estimation

Calibrate Before Use: Improving Few-Shot Performance of Language Models

Holistic Evaluation of Language Models

Rethinking the Role of Demonstrations: What Makes In-Context Learning Work?

2.1. 零样本提示

零样本提示(Zero-shot Prompting)指的是在没有任何特定的训练样本或特定示例的情况下,通过提示模型(如GPT-3)执行特定的任务。这意味着模型不需要额外的训练数据或任务示例,就可以理解并尝试完成用户给出的任务指令。

零样本提示是一种能力,即在没有额外训练的情况下,通过给定一个清晰的提示或指令,模型能够完成特定任务。它不需要对特定任务进行专门的训练数据。模型通过预训练阶段学习了丰富的语言模式和知识,从而能够理解和执行各种自然语言任务。当接收到一个新的任务提示时,模型使用其预训练知识来推断并提供相应的答案或解决方案。

零样本提示的优点:

  • 灵活性高:可以处理多种不同类型的任务,而无需为每个任务单独收集和标注数据。
  • 成本低:减少了在特定任务上进行额外训练的数据需求和计算成本。

零样本提示的例子:

  • 翻译:输入提示“将以下句子翻译成法语:‘Hello, how are you?’”,模型直接给出翻译“Bonjour, comment ça va?”。
  • 问答:输入提示“谁是美国的第一任总统?”,模型能直接回答“乔治·华盛顿”。
  • 文本分类:输入提示“这是一个积极的评论还是消极的评论:‘这部电影非常棒!’”,模型可以回答“积极”。

2.2. 少样本提示

少样本提示(Few-shot Prompting)指的是通过提供少量适当的示例作为提示,指导语言模型(如GPT-3)执行特定任务的一种技术。它是一种介于零样本提示和监督学习(需要大量标注数据)之间的方法。少样本提示是指通过提供几个任务示例作为提示,引导语言模型完成对应任务。示例的数量通常很少,可能只有一到几个。换句话说,就是给模型提供少量的任务示例和任务描述,通过这些示例来告诉模型如何处理类似的输入。

为什么使用少样本提示:

  1. 数据效率:相比全监督学习,需要大量标注数据,少样本提示大大减少了数据需求。
  2. 快速适应:可以快速应用于新领域或新任务,不需要大量的数据收集和标注过程。
  3. 灵活性:模型可以利用少量示例迅速调整自身行为以满足特定任务需求。

少样本提示的挑战:

  1. 提示设计:如何设计有效的提示,即选择哪些少量的示例能最好地引导模型完成任务。
  2. 覆盖面:少量示例能否充分代表任务的广泛性和复杂性。

少样本提示的例子:

  1. 翻译:提供几对源语言和目标语言的句子对,提示模型翻译新的句子。
  2. 问答:示例包括一些问题及其对应答案,提示模型按照示例的方式回答新问题。
  3. 文本分类:输入包括几条带有分类标签的示例,如情感分析的正面和负面评论。提示模型根据这些示例对新输入进行分类。

研究表明,即使是错误的少样本示例,也比没有示例好。

2.3. 归纳头

归纳头(Induction Heads)是两个位于不同层的注意力头,它们协同工作来完成某种模式匹配或复制任务。第一个头的作用是复制信息,第一个注意力头(位于较早的层)会从前一个标记(token)中提取信息并复制到当前标记中。例如,如果当前标记是[B],那么这个头会从前一个标记[A]中复制信息到[B]中。第二个头的作用是关注前序信息,第二个注意力头(处于更高层)会关注那些在它之前出现的标记,而不是当前标记的内容。这个头会“回溯”之前的标记,试图根据之前的信息来确定接下来应该是什么标记。最后,协同工作模式完成,这两个头协同工作,可以让模型更加容易地完成特定的模式。例如,在序列…[A][B]…[A]中,由于第一个头复制了信息,而第二个头根据前面发生的情况来关注标记,这使得模型可以更准确地预测和完成[B]。例如,在文本生成任务中,如果有一部分输入是[A][B],随后再出现一个[A],模型通过这两个头的协同工作,很有可能会预测出下一个标记是[B],因为它识别到这种模式并进行了有效的复制和传播。

归纳头能让两层模型做到更多的事情,但它们与全尺寸Transformer的相关性尚不清楚,全尺寸Transformer有数百个注意力头协同工作,感应头似乎对一些复杂多层架构的显著行为做出了重大贡献。

在这些行为中,算术的能力得到彰显,因为模型只被训练来完成文本。例如,如果给出重复prompt:「问:48 加 76 等于多少?答:124;问:48 加 76 等于多少?A:___。一个强大的模型会得到正确的答案,并且在获得足够多的非重复prompt后,它就能正确回答它从未见过的算术问题。这种从上下文中明显学习新能力的现象称为上下文学习。

这种现象令人费解,因为从上下文中学习是不可能的。这是因为决定模型性能的参数仅在训练期间进行调整,而没有在模型处理输入上下文时进行调整。归纳头至少解决了部分难题。它们解释了上下文学习的简单、重复形式的可能性,同时提供了所需要的复制模型未经训练使用的新词的能力。

  • 相关研究

In-context Learning and Induction Heads

Transformer Circuits Thread

3. 对齐

GPT-3虽然在各大NLP任务以及文本生成的能力上惊艳,但是仍然还是会生成一些带有偏见的,不真实的,有害的造成负面社会影响的信息,而且并不按人类喜欢的表达方式去说话。OpenAI提出了一个概念对齐(Alignment),模型输出与人类真实意图对齐,符合人类偏好。InstructGPT的独特之处在于它经过了特定的训练,使其能够更好地理解和遵循用户的指令,从而提供更准确和有用的答案。

InstructGPT的目标:

  1. 有用性,有用的(helpful):能帮助用户解决问题。
  2. 真实性,诚实的(honest):不能捏造事实,不能误导用户。
  3. 无害性,无害的(harmless):不能对用户或环境造成物理、精神、社会层面的伤害。

以下是InstructGPT的一些关键特点:

  1. 指令微调:InstructGPT经过了所谓的指令微调(Instruction Tuning)训练,这意味着它不仅仅是根据大量文本进行预训练,还特别针对遵循用户指令的任务进行了优化。这使得它在执行具体任务时表现更佳。
  2. 人类反馈训练:为了增强模型对指令的理解和响应能力,InstructGPT利用了来自人类的反馈进行强化学习。通过人工评估模型的输出质量,模型逐渐调整其生成策略,提高了响应的相关性和准确性。

在这里插入图片描述

  • 相关研究
    • DeepMind Sparrow: Improving alignment of dialogue agents via targeted human judgements
    • Google LaMDA: LaMDA: Language Models for Dialog Applications

3.1. 指令微调

在自然语言处理领域,模型通常通过语言建模目标来训练,即在给定上下文(context)的情况下预测接下来会出现的词语。然而,在实际应用中,我们希望模型能够更好地处理特定任务,例如问答系统用户提出问题,系统给出相应的回答。为了实现这个目标,研究人员可以在原始语言模型的基础上,进行进一步的优化和微调。

语言模型目标:通常的训练目标是预测下一个词,这意味着模型学习了大量的语言特征和模式。

任务优化:具体的任务如问答系统,需要模型在上下文提示下生成一个具体的答案。

指令微调(Instruction Tuning)是对已经训练好的基础语言模型进行进一步优化,通过在多种任务数据上进行有监督的微调,使模型能够处理各种具体的自然语言处理任务。指令微调是一种方法,通过在从多个NLP任务中派生的数据上进行有监督的训练,将通用语言模型调整为能够执行特定任务的模型。

在这里插入图片描述

基础语言模型(如GPT-3、BERT等)通过大量的无监督文本数据进行预训练,主要是学习语言结构和语法。然而在实际应用中,我们需要模型能够执行更具体的任务,如问答、文本分类、翻译等。指令微调就是通过在特定任务数据上进行训练,让模型学会这些具体任务的处理方式。

在这里插入图片描述

  • 指令微调的优势

通过在多种任务数据上进行训练,模型可以学习到应对不同任务的通用特征,从而在新的任务上表现得更好。通过简单调整训练数据和目标任务,可以使同一个基础模型应用于不同的实际场景。微调使得模型能够更加精确地解决特定任务中的问题,从而提升模型的实际应用效果。

  • 指令微调的挑战

需要大量的标注数据来进行微调,以确保模型能够在各种任务上表现良好。微调过程需要大量的计算资源,尤其是在处理大规模模型时。虽然模型在多任务上训练,但在某些特定任务上的泛化能力仍然可能有限,需要不断更新和调整训练数据和方法。

  • 相关研究

Multitask Prompted Training Enables Zero-Shot Task Generalization

Scaling Instruction-Finetuned Language Models

3.2. 基于人类反馈的强化学习

基于人类反馈的强化学习(Reinforcement Learning from Human Feedback, RLHF)是一种结合强化学习和人类反馈,优化深度学习模型输出质量的方法。主要用于提高模型在生成任务(如对话系统、文本生成)上的表现。

RLHF 的主要目标是通过人类的反馈信号来优化模型,使其生成的输出更符合人类的期望和标准。这使得模型不仅可以基于统计规律生成文本,还可以生成更加自然、有用和合适的回答。

RLHF的步骤:

  1. 初步预训练:使用大规模无监督文本数据进行预训练,类似于标准语言模型的训练过程。目标是学习基本的语言结构和生成能力。
  2. 生成初始输出:预训练的模型生成初始答案(或输出)集合,这些答案可能是回答问题、继续对话或者是其他形式的文本生成。
  3. 人类反馈:人类对这些生成的答案进行评分和评价,反馈可以是直接的分数(如1到5星)或更详细的批评和建议。收集尽可能多的关于模型输出质量的反馈,从而为后续的强化学习步骤提供指导。
  4. 奖励模型训练:将人类的评分和反馈转换为奖励信号,训练一个奖励模型,它能基于生成的输出分配奖励分数。建立一个可以预测某个输出好坏的奖励机制。
  5. 强化学习优化:使用强化学习算法(如PPO, Proximal Policy Optimization)来进一步训练生成模型,使其生成的答案能够获得更高的奖励分数。模型生成新的答案,这些答案被奖励模型评估,得到奖励分数,并将这一分数反馈到生成模型中,以优化其生成策略。
RLHF

RLHF的优势:

  1. 提高输出质量:通过直接的人类反馈信号,模型生成的输出更贴近用户的需求和期望。
  2. 灵活性和适应性:可以根据不同任务或不同用户的需求动态调整模型表现。
  3. 增强用户满意度:生成更有意义和反应更符合实际情况的答案,从而提高用户的满意度。

RLHF的挑战:

  1. 反馈质量:需要大量高质量的人类反馈,这可能会涉及高昂的时间和人力成本。
  2. 复杂性:训练和使用奖励模型,以及使用强化学习算法来训练生成模型,增加了系统的复杂性。
  3. 标注一致性:人类反馈可能存在主观性和不一致性,这对训练奖励模型会构成挑战。
  • 相关研究

Training language models to follow instructions with human feedback

Alpaca: A Strong, Replicable Instruction-Following Model

3.3. 事实与幻觉

语言模型建模的是文本分布,而不是事实。因此,它们生成的内容不一定是事实。语言模型的目标是学习和生成符合训练数据分布的文本,而不是验证这个内容是否真实。因此,它们生成的文本可能看起来合乎逻辑和语法正确,但并不保证其真实性。

语言模型是在互联网数据上训练的。广为传播的谬误可能会在语言模型中被重现。它们的训练数据来源于互联网。互联网上的许多信息并不可靠或准确,甚至可能包含大量谣言和错误。因此,这些错误信息可能会被语言模型学习并重现。

语言模型可能无法存储所有的罕见事实,因此会对几种选项分配一个适当的概率。由于某些罕见事实在训练数据中出现的频率很低,语言模型可能没有足够的信息去正确记住或生成这些事实。因此,当被问及这些罕见事实时,模型可能会根据已经知道的情况给予几个选项一个大致的概率,而不是能准确回答。

  • 相关研究

Revisiting the Gold Standard: Grounding Summarization Evaluation with Robust Human Evaluation

WiCE: Real-World Entailment for Claims in Wikipedia

SummaC: Re-Visiting NLI-based Models for Inconsistency Detection in Summarization

FActScore: Fine-grained Atomic Evaluation of Factual Precision in Long Form Text Generation

RARR: Researching and Revising What Language Models Say, Using Language Models

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1824857.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

missing authentication credentials for REST request

1、报错截图 2、解决办法 将elasticsearch的elasticsearch.yml的 xpack.security.enabled: true 改为 xpack.security.enabled: false

字节智能体平台:扣子原理和实践案例

完整内容: 字节智能体平台:扣子原理和实践案例

JAVA小知识20:万字详解List与ArrayList

一、集合简介 1.1、什么是集合? 可同时存储多个元素的数据结构就是集合。 1.2、为什么要有集合? 我们可以使用数组同时存储多个元素,但是数组有个弊端。数组创建之后长度就会固定,如需扩容则需要手动扩容,我们需要…

MEGALODON:突破传统,实现高效无限上下文长度的大规模语言模型预训练和推理

在人工智能领域,尤其是在自然语言处理(NLP)中,大模型(LLMs)的预训练和推理效率一直是研究的热点。最近,一项突破性的研究提出了一种新型神经网络架构——MEGALODON,旨在解决传统Tran…

2024年武汉市中级、高级职称水测考试开卷方法分享

2024年武汉市(除开东湖高新区外)职称首次组织全员水测,先考水测后报名,水测报名在5月16号截止。 武汉市水测组织形式: 武汉市2024年专业技术职务水平能力测试分为笔试和面试,面试答辩有关事项另行通知&…

全息图分类及相位型全息图制作方法

全息图是一种光学器件,全息图分为振幅型和相位型全息图,振幅型全息图记录光的振幅信息即强度信息,相位型全息图记录光的相位信息,利用相位信息可以恢复光的波前形状,从而记录物体形状,这里主要介绍相位全息…

C# Winform 用户控件,扩展控件,自定义控件综合实例

Control类是Windows窗体控件的基类,它提供了在 Windows 窗体应用程序中进行可视显示所需的基础结构,可以通过继承来扩展熟悉的用户控件和现有控件的功能。本列介绍三种不同自定义控件以及怎么创建他们。 自定义控件分类 用户控件:基本控件的…

django学习入门系列之第二点《浏览器能识别的标签1》

文章目录 文件的编码(head)网站表头信息(head)标题&#xff08;body&#xff09;div和span往期回顾 文件的编码(head) <!--浏览器会以"UTF-8"这种编码来读取文件--> <meta charset"UTF-8">网站表头信息(head) <title>Title</title&…

React Native将 ipad 端软件设置为横屏显示后关闭 Modal 弹窗报错

问题&#xff1a; 将 ipad 端软件设置为横屏显示后&#xff0c;关闭 Modal 弹窗报错。 Modal was presented with 0x2 orientations mask but the application only supports 0x18.Add more interface orientations to your apps Info.plist to fix this.NOTE: This will cras…

移动端超超超详细知识点总结(Part3)

flex布局体验 1. 传统布局与flex布局 传统布局&#xff1a; 兼容性好布局繁琐局限性&#xff0c;不能再移动端很好的布局flex 弹性布局&#xff1a; 操作方便&#xff0c;布局极为简单&#xff0c;移动端应用很广泛PC 端浏览器支持情况较差IE 11或更低版本&#xff0c;不支持…

代码随想录算法训练营第39天(py)| 动态规划 | 62.不同路径、 63. 不同路径 II

62.不同路径 力扣链接 一个机器人位于一个 m x n 网格的左上角 &#xff08;起始点在下图中标记为 “Start” &#xff09;。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角&#xff08;在下图中标记为 “Finish” &#xff09;。 问总共有多少条不同的路…

ShardingSphere-proxy添加自定义分片规则(踩坑日记)

文章目录 一、新建spring boot项目二、编写代码(1) 新建一个类(2) doSharding方法详解(3) 实际例子 三、增加spi文件&#xff08;很关键&#xff09;四、打包五、把生成的文件放到ext-lib中六、yaml配置&#xff08;怎么用&#xff09;七、测试 版本环境 mysql 5.7.40 sharding…

使用 Python 进行测试(1)测试基础

原文 总结 我们将从unittest开始&#xff0c;尽管它并不那么好用&#xff0c;但它是Python标准库中的测试工具。 使用unittest编写测试看起来像这样&#xff1a; import unittest# 需要测试的代码 def add(a, b):return a b# The tests class TestAddFunction(unittest.Test…

MySQL之优化服务器设置(三)

优化服务器设置 InnoDB表空间 InnoDB把数据保存在表空间内&#xff0c;本质上是一个由一个或多个磁盘文件组成的虚拟文件系统。InnoDB用表空间实现很多功能&#xff0c;并不只是存储表和索引。它还保存了回滚日志(旧版本行)、插入缓冲(Insert Buffer)、双写缓冲(Doublewrite …

大模型企业落地:制造业可以选择的应用场景

前言 在当今制造业快速发展的背景下&#xff0c;设备稳定运行对于企业的发展至关重要。然而&#xff0c;传统的设备维修模式已无法满足现代企业的需求。为此&#xff0c;引入智能化、数字化的设备维修解决方案成为必然趋势。本文将探讨如何利用大模型技术&#xff0c;构建企业…

《2023-2024中国数据资产发展研究报告》

中国电子信息产业发展研究院发布《2023-2024中国数据资产发展研究报告》&#xff08;下称《报告》&#xff09;&#xff0c;紧跟国家战略部署&#xff0c;调研国内数据资产发展现状&#xff0c;掌握数据价值实现路径&#xff0c;助力释放数字经济新动能。 《报告》从数据资产相…

北京活动会议通常会邀约哪些媒体参会报道?

传媒如春雨&#xff0c;润物细无声&#xff0c;大家好&#xff0c;我是51媒体网胡老师。 北京作为我国的首都和文化中心&#xff0c;各类活动会议资源丰富&#xff0c;吸引了众多媒体的关注。以下是一些通常会被邀约参会报道的重要媒体类型&#xff1a; 国家级新闻机构&#x…

探索AI的魔力:这5款AI应用让你全面感受人工智能的魅力

“ AI 的出现就像燃气机和蒸汽机一样&#xff0c;极大地提高了生产力。” 01、—chatGPT ChatGPT 是由 OpenAI 公司开发的一种大型语言模型。 OpenAI 公司成立于 2015年&#xff0c;早期马斯克是该公司的创始人之一。 自 2018 年推出 GTP-1 以来&#xff0c;OpenAI 已经推出…

关于Linux ping 不通外网

网关为第三段为137那么子网ip第三段必须为137且IPaddr必须为137 将主机虚拟适配器连接到此网络必须勾上&#xff0c;不然vmnet适配器在windows将找不到 ping www.baidu.com不行的话试着勾上桥接模式应该是不行在勾上取消勾上桥接模式最后勾上nat模式

C语言小例程20/100

题目&#xff1a;一个数如果恰好等于它的因子之和&#xff0c;这个数就称为"完数"。例如61&#xff0b;2&#xff0b;3.编程找出1000以内的所有完数。 #include<stdio.h> #define N 1000 int main() {int i,j,k,n,sum;int a[256];for(i2;i<N;i){suma[0]1;k…