自監督學習目標檢測論文self-EMD筆記

論文名稱:Self-EMD: Self-Supervised Object Detection without ImageNet

論文地址://arxiv.org/abs/2011.13677

核心思想

提出了一個應用於目標檢測的自監督表示學習方法——self-EMD,可以直接採用COCO數據集(non-iconic)進行訓練,不像傳統的方法在ImageNet數據集(iconic-object)上進行訓練。利用卷積特徵圖作為image embedding(一般的自監督學習的方法採用經過感知機後的一位向量作為embedding,損失了空間結構,但是目標檢測住主要依賴於空間結構),並使用**EMD(Earth Mover’s Distance)**來計算一對embedding之間的相似性,最終使用Faster RCNN(ResNet50_FPN)的演算法在COCO數據集上39.8%的mAP,與現有的自監督學習的演算法(在ImageNet上預訓練之後)精度基本上一致,如果採用更多的無標註數據,那麼這個演算法在COCO上的mAP可以達到40.4%.

演算法介紹

現在的自監督學習通過在ImageNet數據集上實現實例級的影像分類來進行無監督的預訓練,通過最大化不同影像之間的距離(相似度),最小化同一張影像的不同view之間的相似度來學習一個良好的表示,這種方法針對ImageNet這種分類數據集(一張影像上一個分類物體)來說是適用的。但是針對COCO這種多目標數據集來說就不太適用,因為如果對一張影像是實現裁剪可能得到的是不同的物體,因此在目標檢測中這種對比表示學習的方法不適用。
而且傳統的自監督表示學習的方法常常使用Global Pooling的方法來得到Image Embedding,這就損失了影像的局部與空間資訊,在目標檢測中影像的不同位置對應了不同的物體,空間結構比較重要。
self-EMD提出去掉全局池化層,直接使用卷積特徵圖作為Image Embedding,這樣就能保存局部與空間資訊,但是這樣該如何度量兩個feature map之間的相似性呢?而且同一個image的不同crop影像可能包含著不同的影像,因此,度量標準就需要在不同的局部patch中能夠挑選出最優的匹配並且最小化不相關區域之間的雜訊問題,本文提出使**用EMD(Earth Movier『s Distance)**來作為度量標準計算所有局部patches的相似性,這種方法命名為Self-EMD。EMD適用於度量結構性表示之間相似性。給定所有元素對之間的相似性,EMD可以在擁有最小損失的結構之間獲得最優的匹配。文章採用cosine相似度來度量兩個feature map之間的不同位置之間的相似性並且為EMD約束設置一個合適的權重。

Self-EMD採用BYOL作為其baseline。

在這裡插入圖片描述
Self-EMD與BYOL不同在於去掉了最後的全局池化層,並採用卷積層替代了MLP head。採用最後的卷積特徵圖作為image embedding。

Earth Mover’s Distance用來度量兩組加權的obejct或者加權的分布之間的距離。離散版本的EMD已經在最優傳輸問題(OTP)中已經被廣泛的研究。特別地,如果需要運輸一組資源在這裡插入圖片描述到一些目的地在這裡插入圖片描述,從si到dj的運輸損失記為cij, 策略使用在這裡插入圖片描述來進行標記。最終找尋最優的策略:
在這裡插入圖片描述
線性最優問題,可以在多項式中時間進行求解,但是針對影像特徵圖,時間複雜度存在影像的解析度的平方還有batch size,時間複雜度依然很高。使用快速的迭代法(Sinkhorn-Knopp演算法)來求解:
在這裡插入圖片描述
E為正則化項,在這裡插入圖片描述
利用拉格朗日變換為無約束的最優問題:
在這裡插入圖片描述
令導數為0,得到:
在這裡插入圖片描述
當(7)(8)同時滿足時,一個uv的可能解可以由一以下的迭代產生:
在這裡插入圖片描述
最終的近似最優解為:
在這裡插入圖片描述

EMD距離應用於feature map上時,兩個特徵圖分別作為資源與目的地,那麼損失可以定義為:
在這裡插入圖片描述

在計算得到最優的轉換之後,可以得到兩個影像特徵圖表示之間的相似度:
在這裡插入圖片描述

實驗結果

在這裡插入圖片描述

更多資料