Bert
2021-12-28 21:25:35 16 举报
bert学习
作者其他创作
大纲/内容
Mask LM根据上下文去预测这些mask掉的字
self-attention:softmax(q*k^T/根号dk)*vdk是维度,除以根号dk是为了使得attention的权重分布方差为1
ernie
12层transformer的encoder部分
roberta
两层layerNorm
网络结构
两层Linear以及在第一层加入了ReLu激活函数,用于向下传播
选择15%的句子作为待mask句子
BERT
XLNET
1个feed forward
目的是让模型理解两个句子之间的联系。使得模型能够解决QA和NLI之类的任务
每个head分别做self-attention,每个head是由不同的linear映射来的
①用更多的数据,更大的batchsize,更久地训练模型②RoBERTa去掉了NSP任务,使用FULL-SENTENCES训练方式。每次输入连续的多个句子,直到最大长度512。③用更长的序列进行预测④动态改变应用于训练数据的覆盖模式
这其中80%用[mask]替换,10%随机替换一个其他字,10%不替换
与BERT最大的不同在于覆盖策略上:①基础级的masking②短语级的masking③实体级的masking
Batch Normalization 是对这批样本的同一维度特征做归一化, Layer Normalization 是对这单个样本的所有维度特征做归一化。BN、LN可以看作横向和纵向的区别。BatchNorm就是通过对batch size这个维度归一化来让分布稳定下来。LayerNorm则是通过对Hidden size这个维度归一。
hidden(32 x 512 x 768) -> query(32 x 512 x 768) -> 32 x 12 x 512 x 64hidden(32 x 512 x 768) -> key(32 x 512 x 768) -> 32 x 12 x 512 x 64hidden(32 x 512 x 768) -> val(32 x 512 x 768) -> 32 x 12 x 512 x 64三个矩阵,12个head(multi-head)
Albert
常见变体
它不在输入时进行mask操作,而是在做attention时在相应的位置做掩码操作。
每个transformer encoder结构
NEXT SENTENCE判断两个句子是否在文章中互为上下句。50%的概率sentence2是sentence1的下文,50%的概率不是
预训练任务
1个multi-head attition
ALBERT主要是轻量。用了两个方法减少参数量:①分解嵌入参数化②跨层参数共享参数量比bert小了18倍
0 条评论
下一页