Learning Data Augmentation Strategies for Object Detection(翻譯)

      這個方法是谷歌大腦Quoc Le團隊,又訓練出的一個目標檢測模型,通過特別的數據擴增策略,再用自動擴增來的新數據集訓練目標檢測模型,使該算法在針對小數據集的目標檢測上取得了很好的效果。該論文和開源代碼如下:

論文傳送門:
https://arxiv.org/abs/1906.11172

代碼傳送門:
https://github.com/tensorflow/tpu/tree/master/models/official/detection

這裏是對這篇論文的簡單介紹。爲方便自己閱讀,製作瞭如下翻譯版,有不對的地方請指點。


摘要

數據增強是深度學習模型訓練的關鍵組成部分。雖然數據增強已被證明能顯著改善圖像分類,但對於目標檢測來說它的潛力尚未被徹底的研究。鑑於對圖像進行標註以進行目標檢測的額外成本,對計算機視覺任務來說,數據增強可能更爲重要。在這項工作中,我們研究了數據增加對目標檢測的影響。我們首先證明了從圖像分類中借用的數據增強操作可能有助於訓練檢測模型,但改進是有限的。因此,我們研究如何學習,專業的數據增強策略提高通用性能的檢測模型。重要的是,這些增強策略只會影響訓練,並且在評估過程中不會改變一個經過訓練的模型。coco數據集上的實驗表明,優化後的數據擴增策略提高了+2.3mAP,並允許單一推理模型達到50.7mAP。更重要的是,在COCO上發現的最佳策略可以不變地轉移到其他檢測數據集和模型中,以提高預測的準確性。例如,用coco確定的最佳增強策略將pascal-voc提高了+2.7mAP以上。我們的研究結果還表明,即使在考慮強基線的情況下,學習到的增強策略也優於最先進的結構正則化方法。學習策略的訓練代碼可在網上查閱。

一、介紹

深層的神經網絡是強大的機器學習系統,如果在大量數據上進行訓練,它們的工作效果最好。爲了增加神經網絡的訓練數據量,許多工作都致力於創造更好的數據增加策略[3,42,21]。在圖像域中,常見的增強包括將圖像translating(翻譯)成幾個像素,或水平翻轉圖像。大多數現代圖像分類器都配有手工製作的數據增強策略[21, 44, 16, 18, 56].(論文21的概括說明

 最近的工作表明,從數據中學習最佳政策,而不是手工設計數據增加戰略,可以大大改進圖像分類模型的推廣性能[22、45、8、33、31、54、2、43、37],5]。對於圖像分類模型,可以通過一個可以從頭創建數據的學習生成器[33、31、54、2、43]或通過學習適用於現有訓練集樣本的一組轉換[5]來增加數據。[37]。對於對象檢測模型而言,增加數據量更爲重要,因爲收集標記的數據用於檢測成本更高,普通檢測數據集的示例比圖像分類數據集要少得多。然而,我們還不清楚如何增加數據:我們是否應該從圖像分類直接重用數據增加策略?我們應該如何處理bounding box和包圍箱的內容?

在本工作中,我們創建了一組簡單的轉換,可以應用於對象檢測數據集,然後將這些轉換轉移到其他檢測數據集和體系結構。這些轉換只在訓練期間使用,而不是測試時間。我們的轉換包括那些可以應用到整個圖像而不影響包圍框位置的轉換(例如從圖像分類模型中借用的顏色轉換),在改變包圍框位置的同時影響到整個圖像的轉換(例如,翻譯或剪切整個圖像),以及只應用於包圍框中的對象的轉換。當轉換的數量變大時,手動有效地組合它們就變得不平凡了。因此,我們搜索專爲對象檢測數據集設計的策略。實驗表明,該方法在不同的數據集、數據集大小、主幹體系結構和檢測算法中具有很好的性能。另外,我們還研究了增強數據策略的性能如何依賴於搜索空間中包含的操作數量,以及增強技術的有效性如何隨着數據集大小的變化而變化。

總之,我們的主要貢獻如下:

  • 設計並實現一種搜索方法,通過將新的運算與邊界框標註相結合,組合和優化對象檢測問題的數據增強策略。
  • 在一系列檢測體系結構和數據集中,顯示出交叉驗證的準確性的持續增長。特別是,對於單個模型,我們超越了CoCO的最新成果,並在Pascal VOC目標檢測上取得了競爭的結果。
  • 通過提供一個強大的正則化,以避免在小對象上的過度擬合,突出了所學的數據增強策略對小數據集是如何特別有利的。

二、相關工作

視覺模型的數據增強策略通常是特定的數據集,甚至是機器學習架構。例如,受過mnist訓練的最先進的模型使用彈性扭曲,影響到尺度、翻譯和旋轉[42、4、47、40]。隨機裁剪和圖像鏡像通常用於在自然圖像上訓練的分類模型[51,21]。在目標檢測的數據增強策略中,圖像和多尺度訓練是應用最廣泛的[15]。以對象爲中心的種植是一種流行的增加種植方法。有些方法不是把注意力放在圖像的某些部分上,而是隨機地擦除或添加噪聲到圖像的補丁中,以提高準確性[9,53,13],健壯性[50,12],或兩者兼而有之[29]。同樣的,[48]學習每個對象的閉塞模式來創建對抗的例子。除了裁剪和擦除,[10]通過剪切和粘貼在訓練圖像上添加新的對象。

爲了避免數據擴增的數據特異性,最近的工作重點是直接從數據本身學習數據擴增戰略。例如,智能增強使用一個網絡,通過合併來自同一類別的兩個或多個樣本來生成新數據[22]。tran等人利用貝葉斯方法,根據從訓練集合[45]中獲得的分佈,生成增強數據。DeVries和泰勒在所學的特徵空間中使用了簡單的變換,如噪聲、插值和外推,以增加數據[8]。ratner等人使用生成對抗網絡來生成數據增強操作的序列[37]。最近,一些論文使用了自動增強搜索空間,改進了優化算法,以更有效地找到自動增強策略。

雖然上述方法都在分類問題上起了作用,但我們採取了一種自動化的方法來尋找最佳的數據增強策略來進行對象檢測。與分類不同的是,標記用於對象檢測的數據更稀缺,因爲對檢測數據進行註釋成本更高。與圖像分類相比,開發用於對象檢測的數據增強策略更加困難,因爲通過扭曲圖像、包圍框位置和檢測數據集中對象的大小引入了更多的方式和複雜性。我們的目標是使用驗證集的準確性來幫助搜索新的檢測增強程序,使用自定義操作在數據集、數據集大小、主幹體系結構和檢測算法之間進行推廣。

三、方法

我們將數據增強搜索作爲離散優化問題來處理,並優化了泛化性能。這項工作擴展了以前的工作重點是對象檢測的增強策略。對象檢測引入了在包圍框位置和扭曲圖像之間保持一致性的額外複雜性。包圍框註釋打開了引入增強操作的可能性,這種操作對每個包圍框中的內容具有唯一的作用。另外,我們還探討了幾何變換應用於圖像時如何改變包圍盒的位置。

我們將擴增策略定義爲k子策略的無序集合。在訓練過程中,k子策略之一將被隨機選擇,然後應用到當前圖像中。每個子策略裏,有N個圖片變換,依次在同一張圖上進行。我們通過創建一個搜索空間[5],將搜索一個學習到的增強策略的問題轉化爲一個離散的優化問題。搜索空間由k=5個子策略組成,每個子策略由n=2種圖像變換,按順序應用於單個圖像。另外,每個操作還與兩個超參數相關聯,指定應用操作的概率和操作的大小。圖2(下文本)顯示了5門學習到的次級政策。該概率參數在增強策略中引入了一個堅忍的概念,選擇的增強操作將被應用到具有指定概率的圖像上。

                          

                                                   

      圖2:學習的擴充子策略示例。應用於一個示例映像的學習子策略的5個示例。每列對應於對應子的不同隨機樣本。 政策。增強子策略的每一步都由與操作、應用概率和幅度度量相對應的三重奏組成。對邊框進行調整以維護CON。 與應用增強的一致性。注意概率和震級是離散的值(詳見文本)。

在幾個初步實驗中,我們爲搜索空間確定了22項操作,這些操作對目標檢測是有益的。這些操作都是在張力流中進行的[1]。我們簡要地總結了這些操作,但保留附錄的細節:

  • 色彩運算.扭曲顏色通道,而不影響包圍框的位置(例如,均衡,對比,亮度)。
  • 幾何運算.幾何上扭曲圖像,相應地改變了包圍框註釋的位置和大小(如旋轉、剪切、平移等)。
  • 包圍箱操作.只扭曲包圍框註釋中包含的像素內容(例如,框只相等,框只旋轉,框只翻轉)。

注意,對於影響圖像幾何形狀的任何操作,我們同樣修改了包圍框的大小和位置以保持一致性。

我們與每個操作關聯一個自定義的參數值範圍,並將這個範圍映射到一個從0到10的標準化範圍。我們將梯度範圍離散爲L均勻間隔的值,這樣這些參數就可以進行離散優化。類似地,我們離散了將操作應用到m均勻間隔值的概率。在初步實驗中,我們發現用rl算法設置L=6和m=6可以很好地平衡計算的可跟蹤性和學習性能。這樣,找到一個好的子策略就變成了在一個包含(22Lm)^2基數的離散空間中的搜索。特別是,要搜索超過5個子策略,搜索空間大約包含(22×6×6)^2×5約等於9.6×10^28的可能性,並且需要有效的搜索技術來導航這個空間。

解決離散優化問題有許多方法,包括強化學習[55]、進化方法[38]和基於序列模型的優化[26]。在本工作中,我們選擇將離散優化問題構建爲rnn的輸出空間,並使用增強學習來更新模型的權重[55]。rnn的訓練設置與[55,56,6,5]相似。我們採用近端策略優化(pop)[41]搜索算法。rnn啓動了30個步驟來預測單個增強策略。未滾動步驟的數目,30,對應於爲枚舉5個子策略而必須作出的離散預測的數目。每個子策略由2個操作組成,每個操作由3個預測組成,對應於選定的圖像變換、應用概率和變換的大小。

爲了訓練每個子模型,我們從CoCo訓練集中選取了5k圖像,因爲我們發現直接在整個CoCo數據集上搜索是非常昂貴的。我們發現用這個子集數據識別的策略在提供大量計算節約的同時,也推廣到了完整的數據集。簡單地說,我們從零開始對每個子模型進行了訓練,這些模型是用resnet-50的主幹[16]和retinanet探測器[24]用餘弦學習速率衰減[30]拍攝的。控制器的獎勵信號是一個定製的託管驗證集上的mAP,該驗證集包含7392圖像,創建自CoCo訓練集的子集。

rnn控制器接受了超過20K的增強策略訓練。搜索使用了400TPU的[20]超過48小時,控制器的超參數與[56]相同。可以利用最近開發的基於人口訓練[17]或密度匹配[23]的更有效的搜索方法來加快搜索速度。學習到的策略可以在附錄中的表格中看到。

四、Results

我們將我們的自動擴增方法應用到了具有Resnet-50[16]骨幹和retinanet[24]的coco數據集上,以便找到良好的擴增策略,推廣到其他檢測數據集。我們使用在coco上找到的頂級策略,並將其應用於不同的數據集、數據集大小和體系結構配置,以檢查通用性以及策略在有限數據系統中的運行方式。

4.1學習數據增強策略

在5kcoco訓練圖像上尋找學習到的增強策略,最終產生了將用於我們所有結果的增強策略。在檢查時,在良好策略中最常用的操作是旋轉,旋轉整個圖像和包圍框。在旋轉之後,包圍框會變得更大,包括所有旋轉的物體。儘管旋轉操作有這種效果,但它似乎是非常有益的:它是良好策略中最常用的操作。通常使用的另外兩個操作是和(僅可翻譯)的。將像素值的直方圖對齊,並且不修改每個包圍框的位置或大小。只以相等的概率將包圍框中的對象垂直、向上或向下翻譯。

4.2學習的增強策略系統地改善了對象檢測

我們評估比較了CoCO數據集[25]在不同主幹網結構和檢測算法上的頂級增強策略的質量。我們從比較RetinaNet對象開始,檢測器採用與[13]相同的訓練協議。簡單地說,我們從零開始訓練,全局批量大小爲64,圖像大小調整爲640×640,學習率爲0.08,w衰減爲1e-4,α= 0.25和γ=1.5的焦損參數,訓練150個epoch,採用逐步衰減法,在120和140時,學習速率降低10倍。所有模型都接受了關於TPU的訓練。 [20].

本節和後續章節中使用的基線RetinaNet架構主要採用了針對圖像分類訓練定製的標準數據擴展技術[24]。這包括進行50%概率的水平翻轉和多尺度抖動,其中圖像在訓練期間隨機調整大小在512和786之間,然後裁剪到640 x640。

表1和表2顯示了我們在上述過程中使用增強策略的結果。在表1中,學習到的增強策略在多個骨幹架構師中實現了系統增益。 改善範圍從1.6mAP到2.3mAP。相比之下,應用於ResNet-50[13]的最先進的正則化技術獲得了1.7%的MAP(表2)。

                         

爲了更好地理解增益來自何處,我們將應用到Resnet-50的數據增強策略分爲三個部分:顏色操作、幾何操作和bbox-only-operation(表 2)。採用顏色運算僅提高了+0.8mAP的性能。將搜索與幾何操作相結合可通過+1.9mAP提高性能的提升。最後,在與前幾次操作一起使用時,添加包圍框特定操作會產生最好的結果,並比基線提高+2.3%mAP。請注意,該策略僅使用5kCoCo訓練示例進行搜索,並且在對整個CoCo數據集進行訓練時仍然能很好地推廣。

4.3.利用所學的增強策略實現最先進的目標檢測

一個好的數據增強策略是一種可以在模型之間、數據集之間進行傳輸的策略,並且可以很好地工作在不同圖像大小的模型上。在這裏,我們在一個不同的骨幹架構和檢測模型上實驗學習到的增強策略。爲了測試學習的策略如何轉移到最先進的檢測模型,我們用AmoebaNet-D[38]主幹替換了ResNet-50主幹網絡。檢測算法由RetinaNet[24]改爲NAS-FPN[14].此外,我們還爲AmoebaNetD骨幹使用ImageNet預訓練,因爲我們發現在從頭開始的訓練中,我們無法取得競爭性的成績。模型損耗爲150個epoch,採用餘弦學習率衰減,學習速率爲0.08。設置的其餘部分與ResNet-50相同。 主幹模型除圖像大小由640×640增加到1280×1280。

表3顯示,在競爭、檢測架構和設置的頂部,已學習的增強策略提高了+1.5%的mAP。這些實驗還表明,增強策略在不同的主幹網體系結構、檢測算法、圖像大小(即640個→1280像素)和訓練過程(從頭開始的訓練→使用imagenet預訓練)之間進行了很好的傳輸。我們可以通過將圖像分辨率從1280增加到1536像素來進一步擴展這些結果,並同樣增加[49]之後的探測錨的數量。由於這一模式比以前的模式大得多,我們通過將搜索中的前4個政策結合起來,增加了學習型政策中的子政策,從而導致了20個學習型政策的增加

                     

這些簡單修改的結果是第一個單階段檢測系統,實現了先進的單模型50.7mAP在coco上的結果。我們注意到,這一結果只需要圖像的一次傳遞,而以前的結果要求在測試時間[32]的不同空間尺度上對同一圖像進行多次評價。此外,這些結果是通過提高圖像分辨率和增加錨錨的數量來獲得的,這些錨都是爲了提高目標檢測性能[49,19]。與此相反,以前的最新成果依靠的是對模型結構和正則化方法的大致多重定製修改,以實現這些成果[32]。我們的方法在很大程度上依賴於一個更現代的網絡架構和一個學習到的數據增強策略。

4.4.學習的增強策略轉移到其他檢測數據集。

爲了評估完全不同的數據集和另一種不同的檢測算法的可移植性,我們在PASCAL VOC數據集上用ResNet-101骨幹網訓練了一個Faster R_CNN模型。我們比較了Pascal VOC 2007和Pascal VOC 2012的訓練集,並在Pascal VOC 2007測試集(4952張圖像)上進行了測試。我們的評價標準是平均精度。對於基線模型,我們使用TensorFlow對象檢測API[19]和默認的超參數:9個GPU工作者用於異步訓練wh 每個工作人員都要處理1批。初始學習速率設置爲3×10×4,500 K後下降0.1。訓練從CoCO檢測模型檢查點開始。當崔 根據我們的數據增強策略,我們不會更改任何訓練詳情,並將我們的策略添加到Coco上,以便進行預處理。這導致在MAP50上改進了2.7%(表4)。

                       

4.5.學習增強策略模擬大型註釋數據集的性能 

在本節中,我們進行了實驗,以確定如果有更多或更少的訓練數據,學習到的增強策略將如何執行。爲了進行這些實驗,我們使用了coco數據集的子集來製作具有以下圖像數的數據集:5000,9000,14000,23000(見表5)。在這個實驗中訓練的所有模型都是使用resnet-50的有視網膜的骨幹,並且在150個時代中不使用成像儀的預先訓練。

                        

正如我們所預期的那樣,在對模型進行關於較小數據集的訓練時,由於所學的擴充政策而得到的改進較大,如圖3和表5所示。我們顯示,對於在5,000個訓練樣本上訓練的模型,學習到的增強策略可以比基線改善70%以上的mAP。隨着訓練人數的增加,增加學習的政策的效果下降,儘管改進仍然很顯著。值得注意的是,受過學習增強策略訓練的模型在檢測較小的對象方面似乎做得特別好,尤其是當訓練數據集中的圖像較少的時候。例如,對於小對象,應用學習到的增強策略似乎比增加50%的數據集大小要好,如表5中所示。對於小物體,使用9000個例子的學習增強策略進行訓練,當使用15000個圖像時,效果比基線好。在這個場景中,使用我們的增強策略幾乎和您的數據集大小加倍一樣有效。

                             

另一個有趣的行爲是,受過學習增強策略訓練的模型在ap75(平均精度iou=0.75)的難度任務上做得相對更好。在圖4中,我們繪製了mAP、ap50和ap75的百分比改進圖,用於學習增強策略(相對於基線增強)的模型。在所有訓練集尺寸上,ap75的相對改進大於ap50。所學的數據增強在ap75上特別有用,這表明增強策略有助於更精確地調整包圍框預測。這表明,增強策略特別有助於在包圍框位置中學習精細的空間細節——這與觀察到的小物體的增益是一致的。

4.6.改進模型正規化

在本節中,我們研究了學習數據增強的正則化效果。我們首先注意到,檢測模型的最終訓練損失是較低的,當訓練在一個更大的訓練集(見圖5的黑色曲線)。當我們應用所學的數據增強時,所有數據集大小(紅色曲線)的訓練損失都會顯著增加。正則化效應也可以通過觀察訓練模型的權值的L2範數來看出。在較大的數據集上訓練的模型的L2準則較小,而在學習增強策略下訓練的模型的L2準則比在基線增強訓練下訓練的模型的L2準則較小(見圖6)。

                  

五、討論

在本工作中,我們研究了一個學習到的數據增強策略在對象檢測性能上的應用。我們發現,在所有考慮的數據大小中,學習到的數據增強策略都是有效的,訓練集很小時,則有較大的改進。我們還觀察到,由於學習到的數據增加策略在更難的任務上有更大的改進,即檢測更小的對象和更精確的檢測。

我們還發現,其他成功的正則化技術,如果與學習到的數據增強策略一起應用,是沒有好處的。我們用輸入錯誤[52],Manifold Mixup[46]和滴管[13]進行了幾個實驗。對於所有的方法,我們發現它們既沒有幫助也沒有傷害模型性能。這是一個有趣的結果,因爲所提出的方法獨立地優於這些正則化方法,但是很顯然,當應用一個學習到的數據增強策略時,這些正則化方法是不需要的

今後的工作將包括將這種方法應用於其他感知領域。例如,學習增加策略的自然延伸將是語義[28]和實例分割[34,7]。同樣,點雲特性是另一個具有豐富的幾何數據增強操作可能性的領域,並且可以從類似這裏所採取的方法中受益。獲取此類任務的訓練實例所需的人工註釋成本很高。根據我們的研究結果,所學的增強策略是可以轉移的,並且對於在有限的訓練數據上訓練的模型更有效。因此,投資圖書館學習數據增加政策可能是獲取附加人類註釋數據的有效替代辦法。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章