大模型技术:发展历程、经典模型、微调与应用[更新中...]

一、预训练语言模型发展历程

预训练语言模型的发展历程:
在这里插入图片描述

截止23年3月底,语言模型发展走过了三个阶段:

  • 第一阶段:设计一系列的自监督训练目标(MLM、NSP等),设计新颖的模型架构(Transformer),遵循Pre-training和Fine-tuning 范式。典型代表是BERT、GPT、XLNet等;

  • 第二阶段:逐步扩大模型参数和训练语料规模,探索不同类型的架构。典型代表是BART、T5、GPT-3等;

  • 第三阶段:走向AIGC (Artificial Intelligent Generated Content)时代,模型参数规模步入千万亿,模型架构为自回归架构,大模型 走向对话式、生成式、多模态时代,更加注重与人类交互进行对齐,实现可靠、安全、无毒的模型。典型代表是InstructionGPT、 ChatGPT、Bard、GPT-4等。

预训练语言模型主要分为单向和双向两种类型:

  • 单向:以GPT为首,强调从左到右的编码顺序,适用于Encoder-Decoder模式的自回归(Auto-regressive)模型;
  • 双向:以ELMO为首,强调从左向右和从右向左的双向编码,但ELMO的主体是LSTM,由于其是串行地进行编码,导致其运行速度较慢。因此BERT则以Transformer为主体结构作为双向语言模型的基准。

二、经典的Pre-trained任务

2.1 Masked Language Modeling

传统的语言模型是以word2vec、GloVe为代表的词向量模型,他们主要是以词袋(N-Gram)模型为基础。例如在word2vec的CBow中,随机选择一个固定长度的词袋区间,然后挖掉中心部分的词后,让模型(一个简单的深度神经网络)预测该位置的词,如下图所示:

在这里插入图片描述
Masked Language Modeling(MLM)则采用了N-Gram的方法。不同的是,N-Gram喂入的是被截断的短文本,而MLM喂入的则是完整的文本,因此MLM更能够保留原始的语义。

在这里插入图片描述

MLM是一种自监督的训练方法,其先从大规模的无监督语料上通过固定的替换策略获得自监督语料,设计预训练的目标来训练模型。具体的可以描述为:

  • 替换策略:在所有语料中,随机抽取15%的文本。被选中的文本中,从80%的文本中,随机挑选一个token并替换为[mask],10%的文本中则随机挑选一个token替换为其他token,10%的文本中保持不变。
  • 训练目标:当模型遇见 [mask] token时,则根据学习得到的上下文语义去预测该位置可能的词。因此,训练的目标是对整个词表上的分类任务,可以使用交叉信息熵作为目标函数。

这里以BERT为例,首先喂入一个文本 It is very cold today, we need to wear more clothes.,然后随机mask掉一个 token,并结合一些特殊标记得到: [cls] It is very cold today, we need to [mask] more clothes. [sep],喂入到多层的 Transformer结构中,则可以得到最后一层每个token的隐状态向量。MLM则通过在[mask]头部添加一个MLP映射到词表上,得到所有词预测的概率分布。

2.2 Next Sentence Prediction

在BERT原文中,还添加了NSP任务,其主要目标是给定两个句子,来判断他们之间的关系,属于一种自然语言推理(NLI)任务。在NSP中则存在三种关系,分别是:

  • entailment (isNext):存在蕴含关系,NSP中则认为紧相邻的两个句子属于entailment, 即isNext关系;
  • contradiction (isNotNext):矛盾关系,NSP中则认为这两个句子不存在前后关系,例如两个句子来自于不同的文章;
  • Neutral:中性关系,NSP中认为当前的两个句子可能来自于同一篇文章,但是不属于isNext关系的

而显然,构建NSP语料也可以通过自监督的方法技术,给定大量无监督语料,按照文章进行分类。在同一篇文章里,随机挑选一个句子作为premise,因为搜索AI提问评论笔记其下一个句子,另外再随机挑选同一篇文章中的其他句子作为Neutral类,其他文章中的句子作为contradiction类。

在BERT中,NSP任务则视为sentence-pair任务。例如输入两个句子 S1: It is very cold today.S2: We need to wear more clothes.,通过拼接特殊字符后,得到: [cls] It is very cold today. [sep] We need to wear more clothes. [sep],然后喂入到多层Transformer中,可以得到[cls] token的隐状态向量,同样通过MLP映射到一个3分类上获得各个类的概率分布:
在这里插入图片描述

在以ALBETR、RoBERTa等系列的模型中,由于发现NSP对实验效果没有太大的影响,因此均删除了NSP任务。

三、Task-specific Fine-tuning 任务

获得了预训练的语言模型后,在面对具体的下游任务时,则需要进行微调。通常微调的任务目标取决于下游任务的性 质。我们简单列举了几种NLP有关的下游任务。

3.1 Single-text Classification (单句分类)

常见的单句分类任务有短文本分类、长文本分类、意图识别、情感分析、 关系抽取等。给定一个文本,喂入多层Transformer模型中,获得最后一层的隐状态向量后,再输入到新添加的分类 器MLP中进行分类。在Fine-tuning阶段,则通过交叉信息熵损失函数训练分类器。

  • 短/长文本分类:直接对句子进行归类,例如新闻归类、主题分类、场景识别等;
  • 意图识别:根据给定的问句判断其意图,常用于检索式问答、多轮对话、知识图谱问答等;
  • 情感分析:对评论类型的文本进行情感取向分类或打分;
  • 关系抽取:给定两个实体及对应的一个描述类句子,判断这两个实体的关系类型;

3.2 Sentence-pair Classification (句子匹配/成对分类)

常见的匹配类型任务有语义推理、语义蕴含、文本匹配与检 索等。给定两个文本,用于判断其是否存在匹配关系。此时将两个文本拼接后喂入模型中,训练策略则与Single-text Classification一样;

  • 语义推理/蕴含:判断两个句子是否存在推理关系,例如entailment、contradiction, neutral三种推理关系;
  • 文本匹配与检索:输入一个文本,并从数据库中检索与之高相似度匹配的其他句子

3.3 Span Text Prediction (区间预测)

常见的任务类型有抽取式阅读理解、实体抽取、抽取式摘要等。给定一个 passage和query,根据query寻找passage中可靠的字序列作为预测答案。通常该类任务需要模型预测区间的起始位 置,因此在Transformer头部添加两个分类器以预测两个位置。

  • 抽取式阅读理解:给定query和passage,寻找passage中的一个文本区间作为答案;
  • 实体抽取:对一段文本中寻找所有可能的实体;
  • 抽取式摘要:给定一个长文本段落,寻找一个或多个区间作为该段落的摘要;

3.4 Single-token Classification(字符分类)

此类涵盖序列标注、完形填空、拼写检测等任务。获得给定文本的隐状 态向量后,喂入MLP中,获得每个token对应的预测结果,并采用交叉熵进行训练。

  • 序列标注:对给定的文本每个token进行标注,通常有词性标注、槽位填充、句法分析、实体识别等;
  • 完形填空:与MLM一致,预测给定文本中空位处可能的词
  • 拼写检测:对给定的文本中寻找在语法或语义上的错误拼写,并进行纠正;

3.5 Text Generation (文本生成)

文本生成任务常用于生成式摘要、机器翻译、问答等。通常选择单向的预训练语言 模型实现文本的自回归生成,当然也有部分研究探索非自回归的双向Transformer进行文本生成任务。BART等模型则 结合单向和双向实现生成任务。

  • 生成式摘要:在文本摘要中,通过生成方法获得摘要;
  • 机器翻译:给定原始语言的文本,来生成目标语言的翻译句子;
  • 问答:给定query,直接生成答案;

相关的任务类型、常见的Benchmark以及形式化定义如下图所示:

在这里插入图片描述

三、LLM models

3.1 主体结构:Transformer

现如今常用的语言模型大多数是BERT及其变体,它的主体结构Transformer模型是由谷歌机器翻译团队在17年末提出的,是一种完全利用attention机制构建的端到端模型,具体算法详解可参考博客:Transformer 模型详解

之所以选择Transformer作为语言模型的主体结构,是因为其完全以Attention作为计算推理技术,任意的两个token均可以两两交互,使得推理完全可以由矩阵乘机来替代,实现了可并行化计算。 因此Transformer也可以认为是一个全连接图,缓解了序列数据普遍存在的长距离依赖和梯度消失等缺陷。

在NLP领域中,Attention机制的目标是对具有强相关的token之间提高模型的关注度。例如在文本分类中,部分词对分类产生的贡献更大,则会分配较大的权重。

对句子的编码主要目标是为了让模型记住token的语义。传统的LSTM则只能通过长短期记忆的方法来捕捉token之间的关系,容易导致梯度消失或记忆模糊问题,而Transformer中,任意的token之间都有显式的连接,避免了长距离依赖性问题。当然Transformer也增加了position
embedding以区分不同token的位置关系,

3.2 GPT

[待更新…]

3.3 BERT

[待更新…]

3.4 T5

[待更新…]

四、模型微调技术

大模型高效参数微调技术(Prompt-Tuning、Prefix Tuning、P-Tuning、LoRA…)

  • 16
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值