深度学习中的注意力机制与生成对抗网络
1. 自注意力与Transformer架构
在深入研究序列分析时,我们了解了RNN等基础架构后,现在将目光投向RNN的新发展,特别是自注意力机制和Transformer架构。
1.1 点积注意力
早期,我们探讨过一种注意力形式,现在我们将讨论缩放点积注意力。点积注意力计算每个编码器隐藏状态之间的点积作为对齐分数,这些权重用于计算上下文向量,它是编码器隐藏状态的凸和(通过softmax)。
为什么使用点积来衡量对齐呢?两个向量的点积可以表示为两个向量的范数和它们之间夹角的余弦的乘积。当两个向量之间的夹角趋近于0时,余弦值趋近于1,点积增大。因此,点积可以作为自然的相似度度量。
在2017年,Vaswani等人对现有的点积注意力框架进行了改进,引入了缩放因子,即隐藏状态维度的平方根。随着隐藏状态表示的维度越来越大,高幅值点积的实例会显著增加。为了理解引入缩放因子的原因,假设(h_i)的每个索引都独立且同分布于均值为0、方差为1的随机变量。下面计算它们点积的期望和方差:
- 期望:
- (E[s_t^T h_i] = \sum_{j = 1}^{k} E[s_{t,j} * h_{i,j}])
- 由于期望的线性性质,(E[s_{t,j} * h_{i,j}]=E[s_{t,j}]E[h_{i,j}]),又因为每个随机变量的期望为0,所以(\sum_{j = 1}^{k} E[s_{t,j}]E[h_{i,j}]=0)。
- 方差:
- (Var[s_t^T h_i] = \sum_{j = 1}^{k} Var[s_{t,j} * h_{i,j}]) <
超级会员免费看
订阅专栏 解锁全文
2790

被折叠的 条评论
为什么被折叠?



