残差链接在Transformer中的作用(原理解析)

关于残差链接可以减去梯度消失,优化模型训练过程。很多文章已经写了很多了,国内大多数回答是直接说结论,关于原理并没有解释清。以下是我学习的记录,信息来源:Why are residual connections needed in transformer architectures?

这个问题的提出背景是,残差链接是在极深网络中提出的,传统Transformer模型并不足够深(base 12层),那么为什么在默认实现中我们加入了残差链接呢?论坛的回答中是这样解释的:
1. 在反向传播期间,由于我们在FeedForward层使用了Relu函数,数学上这导致我们的梯度有一半情况下会是零。如果我们没有残差链接,训练时信息的丢失会是灾难性的。残差链接保证了一条逃逸路径,在这条路径上我们不会丢失我们的梯度。
2. 使用残差链接意味着我们的自注意力计算可以更加的灵活和多变,即不用考虑保留原有数据的问题,残差链接完成了原始数据向下一层的传递。如果没有残差链接,我们需要想办法让自注意力计算保留原始数据,这与自注意力的设计理念是相反的(这个在注意力集中的文章中有提到),注意力矩阵应该是稀疏的才是(每一个词关联尽量少的词),如果我企图在注意力矩阵中保留原始信息,那必然会影响现有注意力信息的质量。

留下评论

通过 WordPress.com 设计一个这样的站点
从这里开始