CVPR   GAN

論文筆記 StarGAN-Unified Generative Adversarial Networks for Multi-Domain Image-to-Image Translation

 · 1 mins read

論文出處:StarGAN-Unified Generative Adversarial Networks for Multi-Domain Image-to-Image Translation

Introduction

在不同domain間的風格轉換,已有許多成功的發表,像是Conditional GAN, 或是解決unpaired dataset之間轉換的 Cycle GAN等等。然而前述方法都只能在1對1的domain中轉換,換句話說,若是要在N個domain之間可以自由轉換,理論上至少要訓練$\frac {(N-1)^2}{2}$個模型,非常沒有效率。

Imgur

上圖左側為傳統1對1 domain的轉換,右側為本文propose的架構:StarGAN。

Star Generative Adversarial Networks

Imgur

Multi-Domain Image-to-Image Translation

本文的目標是使用一個生成器 $G$ 達到轉移至多個domain的功能:給定一個 input $x$ 與 target domain label $c$,得到output $y$。

\[G(x, c) \to y\]

此外,判別器 $D$ 具有分辨真偽以及分類的功能。

\[D:x \to \{D_{src}(x), D_{cls}(x)\}\]

Adversarial Loss

\[\mathcal L_{adc} = \mathbb E_x[\log D_{src}(x)] + \mathbb E_{x, c}[\log (1- D_{src}(G(x, c)))]\]

其中$D_{src}(x)$ 可以理解為 $x$ 屬於 real 的機率大小。$D$ 會 maximize 這個 Loss; $G$ 會 minimize 這個 Loss。

Domain Classification Loss

給定一個 input $x$ 以及 target domain label $c$,本文的目標除了要把 $x$ 轉成另一逼近真實照片 $y$,且這個 $y$ 要可以正確被歸類至 $c$ domain。

在訓練 $D$ 時,由於分類label一定得從真實資料取得才具有正確性的保證,故此時會取 real image 做分類問題。此時,$D$ 學著把 real image 分類至未轉換前的 domain $c^{\prime}$。

\[\mathcal L_{cls}^{r} = \mathbb E_{x, c^{\prime}}[-\log D_{cls}(c^{\prime}|x)]\]

其中  \(D_{cls}(c^{\prime}|x)\)

可以理解為 $x$ 被歸類為 $c^{\prime}$ 類的機率。 在這邊假設 $(x, c^{\prime})$ 是training data提供的(廢話)。

訓練 $G$ 時,必須固定 $D_{cls}$,並且 minimize 以下 loss,使得可以讓 $D_{cls}$ 將生成的image分類成指定的 target domain $c$。

\[\mathcal L_{cls}^{f} = \mathbb E_{x, c}[-\log D_{cls}(c|G(x, c))]\]

Reconstruction Loss(cycle consistency loss )

\[\mathcal L_{rec} = \mathbb E_{x, c, c^{\prime}}[||x - G(G(x, c), c^{\prime})||_1]\]

Full Objective

\[\mathcal L_{D} = -\mathcal L_{adc} + \lambda_{cls}\mathcal L_{cls}^{r}\] \[\mathcal L_{G} = \mathcal L_{adc} + \lambda_{cls}\mathcal L_{cls}^{f} + \lambda_{rec}\mathcal L_{rec}\]

Training with Multiple Datasets

使用多個不同dataset訓練stargan有個根本問題:不同dataset的label屬性往往不同,故引入 Mask Vector 解決這個問題:

\[\tilde c = [c_1, .....,,c_n. m]\]

在這邊 $m$ 就是一個 $n$ 維的 vector,決定在某一筆資料輸入時,具有 $n$ 種 label 中的哪幾種 label。 Imgur

Result

Imgur

Imgur