2024.3.13 Masked Self-Attention(掩码自注意力机制)
自注意力机制
![](https://imgmd.oss-cn-shanghai.aliyuncs.com/BERT_IMG/%E6%B3%A8%E6%84%8F%E5%8A%9B%E6%9C%BA%E5%88%B6%E7%9F%A9%E9%98%B5%E5%9B%BE.jpg)
自注意力机制计算单词相似度时,已经明确知道这句话有多少个单词,而掩码则是分批次给,最后一次给全
为什么要做这个改进:生成模型,生成单词,是一个个生成的
当我们做生成任务的是时候,我们也想对生成的这个单词做注意力计算,但是,生成的句子是一个一个单词生成的
掩码自注意力机制
例如:I have a dream
- I
- I have
- I have a
- I have a dream
- I have a dream
为结束符
![](https://imgmd.oss-cn-shanghai.aliyuncs.com/BERT_IMG/mask-attention-map.jpg)
详细来说:
- "i" 作为第一个单词,只能有和 "i" 自己的 attention;
- "have" 作为第二个单词,有和 "i、have" 前面两个单词的 attention;
- "a" 作为第三个单词,有和 "i、have、a" 前面三个单词的 attention;
- "dream" 作为最后一个单词,才有对整个句子 4 个单词的 attention。
并且在做完 softmax 之后,横轴结果合为 1。如下图所示:
![](https://imgmd.oss-cn-shanghai.aliyuncs.com/BERT_IMG/mask-attention-map-softmax.jpg)