模型之T5,UniLM,MASS,GPT

公司项目上有个文本生成的任务,难度比较大,花了相对不短的时间去熟悉这些模型,当然也没花太久,大概也就是读了下论文,以及网友们的一些介绍,现在记录总结下,后续应该会去阅读以及改写相关源码,便于做预训练以及fine-tune。

T5(text-to-text transfer transformer)

万物皆可text的感觉,先看一下下面的图:

模型之T5,UniLM,MASS,GPT
在上图中,包含了四个任务,机器翻译、文本分类、相似度得分、文本生成。个人感觉T5主要是作者依托公司强大的计算能力,进行各种各样的对比实验,得出一系列的结论。

; 模型介绍

注意力机制

采用的注意力机制,目前注意力机制有以下的几种:

模型之T5,UniLM,MASS,GPT
假设有X X X: x 1 , x 2 , x 3 , x 4 , x 5 , x 6 x_1,x_2,x_3,x_4,x_5,x_6 x 1 ​,x 2 ​,x 3 ​,x 4 ​,x 5 ​,x 6 ​,mask后作为模型输入的是x 1 , [ m a s k ] , x 3 , [ m a s k ] , [ m a s k ] , x 6 x_1,[mask],x_3,[mask],[mask],x_6 x 1 ​,[m a s k ],x 3 ​,[m a s k ],[m a s k ],x 6 ​,对应不同的注意力方式如下:

; Fully-visible(全部可见)

这个是注意力机制是自回归模型,在进行x 2 , x 4 , x 5 x_2,x_4,x_5 x 2 ​,x 4 ​,x 5 ​的预测时,它们各自独立,互不干扰,跟transformer中的encoder(bert)一致;

Causal(因果相连)

这个是注意力机制的自编码模型,在进行x 2 , x 4 , x 5 x_2,x_4,x_5 x 2 ​,x 4 ​,x 5 ​的预测时,根据方向的不同,前面的输出会对后面的输出产生影响,例如x 4 x_4 x 4 ​受到x 2 x_2 x 2 ​的影响,x 5 x_5 x 5 ​受到x 4 x_4 x 4 ​、x 2 x_2 x 2 ​的影响;跟transformer中的decoder一致;

Causal with prefix(因果与前缀)

不知道怎么翻译,是fully-visible和causal的中和体,针对上面的例子就是x 4 x_4 x 4 ​、x 5 x_5 x 5 ​收到x 2 x_2 x 2 ​的影响,但是x 4 x_4 x 4 ​与x 5 x_5 x 5 ​互相独立,使用这种注意力机制的叫做部分自编码模型;

模型结构

模型之T5,UniLM,MASS,GPT

; transformer(encoder-decoder)

encoder部分是fully-visible注意力,decoder是causal注意力机制

language model

是causal注意力机制

Prefix LM

使用的是causal with prefix注意力机制

实验结论

模型之T5,UniLM,MASS,GPT

; 预训练方法

竞争选手:(LM, Bert-style,Deshuffing)
获胜选手: Bert-style
原因:
LM的不具有上下文信息,只具有前文信息,总体效果不好(GPT-2);
Deshuffling(打乱句子顺序),训练学习难度太大,难以取得好的效果。

展示一个知乎回答:

模型之T5,UniLM,MASS,GPT

mask策略

竞争选手:(单一mask, span mask, drop)
获胜选手: span mask
原因:单一mask信息的效果在文本生成任务的效果没有span mask,drop带来的效果,可能会出现多个候选词都合适,然后训练造成的结果不太好,猜测可能有误识别、过拟合的患处;span mask就是mask片段。

mask的比例

竞争选手: (10%,15%,25%,50%)
获胜选手: 15%
原因:花钱得出来的结果吧,So,bert的作者也是厉害

mask的长度

竞争选手: (2,3,5,10)
获胜选手: 3
原因:实验得出来的结果吧

其它

数据集(C4)

这对从互联网获取的数据,进行以下处理得到:

模型之T5,UniLM,MASS,GPT

; UniLM

模型介绍

模型之T5,UniLM,MASS,GPT

; 注意力机制

1. 双向注意力

图中的的bidirectional LM,互相影响,包含上下文信息;

2. 单向注意力

图中的Left-to-Right LM,当然Right-to-Left LM也是,叫做unbidirectional;

3. seq-to-seq注意力

1和2的中和吧,S1使用双向注意力,S2使用单项注意力。

公式

模型之T5,UniLM,MASS,GPT
模型之T5,UniLM,MASS,GPT
当中的核心值是M i j M_{ij}M i j ​,它代表了不同的注意力机制所产生的影响。

; 模型结构

没啥说的,transformer走起

预训练目标

input: X:[x 1 x_1 x 1 ​,x 2 x_2 x 2 ​,x 3 x_3 x 3 ​,x 4 x_4 x 4 ​]
mask是x 3 x_3 x 3 ​,此时预训练预测mask为x 3 x_3 x 3 ​
如果使用bidirectional LM,此时x 1 x_1 x 1 ​,x 2 x_2 x 2 ​的M值为0,x 4 x_4 x 4 ​的M值为-∞
如果使用unbidirectional LM,此时x 1 x_1 x 1 ​,x 2 x_2 x 2 ​,x 4 x_4 x 4 ​的M值为0

对于seq-to-seq LM
有一个短语对,[t 1 t_1 t 1 ​,t 2 t_2 t 2 ​]与[t 3 t_3 t 3 ​,t 4 t_4 t 4 ​,t 5 t_5 t 5 ​]
input: X: [SOS]t 1 t 2 t_1t_2 t 1 ​t 2 ​[EOS]t 3 t 4 t 5 t_3t_4t_5 t 3 ​t 4 ​t 5 ​[EOS]
t 1 , t 2 t_1,t_2 t 1 ​,t 2 ​受[SOS]、第一个[EOS]、t 1 t_1 t 1 ​和t 2 t_2 t 2 ​的影响,操作处理跟unbidirectional LM相同
t 3 , t 4 , t 5 , t 6 , t_3,t_4,t_5,t_6,t 3 ​,t 4 ​,t 5 ​,t 6 ​,[EOS]受他们前置的影响,操作处理跟bidirectional LM相同

预训练参数设置

模型之T5,UniLM,MASS,GPT
1/3的bidirectional LM,1/3的sequence-to-sequence LM objective,1/6的从左到右、1/6的从右到左undirectional LM

; MASS

模型结构

模型之T5,UniLM,MASS,GPT
模型之T5,UniLM,MASS,GPT
模型之T5,UniLM,MASS,GPT
其他没啥说的,随便找相关博客看看吧

; GPT

累了,先欠着吧,来来转转都是这些

其它

teacher forcing

有一定的概率选择当前时段的输出,作为下一时段的输入;也有可能选择下一段时段的原始标记,作为下一时段的输入;

Original: https://blog.csdn.net/lcomecon/article/details/122489982
Author: lcomecon
Title: 模型之T5,UniLM,MASS,GPT

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/530626/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球