共 7 篇文章 |
|
Decoder的每一层有三个操作,分别是Self-Attention、Encoder-Decoder Attention以及Feed Forward操作。Self-attention 和 Encoder-Decoder Attention 其实都是Multi-Head Attention,取名不同是因为self-attention 的 key,values,query是相同的向量经过线性变换得到的,Encoder-Decoder Attention 的key,value来自Encoder,query来自Decoder... 阅65 转0 评0 公众公开 22-03-02 09:48 |
Bert 是一个语言表征模型,能实现语言表征目标训练,通过深度双向 Transformer 模型达到语义理解的目的。然后对每个 Token 进行 3 个 Embedding,词的 Embedding (Token Embeddings),位置 Embedding (Position Embeddings),句子 Embedding (Segment Embeddings)。Bert 提出 Masked Language Model,也就是随机遮住句子中部分 Token,模型再去... 阅542 转6 评0 公众公开 20-12-12 10:27 |
def padding_mask(seq_k, seq_q): # seq_k 和 seq_q 的形状都是 [B,L] len_q = seq_q.size(1) # `PAD` is 0 pad_mask = seq_k.eq(0) # shape [B, L_q, L_k] pad_mask = pad_mask.unsqueeze(1).expand(-1, len_q, -1) return pad_mask复制代码。对于decoder的self-attention,里面使用到的scaled dot-product attention,同时需要padding mask ... 阅932 转3 评0 公众公开 20-12-05 20:04 |
如下图所示, Attention 机制将目标字和上下文各个字的语义向量表示作为输入,首先通过线性变换获得目标字的 Query 向量表示、上下文各个字的 Key 向量表示以及目标字与上下文各个字的原始 Value 表示,然后计算 Query 向量与各个 Key 向量的相似度作为权重,加权融合目标字的 Value 向量和各个上下文字的 Value 向量,作为 Attention 的输出,... 阅221 转0 评0 公众公开 20-12-05 19:48 |