WILDCAT: Weakly Supervised Learning of Deep ConvNets for Image Classification, Pointwise Localization and Segmentation,CVPR2017

本文提出了一種弱監督學習架構,在一些數據集中分類效果比Resnet-101平均高約5-10個點。在我的模糊幀識別項目中,由於幀的模糊通常是局部的運動模糊,acc提升了5個點,從74提升到79,baseline是通用的resnet50和densnet121等。

網路的整體結構如下:

整個網路由多個模塊串聯而成。首先,圖像經過基於ResNet-101的全卷積網路,然後經過WSL transfer layer,這個層的操作是使用1*1卷積,輸入是 W/32 * H/32 * 2048 ,記為 w*h*d ,輸出為 w*d*MC ,其中M是一個超參數,C為類別數。

接下來,對於每個類的feature map,分別進行池化,叫做class-wise pooling,這裡原文進行了平均值池化。接下來,對C個每類的特徵圖,進行spatial pooling,下面仔細講。這些結構如下:

spatial pooling是本文的關鍵。對於每個類的輸入feature map,每個區域的輸入為z,考慮到最大的k+個激活值,和最小的k-個激活值(乘上一個係數α),共同對類c的score有貢獻。

很多已有的池化,都是spatial pooling的特殊形式,如下:

在一些數據集上,WILDCAT取得了比Resnet-101高平均約5-10個點的效果,也超越了一些已有的弱監督學習演算法,如DeepMIL

α在本文中有重要的作用,適當的值可以取得最好的效果,這是由於適度地考慮了最小激活值的幾個區域的作用,如圖

適當的M值,可以取得最好的效果。M值過小,則每個類的特徵數太少,M值過大,導致過擬合。

WILDCAT演算法的關鍵,在於spatial pooling時,選取適當的區域貢獻結果。

durandtibo/wildcat.pytorch?

github.com
圖標

推薦閱讀:
相关文章