1、Transformer为何使用多头注意力机制?(为什么不使用一个头)?
答案:多头保证了Transformer可以注意到不同子空间的信息,捕捉到更加丰富的特征信息。
2.Transformer为什么Q和K使用不同的权重矩阵生成,为何不能使用同一个值进行自身的点乘?
使用Q/K/V不相同可以保证在不同空间进行投影,增强了表达能力,提高了泛化能力。
3.Transformer计算attention的时候为何选择点乘而不是加法?两者计算复杂度和效果上有什么区别?
答案:为了计算更快。矩阵加法在加法这一块的计算量确实简单,但是作为一个整体计算attention的时候相当于一个隐层,整体计算量和点积相似。在效果上来说,从实验分析,两者的效果和dk相关,dk越大,加法的效果越显著。
4、为什么在进行softmax之前需要对attention进行scaled(为什么除以dk的平方根),并使用公式推导进行讲解。
向量的点积结果会很大,将softmax函数push到梯度很小的区域,scaled会缓解这种现象。
Transformer 面试问题
于 2023-07-01 15:46:38 首次发布