caiyuanhao1998 / MST

A toolbox for spectral compressive imaging reconstruction including MST (CVPR 2022), CST (ECCV 2022), DAUHST (NeurIPS 2022), BiSCI (NeurIPS 2023), HDNet (CVPR 2022), MST++ (CVPRW 2022), etc.
MIT License
637 stars 71 forks source link

关于一个细节的问题 #63

Closed zouge357 closed 4 months ago

zouge357 commented 4 months ago

作者您好,您在mst实现注意力的时候,用的是k乘以q的转置,按照注意力公式不应该是q乘以k的转置?这个设置是有什么原因吗?感谢您的回答 image

caiyuanhao1998 commented 4 months ago

你好,感谢关注。原因是为了在矩阵乘法中节省计算服开销。原先是(HW x C)x(C x HW)。现在改了后是 (C x HW)x(HW x C),这样子就可以把 HW 给消除掉了

zouge357 commented 4 months ago

谢谢您的回复,但是您看代码里面,您将qkv的维度都转换为(1,1,28,147456),此时的话q乘k的转置也同样可以得到(28,28)的通道注意力矩阵呀?这样计算量也是一样的。 image

caiyuanhao1998 commented 4 months ago

是的,此时也是消掉 hw,你此时说的q和我说的k是等价的

zouge357 commented 4 months ago

您的意思是无论是q乘k转置还是k乘q转置这个其实无所谓,要求没那么严格,并不是非要按照原本transformer中的公式,只要使用了qkv计算的思想就可以吗?