具体微调方法:
1.采用翻译的方法。需要配对的pairs
2.自监督训练,输入上下文,预测其中某个位置
每个位置只输入前文,对向量做softmax和交叉熵得到结果
规定每个位置的输入
elmo中提取上下午的方法,先分别预测w4和w5,再把两个向量concat作为w4的预测
bert中的做法,预测位置设置为mask或者随机向量,每个位置预测时输入的大小是相同的。
bert的思路和之前的一篇文章类似,不过模型复杂的多
bert随机选取一个token盖住
wwm采用连续的mask盖住一整个词
spanbert采用不同长度的mask,采取不同的分布,随机盖住token
spanbert里特殊的部分,sbo模块,输入左右连个embedding和要预测的mask中的某个token的位置
xlnet打乱顺序,预测embeding
bert不适合做生成式任务,训练过程中要读全文,而生成只有上文
解决:
bert只能当encoder,但可以借助bert训练一个decoder,训练过程如下,对文本进行还原:
但是要对输入文本进行一个破坏。
破坏方式如下
unilm同时训练三个框架
ELECTRA对token进行二分类,用于判断哪个词是被换掉的,其中被替换的词由small bert生成
15.Sentence Embedding
用一个向量来表示整个句子
skip thought 两个不同的句子,他们下一句可以接的句子都很像,那么这两个句子的向量应该很相似。用上一个句子预测下一个句子
quich thought:如果两个句子是相邻的,那么这两个句子的向量应该是越相似越好。两个下文问句子具有很高的相似度。
NSP,SOP,
nsp是输入两个句子,预测是不是相邻的两个句子。
sop是交换两个句子的顺序之后,则输出是no。