基于圖像的數據增強方法發展現狀綜述
摘要:
摘要: 現階段,基于深度學習的圖像處理和識別技術已經發展的十分成熟,但在某些圖像識別任務中由于深度學習技術的特點,一些深度神經網絡模型層數較多導致的學習能力較強,將圖像數據樣本中的特征學習的過于充分,使得神經網絡模型在訓練數據上出現過擬合現象。同時,基于深度學習的圖像處理算法訓練的模型的好壞與數據集的質量、規模息息相關,但由于客觀原因存在獲得的圖像數據集小、圖像質量差,樣本分布不均衡等現象。針對上述問題,研究人員提出通過使用圖像數據增強技術實現對模型的輸入數據的規模、質量和分布情況進行優化,將數據增強后的數據集用于深度學習模型將有效降低出現過擬合現象的概率。本文的主要工作是對現有的圖像數據增強技術進行討論,從傳統圖像處理方法和基于深度學習數據增強方法兩方面進行梳理總結,其中傳統圖像處理方法有幾何變換、顏色變換和像素變換;基于機器學習的圖像數據增強方法有自動數據增強方法、基于生成對抗網絡數據增強方法和基于自動編碼器和生成對抗網絡組合的數據增強方法。本文著重對圖像融合、信息刪除以及基于生成對抗網絡的圖像數據增強方法等技術進行介紹,并且對文中提出的數據增強方法的思想及其優缺點進行討論,為研究人員在不同圖像任務中利用對應的數據增強方法來優化數據集從而提高模型準確率提供研究思路。
1. 引言
隨著人工智能技術的不斷發展,基于深度學習的圖像處理技術愈發成熟,應用也越來越廣泛。由數據集驅動的人工智能技術訓練的模型往往需要巨大規模的數據集,但由于時間成本和金錢成本的限制,可能常會遇到圖像數量少、圖像質量差和類別不均衡 [1] 的情形,這給圖像識別任務帶來種種困難,數據集中圖像的質量和數量極大的影響了深度學習模型的泛化能力。由于深度學習網絡模型有著極強的學習能力,模型可能經常會將圖像數據集上數據的一般特征提取出來作為預測某一類結果的特性,這往往會導致模型在訓練集上會預測出很好的結果,而在測試集以及驗證集上的有較高的錯誤率,模型的泛化能力低 [2]。
基于圖像的數據增強能夠增加訓練樣本的多樣性,如通過翻轉、添加噪聲等基礎圖像處理操作或根據現有數據生成新的樣本進行數據集擴充、數據質量的增強。使用數據增強方法后的數據集訓練模型,以達到提升模型的穩健性、泛化能力的效果。
本文主要研究了基于圖像的數據增強技術,并對其進行歸類整理,著重介紹各類技術的特點及其解決的問題,對其存在的不足進行分析。對圖像數據增強技術待解決問題進行總結,為相關研究人員提供詳盡的技術發展狀況報告。
2. 圖像數據增強概述
2.1. 數據增強
數據增強,也叫數據增廣。數據增強方法的本質實際上是在現有的有限數據的基礎上,在不實際收集更多數據的前提下,而讓數據產生等價于更大數據量的價值,即根據現有數據樣本按照規則生成增量數據的過程。數據增強方法不僅是數據樣本量的增多,更多的是數據本身特征的“增強”。樣本數據是整體數據的抽樣,當樣本數據量足夠大時,樣本的分布情況和總體的分布情況應相似。但由于客觀原因收集的樣本數據不夠完整,這時則可通過數據增強方法生成與真實數據分布更加相似的新樣本的數據;深度學習網絡模型擁有極強的學習能力,因此學習到的一些無用的信息特征對最終的結果會產生負面影響,而數據增強技術可實現按照需求針對數據施加約束來增加先驗知識的前置過程,如將一些信息刪除或補全,來減少負面影響對處理圖像任務的模型性能的影響。
現階段數據增強方法的使用方式主要被分為兩種:離線增強和在線增強。離線增強是指對數據集執行一次性轉換,該操作可成倍增加數據樣本的數量。使用數據增強方法產生的樣本數量為增強因子數與原始數據樣本量的乘積。離線增強由于一次性處理全部數據集,因此適用于較小的數據集。在線增強使在獲取批量的數據后就對其進行數據增強操作,隨后增強后的數據就被送入機器學習模型進行訓練,由于其批量處理的特性,因此一般適用于大數據集。
2.2. 基于圖像的數據增強的分類
數據增強方法主要有作用于圖像的和作用于文本的兩類,本文主要介紹基于圖像的數據增強方法 [3],根據是否使用機器學習技術,其被分為兩個部分進行討論:基于傳統圖像處理技術的圖像數據增強和基于機器學習的圖像數據增強技術,其中基于傳統圖像處理技術的圖像數據增強中將介紹針對圖像數據本身的幾何變換、色彩變換和像素變換?;跈C器學習的圖像數據增強技術將介紹自動數據增強技術、基于生成對抗網絡數據增強技術和基于自動編碼器和生成對抗網絡組合的數據增強方法,這些方法都是使用機器學習相關理論實現的圖像生成、圖像轉換模型。本文對于現有的圖像數據增強方法分類如圖1。
3. 傳統的圖像數據增強方法
傳統的圖像數據增強方法,通常使用圖像處理技術 [4] 來完成數據集的擴充和圖像質量優化,大致分為幾何變換、色彩變換、像素變換三大類。
3.1. 幾何變換
針對數據集進行空間幾何變換,常常會存在改變圖像原始的標簽信息或者增加一些不相關數據的情況,這稱之為不安全的轉換。例如對文字的識別任務中,對圖像進行翻轉操作是沒有意義的。但對于存在位置偏差的數據集,用幾何變換技術可以很好解決問題。但在真實情況下,訓練集與測試集的數據的差異十分復雜,除了移位旋轉等操作外,還包括其他復雜變換。因此幾何變換的應用范圍相對有限。
3.1.1. 圖像翻轉與旋轉
圖像翻轉操作包括對圖片進行垂直和水平翻轉,其中垂直翻轉實現需要水平翻轉后再圖像進行180?旋轉處理,水平翻轉比垂直翻轉應用更為廣泛。這種技術的優點是易于實現,此外圖像翻轉在CIFAR-10數據集上具有較好的效果,但對文本識別的數據集,如MNIST,使用圖像翻轉會更改其標簽信息 [5]。
Figure 1. Classification of image data augmentation methods
圖1. 基于圖像的數據增強方法分類
進行圖像旋轉后得到的圖像與原始圖像的維數是否相同取決于圖像的旋轉度數以及原始圖像的形狀。當長方形的圖像旋轉180?或者正方形的圖像旋轉90?、180?、270?時,旋轉后的圖像與原始圖像能夠保持一致的維數。與圖像翻轉操作一樣,在特定的數據集上,例如文本識別數據集MNIST,其圖像變換的安全性取決于圖像的旋轉度數,隨旋轉度數的增加,轉換后的圖片不在保留原標簽信息。
3.1.2. 圖像剪裁與縮放
圖像的隨機剪裁可視為從原始圖像上進行隨機抽樣,再將抽樣獲得的圖像數據樣本恢復為原始圖像大小。
圖像縮放分為向外縮放和向內縮放。圖像縮放與圖像剪裁不同的是向外縮放會得到比原始圖像更大尺寸的圖像,再從中剪裁出與原始圖像大小相同的圖像,向內縮放則縮小原始圖像的大小,并針對其超出邊界的部分進行填充操作從而獲得與原始圖像尺寸一致的圖像。
3.1.3. 圖像移位與邊緣填充
圖像移位是指不改變圖像的尺寸而將圖像在以坐標軸為移動參考進行橫軸和縱軸的移動,并針對邊緣部分進行填充處理。在進行了圖像移位操作后,大部分的圖像數據中對于圖像任務有用的部分將位于圖像的邊緣部分,因此深度學習模型在進行計算機視覺任務訓練時會將關注焦點轉移到任意位置,而不是僅僅針對圖像中心區域的學習,這種操作能夠有效的提高模型的魯棒性。
在對圖像數據樣本進行旋轉、移位、縮放等操作后,需要將變換后的圖像恢復到與原始圖像尺寸一致的大小,恢復的過程通過對于圖像的邊緣部分進行填充操作實現。常用的圖像填充方法包括:常數填充,使用常數值對圖像的邊緣部分進行填充,這種填充方式適用于單色背景的圖像數;邊界值填充,在原始圖像邊界的外部填充原始圖像的邊界的像素值,此方法適用于短距離移位。
3.2. 色彩變換
3.2.1. 色彩空間
數字圖像數據通過使用長、寬和通道來表示數據。
常用的色彩空間包括:
1) 通過RGB通道的變化和疊加得到不同顏色的RGB色彩空間;
2) YUV色彩空間,其中Y表示亮度,UV表示色度;
3) HSV顏色模型,H表示色調,S表示飽和度,V表示明暗程度。
此外還包括I1I2I3,L*a*b* [6] 和YcbCr [7],在這些顏色空間中,HSV顏色空間是直觀的,其組成部分可以很容易地與物理世界相關聯 [8]。
在色彩通道上進行圖像亮度調節以及色度調劑是數據增強的一種有效方式。通常情況下,采集到的圖像數據的亮度覆蓋范圍不足,為達到深度學習對亮度魯棒性的基本要求,進行亮度轉換操作成為基于色彩空間的數據增強技術中最常用的一種方法。在圖像數據中,亮度偏暗的圖像,亮度方差也更小,從而整體的亮度范圍被壓縮。Gamma變換通過非線性變換將過亮或過暗的圖片進行調整。直方圖均衡化是更加高級的色彩空間增強方式,對對比度相近的圖像使用該技術可增強局部的對比度而不影響整體的對比度,這種方式對過亮或過暗的圖像數據能夠實現有效的數據增強。
3.2.2. 色彩空間轉換
色彩空間轉換是色彩特征提取的一種非常有效的方式。不同的色彩空間表示形式雖各有特性,但由于其同構性,可以互相轉換。圖像通常位于三維RGB顏色空間中,但RGB顏色空間在感知上不均勻,顏色的接近度并不表示顏色相似性。色彩空間轉換通過將圖像在RGB、HSV、LAB等不同的顏色空間上轉換,使以不同的方式對每個分量進行加權,對于不同的數據集,通常需要選擇合適的顏色空間轉換來提高模型的性能。
色彩空間轉換的缺點除了會消耗大量內存空間和時間,其也會產生不好的效果,例如人臉識別需要的關鍵信息使黑白黃,但若出現大量紅綠等顏色信息,則是不合理的。此外,顏色空間轉換的圖像增強效果是有限的,雖然比幾何變換更具多樣性,但不恰當的使用可能會使模型發生欠擬合。
Ze Lu等人 [9] 提出一種用于面部識別任務的色彩空間框架,提出色彩空間LuC1C2其通過比較RGB系數的顏色傳感器屬性選擇Lu亮度分量,通過RGB顏色空間的色度子空間和協方差分析來確定C1C2顏色分量的變換向量的方向。在AR、Georgia Tech、FRGC和LFW人臉圖像數據庫上實驗,確定了色彩空間LuC1C2具有更好的人臉識別性能。并且通過將LFW和FRGC數據庫上提取的LuC1C2顏色空間中的CNN特征與簡單的原始像素特征相結合,顯著提高面部驗證性能。
3.3. 像素變換
3.3.1. 噪聲
圖像噪聲是指在原始圖像上隨機疊加一些孤立的能夠引起較強的視覺效果像素點或像素塊,以擾亂圖像的可觀測信息,使其能夠更好的提高卷積神經網絡模型的泛化能力。常見的噪聲有:椒鹽噪聲、高斯噪聲、Coarse Dropout、Simplex Noise Alpha、Frequency Noise Alpha。它們都是以不同的方式生成以不同數值填充的不同大小像素遮掩點,再與原圖混合,以擾亂原始圖像的一些特征。
3.3.2. 模糊
模糊的本質上可視為對原始圖像進行卷積操作,常用的方法是高斯模糊,該方法服從的卷積核矩陣服從二維正態分布,以減少各像素點值的差異從而降低細節層次,使圖像數據的像素平滑化,達到模糊圖片的效果。模糊半徑越大,圖像就越模糊。
3.3.3. 圖像融合
圖像融合技術,通過求兩張圖像的像素值的均值將兩張圖片混合在一起,或者是隨機裁剪圖像并將裁剪后的圖像拼接在一起形成新圖像。當混合來自整個訓練集的圖像而不是僅來自同一類別的實例的圖像時,可以獲得更好的結果。圖像融合方法從人的視角看毫無意義,但從實驗的角度上觀察,確實能夠提升精度。
1) SMOTE [10]
采集到的數據集常存在的問題是樣本類別不平衡問題,樣本類別之間的較大差距會影響分類器的分類性能。SMOTE方法提出以小樣本類別合成新的樣本來解決樣本不平衡問題,該方法將提取的圖像特征映射到特征空間,確定好采樣倍率后,選取幾個最相鄰的樣本,從中隨機選取一個連線,并在連線上隨機選取一點作為新樣本點,重復至樣本均衡。杜金華 [11] 在研究中提出使用基于 SMOTE 算法的上采樣法分別對原始圖像數據集進行增強,實驗表明花崗石識別準確率有所提高。
2) MIXUP [12]
ERM方法會在各個類間形成明確的決策邊界,而Mixup方法是一種基于線性過渡的數據增強的方法,使用mixup能夠使得數據樣本之間像素點是漸變的,使樣本分類邊界模糊化,使得非0即1的預測變為較為平滑的預測效果,抑制模型在進行預測分類時的不穩定性,增強模型的泛化能力。這種方法從訓練數據中隨機抽取兩條數據將抽取到的圖像數據的像素值進行符合Beat分布的融合比例的線性加權求和,同時將樣本對應的One-hot向量標簽也對應加權求和,預測生成的新樣本與加權求和后的標簽的損失,進行反向求導并更新參數,同時抽取批量數據并進行隨機打散后進行加權求和。在CIFAR、 ImageNet圖像分類數據集語音數據集中使用該方法能夠實現模型性能的提升,并且降低模型對不完整標簽的記憶。mixup方法盡管再在程上取得很好地效果,但缺乏理論支撐,且該方法需要較長的時間才能收斂出較好的結果。ERM方法與Mixup方法的對比如圖2所示。
Figure 2. Comparison of ERM and Mixup
圖2. ERM與Mixup對比
3) CUTMIX [13]
CutMix是一種改進的隨機擦除策略,隨機擦除用一塊矩形掩碼覆蓋原始圖像,實現擦除圖像上的一部分像素信息,但其缺點是減少了訓練圖像上的包含信息的像素比例,并且需要大量的計算,較為耗時。CutMix方法將隨機選中的區域填充其他圖像的補丁區域。這種方法與Mixup方法相比,改進了混合圖像后,人眼無法主觀辨別圖像標簽的情形。在擦除區域添加其他樣本信息,進一步增強模型定位能力。CutMix在CIFAR和ImageNet分類任務以及對ImageNet上的弱監督的本地化任務領先于最新的數據增強策略,同時,在Pascal檢測和MS-COCO圖像字幕基準測試中獲得了性能提升。這種方法改進了針對輸入損壞及其模型失配檢測性能的模型魯棒性。
4) Sample Pairing [14]
Sample Pairing方法常用于圖像分類任務中的數據增強,該方法首先從訓練集中隨機選擇兩張圖片,與Mixup方法不同的是,隨機選擇圖像的方式是從訓練集中隨機抽取兩張圖片并分別進行基礎數據增強操作(如隨機翻轉等)處理后,再經像素取平均值,最后疊加合成一個新的樣本。而標簽為原樣本標簽中的一種,理論上新樣本數量平方增加。這種方法能夠顯著提高所有測試數據集分類準確性。使用GoogleNet的ILSVRC 2012數據集的top-1錯誤率從33.5%降低到29.0%,而在CIFAR-10數據集中則從8.22%降低到6.93%。當訓練集中的樣本數量非常小時,SamplePairing技術大大提高了模型預測的準確性。因此該技術對于訓練數據量有限的任務(例如醫學成像任務)更有價值。SamplePairing方法實現簡單,效率大大增加,但缺少相應的理論支撐。
3.3.4. 信息刪除
1) 隨機擦除 [15]
隨機擦除方法與添加噪聲方法相似,通過隨機選取圖像中的矩形區域,并使用隨機像素值對其遮蓋。該技術可以很容易嵌入大部分卷積神經網絡模型中。隨機擦除的好處在于迫使模型去學習有關圖像的更多描述性特征,從而防止過擬合某個特定視覺特征,確保網絡關注整個圖像,而不只是其中的一部分。隨機擦除的缺點是不一定會保留標簽(例如文本8->6)。Zhun Zhongy等人將隨機擦除方法用于圖像分類、物體檢測和人員重新識別任務,并通過該方法實現了性能的提升。使用隨機擦除方法進行大量實驗,在CIFAR、PASCAL VOC 2007、Fast-RCNN、re-ID、Market-1501、DukeMTMC-reID上表現出良好的效果。
2) CUTOUT [16]
與隨機擦除相似,Cutout是在圖像上的隨機位置使用一定大小的正方形path進行0-mask剪裁。蔣蕓等人提出了激活區域處理算法(Activation Region processing algorithm) [17] 并將其嵌入到CNN模型,對網絡卷積層的特征圖進行遮蓋處理,進一步提高模型的性能,降低過擬合的風險。該方法從卷積神經網絡中提取出較為關鍵的局部特征的卷積層的素值最大的特征圖,對其上采樣后將像素值大于整個圖像素均值的像素點使用[0,1]的隨機噪聲進行遮蓋處理,輸入到下層網絡繼續訓練。算法在CIFAR和Fashion-MNIST數據集上得到更低的錯誤率。在不同的網絡結構RestNet-18、WRN-28-10、ResNext-8-64使用AR算法后,與未加任何遮擋的CNN模型相比,得到更低的錯誤率。隨機擦除、Cutout和GridMask方法的圖像增強效果如圖3所示。
Figure 3. Comparison of Rerasure, Cutout and GridMask
圖3. 隨機擦除、Cutout和GridMask對比
3) GRIDMASK [18]
Pengguang等人提出的GridMask的信息刪除方法平衡了刪除區域與保留區域的面積,其本質是對圖像進行網格覆蓋,優化了cutout和隨機擦除方法過度刪除問題,并保持圖像區域連續,易于實現且快速靈活,與以前的方法相比,GridMask在各種數據集上得到更優的效果,優于所有以前的無監督策略,包括AutoAugment [19] 提出的最佳組合策略。該方法可以用作數據擴增的新基準策略。
4. 基于深度學習的數據增強方法
在進行機器學習模型訓練的過程中,優化模型的目標就是盡可能的實現模型的損失降低,因此為了完成這一優化目標,往往需要大量的訓練數據作為支撐。傳統的數據增強技術依靠對現有數據集的微小調整,包括翻轉、旋轉和平移等調整方法,通過這些方法對數據集的調整,會產生大量具有微小的或者巨大差別的數據集,使用這種數據集的實驗方法將會把這些調整后的數據集視為與原始數據集不同的數據,從而進行模型的訓練。數據增強的作用除了能夠增加訓練的樣本數量之外,提高模型的泛化能力之外,還可以通過增加噪聲數據,從而提高模型的魯棒性。
除了傳統的數據增強技術以外,近年來,隨著機器學習的快速發展和廣泛應用,研究人員開始將機器學習技術用于數據增強領域的研究,并取得了一定科研成果。
4.1. 自動數據增強
從數據自身的特點出發,搜索適合不同特點數據集的數據增強策略能夠從體系結構搜索的角度重新定義了一種數據增強的新模式。
谷歌大腦的研究人員提出了一種自動搜索合適的數據增強策略的方法(AutoAugment) [19],通過設計這種不改變深度學習的網絡架構的數據增強方法來實現具有更多不變性的數據增強策略,這種思想能夠避免對神經網絡架構進行修改而從策略搜索的角度對模型的訓練過程進行性能上的優化。該方法通過創建一個搜索空間用來保存數據增強策略,并針對不同的批量任務根據搜索算法從搜索空間中選擇合適的子策略,選擇的子策略能夠應用特定的圖像處理函數進行數據增強的操作,以使這樣訓練出的神經網絡能獲得最佳的驗證準確率。該算法的性能接近不使用任何無標注樣本的半監督學習方法。此外,該算法能夠實現策略的遷移,將學習到的策略應用到其他類似的數據增強任務上,能夠得到較高的準確率,并且不需要在額外的數據上對預訓練的權重進行調整。該算法中使用強化學習作為搜索算法,并提出在搜索算法的方面能夠進一步研究,得到更好的實驗性能。但這種方法在簡化設置的情況下需要較長的訓練時間。
針對計算損耗巨大的問題,谷歌大腦的研究人員又提出了一種自動數據增強的方法,稱為RandAugmentation [20]。這種方法大大縮小了數據增強所產生的樣本空間,從而將數據增強的過程與深度學習模型的訓練過程集成起來,而不是將數據增強作為獨立的任務。該論文同時也證明了自動的選擇數據增強策略的方案通常是在規模較小的數據集上訓練參數量級較低的模型而實現的自動數據增強,在此基礎上再將搜索到的數據增強策略應用到大規模數據集上的方法不是最優的 [20]。
自動數據增強是否或者何時需要作為一個單獨的搜索階段一直是困擾著研究人員,在該方面的突破也許能夠從根本上解決自動數據增強和模型的訓練過程之間的關系問題。此外
Yonggang Li等人 [21] 在2020年提出了一種新的數據增強技術,該論文提出了將可微分網絡架構搜索算法應用在數據增廣策略搜索任務上,該算法同樣針對AutoAugment中的昂貴計算導致AutoAugment方法在適用性上表現較差的問題。DADA算法提出通過Gumbel-Softmax將離散的數據增強策略選擇轉化為到一個可優化的問題。
AutoAugment作為開創性的工作,提出了自動搜索策略用于數據增強,將策略的選擇過程視作一個組合優化問題。但由于其需要消耗巨大的計算時間,導致其適用性較低,因此研究人員開始針對計算耗時問題提出不同的解決方案。除了上述的兩種針對Autoaugment的改進方法之外,還有Population Based Augmentation [22] 和Fast AutoAugment [23] 等方法。
4.2. 基于生成對抗網絡的數據增強方法
通過基于生成對抗網絡的生成建模的方式進行數據增強是現階段較為常用的手段。生成對抗網絡應用在數據增強任務上的思想主要是其通過生成新的訓練數據來擴充模型的訓練樣本,通過樣本空間的擴充實現圖像分類任務效果的提升。研究人員在原始生成對抗網絡框架的基礎上又提出了多種不同的改進方案,通過設計不同的神經網絡架構和損失函數等手段不斷提升生成對抗網絡的變體的性能。
4.2.1. DCGAN
DCGAN [24] 嘗試將圖像領域應用廣泛的CNN與生成對抗網絡GAN結合起來,提出了Deep Convolutional GANs (DCGAN),在圖像分類任務上證明了其優于其他無監督算法。該算法的核心部分是對CNN架構進行了三處修改:(1) 使用卷積層替代了池化層。作者在GAN中的生成器中進行了此類修改,使得生成器能夠學習其自身空間的下采樣方式,而不是參數指定的下采樣方式。(2) 消除了卷積特征上的全連接層。作者嘗試將最高卷積特征分別直接連接到生成器和判別器的輸入和輸出。(3) 批量歸一化 [25]。使用批量標準化通過將輸入標準化以使零均值和單位方差為零來穩定學習,并且能夠有效解決深度生成器的所有樣本坍塌到單點的問題。將該方法用到生成器的輸出層和判別器的輸入層會導致批量歸一化模型不穩定問題,因此作者在剩余的所有層上都使用了批量歸一化的操作。DCGAN算法實現了CNN和GAN的結合,是一種有效的圖像生成模型,被廣泛的用于數據集樣本的生成。但使用該方法中,當訓練模型的時間較長時,仍然在部分模型中存在不穩定的問題。
4.2.2. CycleGAN
CycleGAN [26] 作為圖像轉換領域的重要模型,可以實現樣本數據無需配對即可進行轉換,例如將一個名人轉換成一個卡通人物,這種圖像轉換的使用能夠對樣本數據進行極大的擴充而保留原始圖像的輪廓。CycleGAN作為一種不對齊數據的圖像轉換方法現在被廣泛的用于圖像到圖像的轉換。
CycleGAN實際上是由兩個對稱的生成對抗網絡組成的環形網絡,將該模型與DCGAN進行比較后發現,該模型能夠控制圖像生成,而DCGAN模型則輸入一個噪聲后輸出一張無法控制的圖片。CycleGAN的結構如圖4所示。
圖4. CycleGAN結構:(a) 該模型由兩個映射函數組成 G:X→YG:X→Y 和 F:Y→XF:Y→X,并包括兩個對抗判別器DY和DX,DY鼓勵G將X轉換為與Y無法區分的輸出,DX則鼓勵F將Y轉換為與X無法區分的輸出。為了進一步的將映射規范化,該模型定義了兩個“循環一致性損失”,這兩個損失函數保證了將一個域轉換為另一個域并再次轉換回來的時候,與原始的域盡可能保持一致。(b) 前向循環一致性損失: x→G(x)→F(G(x))≈xx→G(x)→F(G(x))≈x,(c) 反向循環一致性損失 y→F(y)→G(F(y))≈yy→F(y)→G(F(y))≈y [26]
4.2.3. Conditional GANs
2014年,Mehdi Mirza等人提出了Conditional GAN [27],論文中提出的模型不僅僅需要較高的逼真度而且需要在一定的條件約束下完成,由于其增加了條件約束,因此生成器和判別器的設計會發生較大的改變。通過根據附加信息對模型框架進行調整,可以用于指導數據的生成過程,這種根據條件生成數據的方式對于數據增強非常有效,研究人員在原始圖像上可以根據不同的需求條件生成增量數據,并將增量數據應用到下游的神經網絡模型中。Conditional GAN的結構如圖5所示。
Figure 5. The structure of Conditional GAN
圖5. Conditional GAN 的結構
盡管生成對抗網絡在生成圖像領域被廣泛的應用,但其訓練的不穩定性,以及要求大量訓練數據的不適用性將導致其不同的變體方法在一些時候并不能有效的實現數據增強的任務。
4.3. 基于自動編碼器和生成對抗網絡組合的數據增強方法
自動編碼器通過將其網絡結構的一般用于編碼,獲得圖像的低維向量表示,將網絡結構的另一半用于解碼,獲得根據低維向量表示重新構造的圖像數據,這種編碼解碼的方式能夠實現訓練數據樣本和噪聲數據樣本的容量擴充,實現了利用數據增強技術提高神經網絡的泛化能力和魯棒性。
在生成對抗網絡被廣泛應用到生成數據任務之后,研究人員開始提出生成對抗網絡與自動編碼器的結合形式,通過將變體的生成對抗網絡和變體的自動編碼器結合而形成一個通用的學習框架來生成細粒度類別的圖像,這種新穎的圖像生成方式同樣能夠有效的完成數據增強任務。Jianmin Bao等人 [28] 提出的CVAE-GAN通過將圖像建模為概率模型中圖像標簽和隱藏屬性的組合的形式。
CVAE-GAN首先使用編碼器將給定的訓練圖像數據和類別標簽編碼為符合給定概率分布的隱變量,再通過生成器將從隱變量中采樣得到的數據和對應的類別標簽生成圖像數據,將該圖像數據輸入到分類器和判別器中從而輸入分類標簽和判別標簽,生成器和判別器構成了一個生成對抗網絡,其中生成器嘗試通過已經學會了區分真實樣本和虛假樣本的判別器提供的的梯度來學習真實數據分布。作者還在其論文中證明了均值特征匹配也可以用于條件圖像生成任務中。CVAE-GAN方法能夠在多種圖像任務中取得較好的性能,包括圖像生成任務、圖像修復任務等,但在生成位置類別的樣本方面還存在一定的可探索性。
在自動編碼器和生成對抗網絡的組合應用方面,Yang He等人 [29] 提出了一種新穎的圖像生成方法,該方法可以被分類為一種隨機回歸方法,其學會了從單個條件輸入中產生多個不同的示例。這種方法與CVAE-GAN方法一樣結合了生成對抗網絡和自動編碼器的優勢來完成圖像生成任務。這種新提出的算法通過使用隨機回歸公式為條件圖像生成任務提供了一種新穎的解決方案,該模型可以生成準確且多樣的樣本,并且可以穩定地訓練并提供具有潛在向量表示形式的抽樣機制。該模型還應用了通道級別的dropout (channel-wise dropout),從改進網絡結構的角度提出解決多項選擇學習思想的方法。
將圖像生成技術用于數據增強任務的方法除了生成對抗網絡以及自動編碼器和生成對抗網絡的組合形式之外,研究人員還提出了一些其他的方法。Qifeng Chen等人 [30] 提出級聯優化網絡(cascaded refinement networks, CRN),該模型將圖像生成任務轉化為回歸問題,該模型還證明了可以通過合適結構的前饋網絡合成圖像數據,實現了將圖片無縫縮放到高分辨率,并在實驗中證明了模型的有效性。Justin Johnson等人 [31] 提出采用感知損失函數訓練前饋網絡進行圖像轉換的任務。模型通過訓練一個用于圖像轉換任務的前饋網絡,同時不需要進行像素級別的求差值操作而構造損失函數。使用感知損失函數,從預訓練好的網絡中提取高級特征。該模型同樣在圖像轉換任務中取得了不錯的性能。
5. 總結
針對圖像數據集的數據增強技術可以分為兩種類型:對數據集進行變換操作達到擴充數據集的目的;對數據集進行過采樣或欠采樣達到樣本與真實分布相似效果。
隨著深度學習技術的不斷發展,應用于計算機視覺領域的深度模型也在不斷的被提出。基于深度學習的數據增強技術主要從數據擴充的角度對模型進行性能上的提升,而不是改變深度模型的網絡結構?,F階段的傳統圖像數據增強和基于深度學習的數據增強技術都在不斷的發展和提出,將數據增強技術用于計算機視覺任務也正在成為學術研究的主流做法。傳統圖像處理方法有幾何變換、顏色變換和像素變換等,而基于深度學習的圖像數據增強技術主要包括:自動數據增強通過設計一種不改變深度網絡架構的數據增強方法來實現具有更多不變性的數據增強策略,通過創建一個搜索空間用來保存數據增強策略,并針對不同的任務根據搜索算法的運行進行適當子策略(例如剪裁、翻轉)的選擇,從而實現自動數據增強的目的;而基于生成對抗網絡的數據增強主要是基于生成對抗網絡的機制進行生成器和判別器的設計,以及生成對抗網絡的算法框架的設計;而基于自動編碼器和生成對抗網絡組合形式的數據增強方法則是通過編碼器、解碼器、生成器和判別器的設計實現數據增強任務。本文總結了傳統圖像處理方法和基于深度學習數據增強方法兩方面技術,討論了不同圖像數據增強技術的優缺點。
隨著深度學習技術的不斷革新,更多的深度模型將會被提出,而針對數據集優化的數據增強技術也會隨之發展,未來研究人員將可能更多的通過改進基于深度學習的數據增強技術來適應模型算法的結構,實現模型試驗效果的提升。
審核編輯:湯梓紅
評論
查看更多