譚臺哲 傅美
摘要:圖像翻譯是目前計算機視覺領(lǐng)域一個比較重要的方向,其目標旨在學習兩個不同圖像域之間的映射,同時保留原始圖像的特征和語義。當今,無監(jiān)督學習的圖像翻譯利用生成對抗網(wǎng)絡和比較多的訓練數(shù)據(jù)能夠取得不錯的性能。但現(xiàn)有的圖像翻譯模型是采用一種一次性的方式形成,其中忽略了訓練過程的學習經(jīng)驗,所生成的模型只能適用于特定的領(lǐng)域,不能適應一個未知的領(lǐng)域。該文在循環(huán)一致性生成對抗網(wǎng)絡的研究基礎(chǔ)之上,嘗試從元學習的角度來處理這一類問題。
關(guān)鍵詞:循環(huán)一致性生成對抗網(wǎng)絡;元學習;圖像翻譯;生成對抗網(wǎng)絡;計算機視覺
中圖分類號:TP183? ? ? 文獻標識碼:A
文章編號:1009-3044(2022)22-0070-02
1 引言
當今計算機技術(shù)的迅猛發(fā)展使得深度學習在相關(guān)領(lǐng)域產(chǎn)生了重要的作用,其中,計算機視覺結(jié)合深度學習產(chǎn)生了很多效果不錯的算法,并應用于圖形領(lǐng)域的各個方向。
圖像翻譯是指將一個圖像的表征轉(zhuǎn)換到另一個圖像的表征,學習一種映射關(guān)系將源域圖像映射到目標域圖像。轉(zhuǎn)換后的圖像的內(nèi)容由源域圖像提供,目標域圖像負責提供圖像的風格特征或者屬性。例如馬轉(zhuǎn)換到斑馬,夏天轉(zhuǎn)換到冬天。圖像翻譯可以應用于風格遷移、圖像修復等。圖像翻譯在近些年來得到了迅速發(fā)展,這得益于深度學習的浪潮,特別是生成對抗網(wǎng)絡(Generative Adversarial Nets,GAN) [1]的出現(xiàn),使得圖像翻譯技術(shù)得到了更進一步提升。圖像翻譯在近幾年有著諸多較為成功和經(jīng)典的模型,例如Pix2Pix[2],CycleGAN[3]、StarGAN[4]等。
當今,無監(jiān)督學習的翻譯框架是使用不成對的訓練數(shù)據(jù)學習一個映射,將給定類中的圖像映射到不同類中的類似圖像。然而,目前的研究偏向于學習一個特定的轉(zhuǎn)換任務模型,而且需要在訓練時使用到海量的源域和目標域中的圖像數(shù)據(jù),這類方法在某些特定領(lǐng)域取得了重大的成績,但是對于一些新領(lǐng)域,并沒有足夠的數(shù)據(jù)來支撐模型的訓練,如果只是簡單地將模型應用于新的任務,即便使用數(shù)據(jù)增強技術(shù)來擴展新任務領(lǐng)域的數(shù)據(jù),也無法獲得好的效果,會產(chǎn)生嚴重的過擬合問題。在難于獲取數(shù)據(jù)的背景下,小樣本學習應運而生。小樣本學習是以任務為基礎(chǔ),核心思想是讓模型學會學習,主要分為度量學習和元學習[5]。度量學習是指通過在嵌入空間與樣本產(chǎn)生一種映射,在嵌入空間中比較樣本間的相似度。元學習是從很多任務的學習中獲取豐富的先驗知識,將獲得的先驗知識提供了歸納偏差,使得模型在不同的任務之間泛化。元學習亦稱為學會學習[6]。通過學習相似任務之前的共性部分獲得經(jīng)驗,利用學習到的經(jīng)驗對新任務進行微調(diào),無需重新學習就可以很好地泛化到數(shù)據(jù)不足的新任務中。
本文運用CycleGAN作為研究基礎(chǔ),將元學習的概念擴展到圖像翻譯中,從元學習的角度改進CycleGAN,這個方法使得模型可以有效利用先前圖像翻譯任務中的學習經(jīng)驗。筆者方法的目標是首先利用不成對的數(shù)據(jù)進行有效的訓練,然后將獲得的模型應用于各種新的圖像翻譯任務。
2 相關(guān)工作
2.1GAN網(wǎng)絡
GAN是一種深度學習模型,是無監(jiān)督學習領(lǐng)域具有廣闊前景的模型之一。該模型由兩個相互競爭的組件組成,一個生成器(Generator, G) 負責捕獲樣本數(shù)據(jù)分布并學習生成感興趣的數(shù)據(jù)候選。一個判別器(Discriminator, D) 負責評估生成的數(shù)據(jù)是否滿足真實數(shù)據(jù)分布的概率,原理如圖1所示。
GAN的原理充分體現(xiàn)了博弈論的思想。生成器以隨機噪聲(通常是均勻分布或者高斯分布) 作為輸入生成與真實樣本相似的數(shù)據(jù),判別器將生成的圖像作為輸入并評估它們以輸出圖像與真實圖像的概率。G網(wǎng)絡的目標是生成盡可能真實的圖像來欺騙D網(wǎng)絡,使得D網(wǎng)絡無法分辨出真實圖像與合成圖像之間的區(qū)別,整個網(wǎng)絡最終達到納什均衡。兩個網(wǎng)絡之間的對抗關(guān)系如公式(1) 所示。
[minmaxV(D,G)=Ex~Pdata(x)[logD(x)]+Ez~Pz(x)[log(1-D(G(z))]]? ? ? ? ? (1)
其中:x代表真實圖片數(shù)據(jù),z代表隨機噪聲,G(z)代表合成的圖像,D(x)和D(G(z))是鑒別器對真實圖像和合成圖像的輸出,[Ex~Pdata(x)]是真實數(shù)據(jù)的數(shù)學期望值。訓練生成器最小化[ log(1-D(G(z))]同時訓練判別器最大化[logD(x)]。
2.2 CycleGAN
CycleGAN是由兩個GAN網(wǎng)絡組成,旨在實現(xiàn)兩個圖像域(X,Y) 之間的相互映射,為了避免所有的X都被映射到同一個Y,所以采用了一對生成器和判別器的結(jié)構(gòu),既能進行X到Y(jié)的映射,也能進行Y到X的映射,原理如圖2所示。模型通過訓練后,可以在不同的圖像之間進行轉(zhuǎn)換。在這個過程中,要保證循環(huán)的一致性,所以在其中引入了一個循環(huán)一致性損失。
圖2中,(a) 是CycleGAN模型總覽圖,X和Y可以通過生成器網(wǎng)絡G和F相互轉(zhuǎn)換。(b) 、(c) 是CycleGAN模型兩個循環(huán)的迭代步驟。
2.3 與模型無關(guān)的元學習(MAML)
與模型無關(guān)的元學習(Model-Agnostic Meta-Learning,MAML) [7]是一種獨立于模型的元學習算法,可用于基于梯度下降的各種學習問題和模型。不像之前的元學習方法需要學習更新函數(shù)或?qū)W習規(guī)則,MAML既不增加模型參數(shù)的數(shù)量,也不對模型的結(jié)構(gòu)設置任何限制。MAML可以輕松地與全連接網(wǎng)絡、卷積網(wǎng)絡和循環(huán)網(wǎng)絡進行交互。
MAML算法的訓練以任務為訓練單元,將對應的數(shù)據(jù)集劃分為訓練集、驗證集和測試集。整個算法分為元訓練階段和元測試階段。在元訓練階段,從給定的分布[Ti~p(T) ]中選擇任務,其中每個任務包含K個類別,每個類別包含N個樣本。元學習試圖通過訓練所有的任務來獲得一個良好的廣義模型,從而快速適應新的任務。元訓練階段,首先使用訓練集得到原始模型參數(shù)[θ]在[Ti]上的損失值[? LTi(fθ)],然后使用梯度下降得到[θi],如公式(2) 所示。
[θi=θ-α?θLTi(fθ)]? ? ? ? ? ?(2)
其中[α]是在內(nèi)循環(huán)中使用的元訓練學習率,然后使用測試集來驗證期望參數(shù),從而獲得一個新的損失,這里的損失值只能看作是一個元損失的一部分,在整個內(nèi)部循環(huán)結(jié)束之后計算的累計和就是最終的元損失。計算總損失的梯度并做隨機梯度下降更新模型的原始參數(shù)值,如公式(3) 所示。
[θ=θ-β?θTi~P(T)LTi(fθ'i)]? ? ? ? ? ? ?(3)
其中[β]是外循環(huán)中使用的學習率。MAML在一個小樣本數(shù)據(jù)集上進行訓練后,基礎(chǔ)模型將學習到良好的初始化參數(shù),并能使用這個良好的參數(shù)有效地完成小樣本學習任務。
3 網(wǎng)絡結(jié)構(gòu)和具體算法
本文在CycleGAN圖像翻譯算法中引入了元學習的方法,構(gòu)建了基于MAML與改進CycleGAN的圖像翻譯方法。
3.1 改進CycleGAN網(wǎng)絡結(jié)構(gòu)
CycleGAN的生成器采用的是由步幅為2和卷積核大小為3*3的兩個卷積層,6個卷積核大小為3*3的殘差塊和兩個步幅為0.5和卷積核大小為3*3的轉(zhuǎn)置卷積層組成,通過全卷積網(wǎng)絡連接。整個生成器網(wǎng)絡都是采用的殘差網(wǎng)絡,殘差網(wǎng)絡的優(yōu)勢需要在足夠深的網(wǎng)絡中才能體現(xiàn)出來,而在CycleGAN中輸入圖像為256*256時采用的是9層網(wǎng)絡,網(wǎng)絡并不是深。受到馬赫等人[8]的啟發(fā),使用Inception模塊代替原始單一的ResNet模塊,并保持原始一致的結(jié)構(gòu)。
3.2 元學習的任務設定
在元學習的訓練中,訓練樣本包含從P(T)提取的有限的一組任務Tn,訓練任務數(shù)量是N。具體而言,每個訓練任務Tn是一個[Tn=(STn,QTn)]的元組,其中S表示支撐集,Q表示查詢集,S和Q不相交。算法將Tn作為輸入,并為元學習器產(chǎn)生學習策略。元學習器可以根據(jù)支持集數(shù)據(jù)迭代地調(diào)整參數(shù),并通過使用查詢集數(shù)據(jù)計算元目標值來評估其泛化性能。然后通過測試誤差相對于參數(shù)的變化來改進元學習器。
3.3 元訓練過程
Algorithm 1 Training process
Require:[P(T)]:distributionovertasks
Require:[α,β]:stepsizehyperparameters
1:randomly initialize [θ]
2:while not done do
3: Sample batch of tasks [Ti~P(T)]
4:for all [Ti]do
Meta-training:
5: Evaluate [?θLTifθ] with respect to K examples
6: Compute adapted parameters with gradient descent:[θ'i=θ-α?θLTi(fθ)]
7:? end for
Meta-testing:
8:Update [θ←θ-β?θTi~P(T)LTi(fθ'i)]
9:end while
上述算法是元學習結(jié)合改進CycleGAN方法的預訓練算法,主要目的是對先驗知識的積累。MAML的訓練過程可以看作是一個由內(nèi)環(huán)和外環(huán)組成的雙層優(yōu)化,也稱為元訓練和元測試。
4 實驗結(jié)果與分析
4.1 實驗環(huán)境和數(shù)據(jù)集
本文實驗采用的硬件配置為Inter Xeon E5 2680 v3(3.3GHz)處理器,GPU為NVIDIA GeForce GTX2080Ti、RAM16GB。軟件配置采用Pytorch深度學習框架,操作系統(tǒng)為64位Ubuntu16.04LTS。數(shù)據(jù)集使用horses2zebras, summer2winter, apple2orange, monet2photo。
4.2 實驗結(jié)果
本文收集了4種雙域翻譯任務,分別是馬到斑馬,夏天到冬天,莫奈風格到照片和蘋果到橙子。筆者隨機選擇3個作為訓練集,并選擇其他一個任務作為測試數(shù)據(jù)集來模擬元翻譯場景。
從左到右,這些列分別表示來自源類圖像的輸入、CycleGAN的結(jié)果和本文的結(jié)果。
從圖3中可以看出,本文所提出的方法在數(shù)據(jù)樣本數(shù)量不足的情況下仍然有著良好的輸出圖像。在只有10個訓練樣本的情況下,基本能夠成功地輸出目標域的圖像,在輸出圖像的某些細節(jié)方面優(yōu)于CycleGAN生成的圖像。
5 總結(jié)
本文從元學習的角度研究圖像翻譯問題,旨在利用先前領(lǐng)域的翻譯先驗知識,經(jīng)過實驗證明,本文所提出的方法能夠在數(shù)據(jù)樣本不足的情況下對新任務領(lǐng)域的翻譯產(chǎn)生較好的輸出。當然,此方法還有更好的改進,在今后的工作中將對MAML的結(jié)構(gòu)進行改進,更好地保留圖像的原始特征。另外,在MAML訓練過程中由于梯度減小問題而引起的訓練不穩(wěn)定問題沒有得到解決,這為今后的工作提供了方向。
參考文獻:
[1] Goodfellow I,Pouget-Abadie J,Mirza M,et al.Generative adversarial networks[J].Communications of the ACM,2020,63(11):139-144.
[2] Isola P,Zhu J Y,Zhou T H,et al.Image-to-image translation with conditional adversarial networks[C]//2017 IEEE Conference on Computer Vision and Pattern Recognition.Honolulu,HI,USA.IEEE,2016:5967-5976.
[3] Zhu J Y,Park T,Isola P,et al.Unpaired image-to-image translation using cycle-consistent adversarial networks[J].2017 IEEE International Conference on Computer Vision (ICCV),2017:2242-2251.
[4] Choi Y,Choi M,Kim M,et al.StarGAN:unified generative adversarial networks for multi-domain image-to-image translation[C]//2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition.Salt Lake City,UT,USA.IEEE,2018:8789-8797.
[5] 陳瑞敏,劉士建,苗壯,等.基于元學習的少樣本紅外空中目標分類方法[J].紅外與毫米波學報,2021,40(4):554-560.
[6] 朱應釗,李嫚.元學習研究綜述[J].電信科學,2021,37(1):22-31.
[7] Finn C,Abbeel P,Levine S.Model-agnostic meta-learning for fast adaptation of deep networks[C]//ICML'17:Proceedings of the 34th International Conference on Machine Learning - Volume 70,2017:1126-1135.
[8] 馬赫,張濤,盧涵宇.基于CycleGAN的圖像風格遷移[J].電腦知識與技術(shù),2020,16(27):18-20.
【通聯(lián)編輯:唐一東】