Transformer简单理解(MT)

Transformer

21年cs224n的Transformer这课换了TA来讲,有点听不太懂(我是菜狗)这篇suggested reading讲得非常清楚
The Illustrated Transformer

Transformer简单理解(MT)_第1张图片

Key-Query-Value Attention

Transformer简单理解(MT)_第2张图片

Transformer简单理解(MT)_第3张图片

使得xi的不同方面得以被使用或强调。

计算分数时,除以d的平方根以获得更加稳定的梯度。softmax计算得到的某单词上的权重可以被视作为该单词应当被获得的注意力大小,最后的加权平均体现了注意力大的单词作用到z的影响力更大,而注意力小的单词倾向于被忽略(权重很小)。

Transformer简单理解(MT)_第4张图片

矩阵运算

Transformer简单理解(MT)_第5张图片

X的每一行都代表了一个词嵌入, X ∈ R T × d , K , Q , V ∈ R d × d X\in R^{T\times d}, K,Q,V\in R^{d\times d} XRT×d,K,Q,VRd×d(事实上K,Q,V的列数可以不等于d,例如图上所示)。

如此一来, X K , X Q , X V ∈ R T × d XK, XQ, XV\in R^{T\times d} XK,XQ,XVRT×d

综合计算过程如下

Transformer简单理解(MT)_第6张图片

多头注意力机制

同时关注一句话中的多个词,通过使用不同的K,Q,V矩阵实现。

一种是ppt上的方法,令 Q l , K l , V l ∈ R d × d h Q_l,K_l,V_l\in R^{d\times \frac{d}{h}} Ql,Kl,VlRd×hd ,其中h是注意力头的数目,最后拼接起h个z;另一种是链接里的方法,保持Q,K,V的维数不变,拼接Z成一个大向量
Transformer简单理解(MT)_第7张图片

Transformer简单理解(MT)_第8张图片
Transformer简单理解(MT)_第9张图片

一个注意力头的重点在animal,另一个注意力头的重点在tired

最后一个线性层

在这里插入图片描述

linear layer是一个简单的全连接神经网络,它将decoder堆栈产生的向量投射到一个大得多的向量(维数为vocab的大小),称为logits向量,每个元素对应了每个单词的得分。再经过一个softmax,得分转化为概率,于是概率最高的元素对应的单词就被选取。
Transformer简单理解(MT)_第10张图片

训练技巧

Residual connections

Transformer简单理解(MT)_第11张图片

在这里插入图片描述

只需要学习第i层和第i-1层有什么不同,而不是需要从头开始学

Transformer简单理解(MT)_第12张图片

Layer normalization

加速训练过程,减少无信息的变化传递

你可能感兴趣的:(nlp,transformer,机器翻译,深度学习)