Self-Attention

论文no-local neural network给出了一个通用的公式

                   (1)

f是一个计算x_i和x_j关系的函数,结果是一个scalar

g是计算位置j处特征表达的函数

                                  (2)

f可以选多种函数,比如高斯

                                         (3)

而更进一步,可以先对x_i和x_j进行也正空间转化

                                (4)

公式(2)中此时对于给定的i来说

可以理解为在j处的softmax值,公式(1)可以表示为


上图是论文中的no-local block,其实就是加了attention的block

先通过卷积层(也就是特征空间转化)将输入的纬度从1024降维到512,然后两个feature map进行点乘,得到各个像素之间的关系矩阵,关系矩阵的大小是NxN,N=THW,再对这个关系矩阵进行归一化(softmax),论文中实际使用的是N,之后对于位置i处的特征,那么利用关系矩阵中的i行,即1xN去给THWx512的feature map加权累加,得到新的特征y_i

运算量还是挺大的

你可能感兴趣的:(Self-Attention)