一、前言
问:transformer模型的众多派生BERT,RoBERTa,ALBERT,SpanBERT,DistilBERT,SesameBERT,SemBERT,SciBERT,BioBERT,MobileBERT,TinyBERT和CamemBERT有什么共同点?
答:Self-attention//Transformer架构
使用Transformer架构对NLP任务建模,避免使用递归神经网络,完全依赖Self-Attention机制绘制输入和输出之间的全局依赖关系。
本文要:
- 探究Self-Attention机制背后的数学原理
- 引导完成Self-Attention模块中涉及的数学计算
- 从头带领编写Self-Attention模块代码(pytorch)
二、自注意力机制(Self-Attention)
一个self-attention模块输入为 n,输出也为 n.那么在这个模块内部发生了什么?用门外汉的术语来说,self-attention机制允许输入彼此之间进行交互(“self”)并找出它们应该更多关注的区域(“Attention”)。输出是这些交互作用和注意力得分的总和。