NLP之PTM:自然语言处理领域—预训练大模型时代各种吊炸天算法概述(NNLM→Word2Vec→ELMO→Attention→Transformer→GPT/BERT系列)、关系梳理、模型对比之详细攻略
导读:在2017年,Transformer模型问世,其强大的拟合能力迅速应用于各种sequence-to-sequence任务。Transformer模型包括两部分,Encoder用于特征表示,Decoder用于文本生成。它们各司其职,合在一起可以取得很好的效果。
2018年6月,OpenAI的GPT系列就对Transformer Decoder替换RNN作为语言模型的能力进行了探索,提出了GPT-1,当时它只是一个12层单向的Transformer,通过预训练+精调的方式进行训练;
但是,2018年10月,Google的BERT一出来,刷新了11项 NLP 任务的 SOTA,将GPT-1很快就踩在脚下。
接着,2019年2月,改进的GPT-2提出了meta-learning,把所有NLP任务的输入输出进行了整合,全部用文字来表示,其生成性能最强,但NLU领域仍不如BERT;
然后,2020年5月,GPT-3改进了BERT的两个缺点,1750亿的参数,使其性能变得吊炸天。近期,2022年11月,ChatGPT的惊艳表现,标志着对话模型领域又向前跨出了一大步。
自此,大模型江湖厮杀仍在继续……
目录
NLP之NNLM:NNLM神经语言模型算法(词向量法的始祖)的简介、网络结构、案例应用、代码实现之详细攻略
NLP:word embedding词嵌入/word2vec词向量方法(一种主流的分布式表示)的简介、使用方法、案例应用之详细攻略
NLP之ELMO:ELMO模型的概述、结构(预训练过程、推理过程)之详细攻略
DL之self-attention:self-attention自注意力机制的简介(背景、特点、改进对比、传统对比、关系、应用,适合长距离捕获分析)、计算过程(八大步骤)、案例应用之详细攻略
NLP之Transformer:Transformer的简介(优缺点/架构详解,基于Transformer的系列架构对比分析)、使用方法(NLP领域/CV领域)、案例应用之详细攻略
GPT模型的概述—GPT系列(GPT-1/GPT-2/GPT-3)
NLP之GPT-1/GPT-2:GPT-1的概述(简介、原理、意义、结构、创新点、优缺点、数据集)、为何单向Transfo、模型结构、训练过程,GPT-2的概述(大数据、大模型、灵感点)之详细攻略
NLP之GPT-3:NLP领域没有最强,只有更强的模型—GPT-3的简介(本质、核心思想、意义、特点、优缺点、数据集、实际价值,模型强弱体现,开源探讨,GPT系列对比与总结)、安装、使用方法之详细攻略
AIGC:ChatGPT(一个里程碑式的对话聊天机器人)的简介(意义/功能/核心技术等)、使用方法(七类任务)、案例应用(提问基础性/事实性/逻辑性/创造性/开放性的问题以及编程相关)之详细攻略
NLP之BERT:BERT的简介(背景、改进点、创新点、简介、意义、原理、优缺点、总结与评价)、模型结构、训练过程(MLM、NSP任务的概述)之详细攻略
Semi-supervised Sequence Learning:seq2seq→GPT系列/ELMO【→BERT→MTDNN/XLNet等】
单个模型逐个概述
NNLM模型的概述
NLP之NNLM:NNLM神经语言模型算法(词向量法的始祖)的简介、网络结构、案例应用、代码实现之详细攻略
https://yunyaniu.blog.csdn.net/article/details/128795552
Word2Vec模型的概述
NLP:word embedding词嵌入/word2vec词向量方法(一种主流的分布式表示)的简介、使用方法、案例应用之详细攻略
https://yunyaniu.blog.csdn.net/article/details/128262908
ELMO模型的概述
NLP之ELMO:ELMO模型的概述、结构(预训练过程、推理过程)之详细攻略
https://yunyaniu.blog.csdn.net/article/details/128795366
Attention的概述
DL之Attention:Attention注意力机制算法的起源与盛行及其在长距离有效的原因、概述(背景/本质/与ED框架关系/模型架构/优缺点/扩展,理解,本质,变种)、案例应用(CV/NLP)之详细攻略
https://yunyaniu.blog.csdn.net/article/details/83187158
DL之self-attention:self-attention自注意力机制的简介(背景、特点、改进对比、传统对比、关系、应用,适合长距离捕获分析)、计算过程(八大步骤)、案例应用之详细攻略
https://yunyaniu.blog.csdn.net/article/details/100108045
Transformer的概述
NLP之Transformer:Transformer的简介(优缺点/架构详解,基于Transformer的系列架构对比分析)、使用方法(NLP领域/CV领域)、案例应用之详细攻略
https://yunyaniu.blog.csdn.net/article/details/123172991
GPT模型的概述—GPT系列(GPT-1/GPT-2/GPT-3)
NLP之GPT-1/GPT-2:GPT-1的概述(简介、原理、意义、结构、创新点、优缺点、数据集)、为何单向Transfo、模型结构、训练过程,GPT-2的概述(大数据、大模型、灵感点)之详细攻略
https://yunyaniu.blog.csdn.net/article/details/80468713
NLP之GPT-3:NLP领域没有最强,只有更强的模型—GPT-3的简介(本质、核心思想、意义、特点、优缺点、数据集、实际价值,模型强弱体现,开源探讨,GPT系列对比与总结)、安装、使用方法之详细攻略
https://yunyaniu.blog.csdn.net/article/details/107897654
AIGC:ChatGPT(一个里程碑式的对话聊天机器人)的简介(意义/功能/核心技术等)、使用方法(七类任务)、案例应用(提问基础性/事实性/逻辑性/创造性/开放性的问题以及编程相关)之详细攻略
https://yunyaniu.blog.csdn.net/article/details/128229941
BERT模型的概述
NLP之BERT:BERT的简介(背景、改进点、创新点、简介、意义、原理、优缺点、总结与评价)、模型结构、训练过程(MLM、NSP任务的概述)之详细攻略
https://yunyaniu.blog.csdn.net/article/details/104987840
多个大模型横向对比
GPT和BERT模型对比及其总结
GPT-1(基于单向Transformer 模型) |
BERT(基于双向Transformer 模型) |
|
顾名思义 |
Generative Pre-Training 生成式预训练模型 |
Bidirectional Encoder Representation from Transformer 基于Transformer的双向编码器表示模型 |
时间 |
2018年6月 |
2018年10月 |
团队 |
Radford等人,OpenAI(马斯克成立+微软投资) |
Google Brain |
语言模型 |
GPT-1的模型是Transformer 结构中的Decoder部分—Marked Self Attention掩码自注意力,故使用的是单向语言模型,更适合生成类任务。 |
BERT模型堆叠且只使用了原始 Transformer 结构中的Encoder编码结构—Self Attention,因此使用了双向的信息,并在一些任务中达到了更好的效果; |
训练 |
Pre-Training+Fine-Tuning |
|
输入向量 |
token embedding + position embedding |
token embedding + position embedding + segment embedding |
参数量 |
1.17亿参数量 |
3.4亿参数量 |
GPT-1使用了12层的Transformer |
48层 |
|
应用 |
适合文本生成类任务 |
不能做生成式任务 |
(1)、Masked导致单向:由于GPT-1在Decoder中Marked Self Attention的 Mask设计,使得 GPT 只使用了单向信息,让模型看不见未来的信息,故得到的模型泛化能力也更强; (2)、只利用上文:GPT把原始 Transformer 结构中的解码器Decoder结构用作编码器进行特征抽取。即该语言模型只使用了上文预测当前词,而不使用下文,故其更适用于文本生成类任务。 |
(1)、MLM带来双向:BERT模型使用了 Masked-LM 的预训练方式达到了真双向语言模型的效果; (2)、上下文皆利用:BERT使用的基于Transformer的Encoder能够对来自过去和未来的信息进行建模(理解为偷看下文答案),能够提取更丰富的信息。 |
|
共同点 |
(1)、BERT和GPT的结构相似—都沿用了原始Transformer的结构:但是二者分别基于单向、双向Transformer模型实现。 (2)、BERT和GPT的训练方法相同—都采用了两阶段:采用了Pre-training + Fine-tuning 的训练模式,在分类、标注等 NLP 经典下游任务取得很好的效果。 (3)、BERT和GPT均后接入Task-layer以适应不同下游任务:GPT 和 BERT 两个模型,都在Fine-tuning 阶段在编码层后面加上 Task-layer 以适应不同下游任务的训练需求。 |
BERT与Word2Vec→ELMO→GPT之间的转换
三个预训练模型的图如下所示:
BERT综合了ELMO的双向优势与GPT的Transformer的特征提取优势:
>> 如果把ELMO的特征抽取器LSTM,换成Transformer→BERT
>> 如果把GPT预训练阶段,换成双向语言模型→BERT
ELMO、GPT、BERT—预测中间词的模型结构不同
算法 |
特征抽取器类型 | 预测中间词的模型结构不同 |
ELMO |
LSTM | ELMO采用双向LSTM结构:因为各个LSTM结构之间是互相独立的,所以可以根据上下文预测中间词; |
GPT |
Transformer | GPT采用了单向的Transformer:GPT在做另一个任务:根据上文预测下一个单词时,要求Pre-Training预测下一个词时,只能够看见当前以及之前的词,这也使得GPT不得不放弃原本Transformer的双向结构,转而采用单向结构的原因。此举从而也就决定了GPT只能根据上文预测下一个单词; |
BERT |
Transformer | BERT采用了双向的Transformer:所以并没有像GPT一样完全放弃下文信息。 |