Attention Mechanism主要有以下两个方面作用:
- 决定需要关注输入的哪部分。
- 分配有限的信息处理资源给重要的部分。
在神经网络中,注意力模块通常是一个额外的神经网络,能够硬性选择输入的某些部分,或者给输入的不同部分分配不同的权重。关于模型优化,注意力机制通常有一个连接在原神经网络之后的额外的神经网络实现,整个模型仍然是端到端的,因此注意力模块能够和原模型一起同步训练。对于soft attention,注意力模块对其输入是可微的,所以整个模型仍可用梯度方法来优化。而对于hard attention,注意力机制要做出硬性的决定,离散地选择其输入的一部分,这样整个系统对于输入不再是可谓的。所以强化学习中的一些技术被用来优化包含硬性注意力的模型。总之,注意力机制能够帮助模型选择更好的中间特征。