R-MAC(Regional Raximum Activation of Convolutions)

来源:互联网 发布:amd游戏优化档案 编辑:程序博客网 时间:2024/06/16 02:25

    众所周知,卷积神经网络的卷积层会产生一个三维的矩阵:W*H*K。如何将三维的转化为二维的,并加以利用呢?

    R-MAC(Regional Raximum Activation of Convolutions)方法是一个十分常用的方法。

    该方法在论文《PARTICULAR OBJECT RETRIEVAL WITH INTEGRAL MAX-POOLING OF CNN ACTIVATIONS》有详细介绍。


    1.产生regions

    首先,需要强调的一点,regions产生在feature maps上,而不是在原图上。

    在L个不同的尺度上产生正方形regions。在最大的尺度(l=1)上,region的尺寸最大。如图所示,依次为l=1,2,3。

    

    


    在某一个尺度 l 上,类似于滑动窗口,只需保证连续的两个region之间的重叠率接近于40%即可。

    采样时,regions的宽=高=2min(W,H)/(l+1),共采样 l*(l+1)个regions。

    假设卷积网络结构中,提取特征的layer产生的feature map大小为W*H*K。以产生的region R1为例,其中的每一层d(1<=d<=K)均会产生一个大小位置与R1相同的regions。

    提取每个region的feature vector,依次进行L2-normalize,PCA-whitening,L2-normalize。

    

    2.图像表示

   以产生的region R1为例,从d层的每个region中找到其最大的激活值 f(R1,d),以该最大值代表这个region。

    所以R1的feature vector可以表示为 f(R1)=[ f(R1,1),...,f(R1,d),...,f(R1,K)],是一个1*K的向量。再次进行L2-normalize。

    公式表示为:

          

    整张图像的描述记为:

             



      该过程以图表示: