文章目录
前言
前文提到的ELMo虽然解决了词嵌入多义词的问题,但存在如下缺点:
- 基于RNN的网络结构使得其特征提取能力弱,训练难且时间长
- 预训练模型(仅用于特征抽取)和实际下游任务模型仍是分开的、非端到端的
GPT-1基于上述缺点进行了改进。
提示:以下是本篇文章正文内容,下面内容可供参考
一、GPT-1网络结构和流程
网络结构方面,GPT-1使用Transformer Decoder(不包含Encoder-Decoder Attention)代替了BiLSTM
基于GPT-1的NLP任务分为两个阶段:
- 第一阶段是在大型文本语料库上进行无监督的预训练。
- 第二个阶段是在做下游任务时将模型调整为具有标记数据的判别任务,然后进行有监督的微调。
上图所示一目了然,可以将所有任务抽象成四种情况,所有情况都需要增加起始和结束标记token,随机初始化:
- Classification,文本分类,加上起始和结束标记Start和Extract即可。
- Entailment,文本蕴含关系,本质是多分类,将前提(premise)和假设(hypothesis)拼接,中间加分隔符,首尾加上起始和结束token。
- Similarity,文本相似性,处理类似文本蕴含,不过需要构造两个输入,对应正反两种拼接顺序。模型输出相加送入linear+softmax。
- Multiple Choice,问答与常识推理,一个任务包括一个正文 z z z,一个问题 q q q ,多个答案{ a k a_k ak} ,对应多个三元组,每个三元组格式为 < z , q , a k > <z,q,a_k> <z,q,ak>。模型输出送入linear获得标量分,然后多个分数经过softmax变为概率分布。
二、GPT-1的创新点
- 使用Transformer架构代替了LSTM架构,能够更好处理长距离依赖、提取特征,且能够并行执行
- 针对不同的NLP任务提供了变换结构,可以直接在预训练模型基础上针对不同任务进行微调,使得整个过程变成端到端的。
总结
GPT-1为我们提供了一个基于 Transformer 的可以微调的预训练网络。但是在把 BiLSTM 换成 Transformer 的过程中,有信息丢失。ELMo 的语言模型是双向的,可以融合上下文信息,但GPT-1只能向前看,即只能利用上文信息、不能利用下文信息。