天天看點

先融合再填充,上海交大提出少樣本圖像生成新方法F2GAN

少樣本圖像生成(few-shot image generation)任務是指用已知類别(seen category)的大量圖檔訓練出一個生成模型,然後給定某個未知類别(unseen category)的少量圖檔,即可為該未知類别生成大量真實且多樣的圖檔。少樣本圖像生成屬于圖像資料增廣的範疇,可用來輔助很多下遊任務,如少樣本圖像分類等。

在少樣本任務系列中,相比少樣本分類(few-shot classification)、少樣本物體檢測(few-shot object detection)、少樣本語義分割(few-shot semantic segmentation)等任務,少樣本圖像生成任務受到的關注較少,可做的空間較大。

雖然在少樣本分類方法中,有一類方法是用資料增廣的方式提升分類性能,但大多數方法都是做少樣本特征生成(few-shot feature generation),即生成圖像特征,或者少樣本僞圖像生成,即生成一些看起來不真實但仍然可以提升分類性能的圖像。

而本文關注的少樣本圖像生成任務和上述任務不同,它緻力于生成真實且多樣的圖檔。是以,少樣本圖像生成任務比少樣本特征生成和少樣本僞圖像生成更具有挑戰性。

現有的少樣本圖像生成方法很少,可以大緻歸納為三類:

  1. 基于優化的方法(optimization-based):這類方法和少樣本分類中基于優化的方法類似,隻不過它把同樣的政策從分類模型轉移到了生成模型。比如,FIGR [1] 把 Reptile 應用到生成模型,DAWSON [2] 把 MAML 應用到生成模型。
  2. 基于變換的方法(transformation-based):輸入單張圖檔,對這張圖檔進行變換,得到另一張屬于同一類别的圖檔。比如 DAGAN [3] 輸入單張圖檔和一個随機向量,對輸入圖檔進行微調得到新的同類圖檔。 
  3. 基于融合的方法(fusion-based):輸入多張圖檔,對這些圖檔進行資訊融合,得到新的屬于同一類别的圖檔,該圖檔包含輸入的多張圖檔的資訊。比如 GMN [4] 把 VAE 和 Matching Network 相結合。我們實驗室之前的一項工作 MatchingGAN [5] 把 GAN 和 Matching Network 相結合,另外一項工作 F2GAN [6] 提出了融合填充的思想。

我們整理了少樣本圖像生成方法的論文和代碼,參見:

https://github.com/bcmi/Awesome-Few-Shot-Image-Generation

本文重點介紹我們實驗室被 ACM MM2020 接收的論文《F2GAN: Fusing-and-Filling GAN for Few-shot Image Generation》,代碼将在整理後公布。

先融合再填充,上海交大提出少樣本圖像生成新方法F2GAN

論文連結:

https://arxiv.org/abs/2008.01999

核心思想

下圖展示了這篇論文的核心思想。

把三張屬于同一類别的圖檔 x1, x2, x3,也叫做條件圖檔(conditional image),按照一定比例(比如 [0.2, 0.3, 0.5])進行融合,得到一張新的圖檔(比如 0.2 x1+0.3 x2+0.5 x3)。

一般做法是在潛在空間(latent space)做線性插值(linear interpolation),但本文提出了先融合後填充(fusing-and-filling)的思想,以便更合理地融合條件圖檔并完善生成圖檔的細節資訊。是以該方法叫做 Fusing-and-filling GAN (F2GAN)。

先融合再填充,上海交大提出少樣本圖像生成新方法F2GAN

F2GAN 方法簡介

F2GAN 方法的具體網絡結構參見下圖左:對條件圖檔基于編碼器得到的深層特征做線性插值,也就是融合(fusing);然後在解碼器生成過程中,利用基于全局注意力機制的融合子產品(non-local attentional fusion module, 具體結構參見下圖右),對于解碼器每層輸出特征圖的每一個空間位置,從所有條件圖檔的所有空間位置借取相關資訊,再和解碼器輸出的特征圖融合,得到新的特征圖,并送入解碼器的下一層,相當于在上采樣過程中利用條件圖檔的相關淺層特征填充(filling)圖像細節。

先融合再填充,上海交大提出少樣本圖像生成新方法F2GAN

根據這種先填充後融合(fusing-and-filling)的思想,得到的圖檔按照一定比例融合了條件圖檔的深層語義資訊,并且從條件圖檔擷取相關的淺層特征來完善圖檔細節資訊。具體的網絡結構和技術細節參見原論文。

實驗

研究者在五個資料集(Omniglot、EMNIST、VGGFace、Flowers、Animals Faces)上做實驗,包括字元資料集和真實圖檔資料集,并和之前的少樣本圖像生成方法做比較。

下圖彙總了 F2GAN 方法和之前方法在五個資料集上的生成結果。左邊三列是作為輸入的三張條件圖檔,右邊是各個方法基于三張條件圖檔的生成結果。從下圖中可以觀察得到,不管是字元資料集還是真實圖檔資料集,基于三張條件圖檔,F2GAN 方法都能生成合理且多樣的同類别圖檔。

先融合再填充,上海交大提出少樣本圖像生成新方法F2GAN

這是因為該研究按照一定比例融合了多張條件圖檔。為了驗證按比例融合的平滑性,研究者基于兩張條件圖檔,用漸變的融合比例,得到基于 x1 和 x2 按不同比例融合的結果,如下圖所示。上面一行是 MatchingGAN 的對比結果,下面一行是 F2GAN 方法的結果,從中可以看出基于 F2GAN 方法生成的圖檔過渡更加平滑自然。

先融合再填充,上海交大提出少樣本圖像生成新方法F2GAN

該研究還對基于全局注意力機制的融合子產品(non-local attentional fusion module)進行可視化分析,如下圖所示:

先融合再填充,上海交大提出少樣本圖像生成新方法F2GAN

左邊一列圖檔是基于右邊三列條件圖檔生成的結果。這項研究針對生成圖檔的某一空間位置(比如紅色小方塊),擷取它從條件圖檔借取資訊的空間位置(比如紅色箭頭覆寫的高亮區域)。用下面一行的圖檔舉例,狗的額頭是從 x1 借資訊,臉頰是從 x2 借資訊,舌頭是從 x3 借資訊,融合得到左邊第一列的圖檔。

讨論

這篇論文還讨論了少樣本圖像生成和少樣本圖像翻譯(few-shot image translation)的差別和聯系。

少樣本圖像翻譯對圖檔進行跨類别遷移,借助已知類别的大量圖檔,給定某個未知類别的少量圖檔,即可把已知類别的大量圖檔遷移到該未知類别。但是這種做法在測試生成階段需要借助大量已知類别圖檔,做法不是很簡潔,并且生成圖檔在類别相關特征的多樣性方面不足。而且,如果解耦效果不夠理想,生成圖檔可能會帶有已知類别的類别相關特征。

相比較而言,少樣本圖像生成在測試生成階段不需要借助已知類别圖檔。另外,生成圖檔在類别相關特征的多樣性方面較好,且不會引入其他類别的類别相關資訊。

少樣本圖像生成是非常有挑戰性的任務,但受到的關注不是很多。目前,基于優化的方法在真實圖檔上生成的效果欠佳,尚未發揮出其優勢。基于變換的方法生成的圖檔多樣性不足,但是提升空間很大。基于融合的方法生成的圖檔通常和某一張條件圖檔比較接近,缺乏幾何形變。

近年來,少樣本生成方法在簡單的真實資料庫(Flowers、Animals Faces、NABirds)上已經取得了很大的進展,但是在複雜的真實資料庫(如 MiniImageNet)上依然無法生成真實的圖檔。歡迎大家關注少樣本生成任務。

參考文獻

[1] Louis Clouatre and Marc Demers. 2019. FIGR: Few-shot image generation with reptile. arXiv preprint arXiv:1901.02199 (2019).[2] Weixin Liang, Zixuan Liu, and Can Liu. 2020. DAWSON: A domain adaptive few shot generation framework. arXiv preprint arXiv:2001.00576 (2020).[3] Antreas Antoniou, Amos Storkey, and Harrison Edwards. 2017. Data augmentation generative adversarial networks. arXiv preprint arXiv:1711.04340 (2017). [4] Sergey Bartunov and Dmitry Vetrov. 2018. Few-shot generative modelling with generative matching networks. In AISTATS.[5] Yan Hong, Li Niu, Jianfu Zhang, and Liqing Zhang. 2020. MatchingGAN: Matching-based few-shot image generation. In ICME.[6] Yan Hong, Li Niu, Jianfu Zhang, Weijie Zhao, Chen Fu, Liqing Zhang. 2020. F2GAN: Fusing-and-Filling GAN for Few-shot Image Generation. In ACM MM.