徐為立,袁和剛,任凱,董越,麥曉慶
(國網寧夏電力有限公司中衛(wèi)供電公司,寧夏中衛(wèi),755000)
深度學習[1-2]需要大量數據的訓練才能得到一個泛化能力比較強的學習模型。然而受自然因素和人力、物力限制,獲得海量數據是非常困難的。因此,使用有限數量的數據來生成更多相同特征的多樣性的數據是當前深度學習所缺乏的,具有重要研究意義。
生成對抗網絡[3](Generative Adversarial Network,GAN)可以學習樣本數據中潛在信息,并將學習到信息用于新樣本的生成,但容易出現梯度消失和模式崩塌等問題。本文在數據增強生成對抗網絡(Data Augmentation Generative Adversarial Network,DAGAN)[4]的基礎上,對其網絡結構進行了調整,并將該網絡命名為DAGAN3+。實驗結果表明,改進網絡后生成的圖像可以達到很好的效果。
數據擴充的目標是用新樣本擴充訓練集。深度生成模型可以利用訓練數據的分布來為特征增強和圖像增強生成更加多樣和真實的樣本。
FIGR[5]將元學習的Reptile結合到遺傳神經網絡中,學習同一類幾幅圖像的數據分布,但生成的圖像質量有待提升。DAWSON[6]是基于元學習的自適應小樣本生成框架,把MAML 應用于生成模型,但需要通過評估開發(fā)集來獲得生成器的梯度。GMN[7]將Matching 成新穎的圖像,但生成的圖像稍有模糊。
本模型框架使用一個自動編碼器將現有的圖像進行編碼,然后添加噪聲,接著進行解碼,從而得到新的同類的圖片。
模型目標函數如公式(1)所示:
公式(1)中x表示真實圖片,z表示輸入生成器網絡的噪聲,G(z)表示生成的圖片。D(x)是判別器網絡判斷圖片為真的概率。而D(G(z))是判別器網絡判斷生成器生成的圖片為真的概率。
生成器網絡應該使生成的圖片盡可能得接近真實圖片。換言之,就要讓D(G(z))盡可能得大,這時V(D, G)會變小。該模型也是由一個生成器和一個判別器組成,如圖1所示,生成器接收一個來自類C的圖片Xi,然后圖片通過生成器的編碼器,得到圖片的低維特征向量Ri。另一個輸入是符合高斯分布的噪聲,噪聲通過線性處理后,與圖片的特征向量拼接,一同輸入到解碼器中,由解碼器生成一張圖片Xg。
圖1 DAGAN網絡結構
2.2.1 U-Net3+
UNet 3+將編碼器中小尺度、同尺度的特征圖以及來自解碼器的大尺度的特征圖融合到每一個解碼器層,這些特征圖包含了全尺度下的細粒度語義與粗粒度語義。本文基于UNet 3+生成網絡,提出了一種新的生成器結構。該網絡將全尺度的跳躍連接來自不同尺度特征圖中的高級語義與低級語義相結合;而深度監(jiān)督則從多尺度聚合的特征圖中學習層次表示。UNet 3+不僅提高了精度,還減少了網絡參數,提高了計算效率。
2.2.2 殘差塊
DAGAN中使用的殘差網絡結構容易導致梯度混淆和信息損失,因此本文使用一種新的瓶頸模塊SandGlass。首先在逆殘差塊中降維,然后再進行升維,在更高維特征之間構建短連接。它在更高維度進行恒等映射與空間變換,確保了深度卷積在高維空間處理并獲得更豐富的特征表達。實驗證明該設計模式比已有的殘差塊更有效,而且不會導致額外的參數量與計算量的提升。
數據擴充模型可以在源域中使用對抗神經網絡來學習。一個數據來自于數據域D={x1,x2,...,xN}和相應的目標域{t1,t2,...,tN}。本文使用了一個改進的WGAN[8]判別器,它要從同一個類中取出兩組數據。
從數據域D中取出兩個數據,第一個輸入數據點xi和第二個數據點xj,表示從相同類別的數據中選取兩個不同的真實樣本數據。另一個輸入數據點表示輸入某樣本類別的真實數據和該樣本種類的生成數據。
為了驗證本文算法的有效性,在公開數據集VGG-Faces進行了測試。對數據集中2396個類打亂順序,將將前1802用作訓練集,1803-2300用測試集,2300-2396用作評價集,實驗結果如圖2所示。
圖2 VGG-Face實驗結果
從圖2可以看出,本文所提算法DAGan3+得到的人臉視覺效果優(yōu)于其他兩種算法。
為了驗證該算法的增強效果,利用增強后的數據集訓練測試網絡,用平均分類的正確率評價數據增強算法的性能。先在真實數據上訓練判別器,每類有5、10或15個樣本。結果為5次獨立運行的平均值。表1是實驗測試結果。
表1 網絡測試結果準確率對比
從表1可以看出,本文所提算法在準確率上較其他算法那更高,也證明了所提算法的增強效果最優(yōu)。
針對小樣本生成問題,本文將多尺度融合的U-Net3+和生成對抗神經網絡相結合,提出了一種新的小樣本生成網絡。在公開數據集上進行了生成和數據增強對比實驗。結果表明本文所給模型能夠生成更加多樣、真實的圖像,其數據增強效果更好。