Conditional Generative Adversarial Network for Structured Domain Adaptationを読んだ

Weixiang Hong, Zhenzhen Wang, Ming Yang, Junsong Yuan
CVPR2018
[pdf](http://openaccess.thecvf.com/content_cvpr_2018/papers/Hong_Conditional_Generative_Adversarial_CVPR_2018_paper.pdf)

# どんなもの？
近年，学習データの拡張のための合成データ生成手法が多く提案されている．
しかし，**実データと合成データのドメインの不一致**という問題が起きる．
これを解決するために，**GANをFCNのフレームワークに統合**することによって，セマンティックセグメンテーションのためのドメイン適用手法を提案．
![image.png](https://qiita-image-store.s3.amazonaws.com/0/259451/74c16b90-680a-8d3d-ada3-cea17cda9211.png)

# 先行研究との差分

- 合成画像の特徴（source domain）を実画像からの特徴（target domain）のように変換するconditional GANを学習．
- 合成画像と合成画像のラベル，実画像を使用する．実画像のラベルは不要．
- 提案手法はstate-of-the-artの手法をmean IoUで12 ~ 20%上回った．

# 技術や手法のキモ
合成画像（source domain）と実画像（target domain）のドメインギャップを埋めるために，「合成画像をもとに，**target domainから得られた特徴マップを生成するようなconditional generator**を学習」する．
discriminatorは実画像の特徴マップ（$x^t$） or 合成画像からの特徴マップ（$x^f$）なのか判別する．

$D$はdiscriminator branch，$T$はpixel-wise classifier branch．

![image.png](https://qiita-image-store.s3.amazonaws.com/0/259451/707d877b-eca0-bca0-f842-7bafb591b4f3.png)
※Figure 2を加工

最適化には以下のミニマックスを解く．
$L_t$は画像中の各ピクセルにおけるクロスエントロピー誤差の和．
![image.png](https://qiita-image-store.s3.amazonaws.com/0/259451/301094e3-238a-3a02-e4df-9434ba2fcd4b.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/259451/097a240b-b51f-d0f4-8e6b-17672713b9ab.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/259451/37dc578f-4485-f376-6fcf-2168e7a60b62.png)


# どうやって有効性を検証したか
target domain（実画像）のデータセットとして

- Cityscapes dataset[[10](https://arxiv.org/pdf/1604.01685.pdf)]
![image.png](https://qiita-image-store.s3.amazonaws.com/0/259451/e2e744ac-3a27-17ed-1cbc-9fffe8ec1512.png)
https://www.cityscapes-dataset.com/

source domain（合成画像）のデータセットとして

- SYNTHIA[[35](http://refbase.cvc.uab.es/files/RSM2016.pdf)]
![image.png](https://qiita-image-store.s3.amazonaws.com/0/259451/d5fb4052-7880-7f8e-d99a-b8523ea01b85.png)
http://synthia-dataset.net/

- GTA[[34](https://arxiv.org/pdf/1608.02192.pdf)]
![image.png](https://qiita-image-store.s3.amazonaws.com/0/259451/ec664369-193d-c9f0-a25e-993aaf6b79d5.png)
https://download.visinf.tu-darmstadt.de/data/from_games/

を用いて，性能の向上を比較．
提案手法はsource domain, target domainの画像で学習し，target domainの画像でテスト．
比較手法はtarget domainの画像で学習し，target domainの画像でテストのはず．

- No adaptation (NoAdapt) : source domainの画像で学習しただけ
- FCNs in the wild (FCN Wld) : FCNの拡張版 [[21](https://arxiv.org/pdf/1612.02649.pdf)]
- Curriculum learning (CL) : セマンティックセグメンテーションのドメインギャップを小さくする手法 [[45](http://openaccess.thecvf.com/content_ICCV_2017/papers/Zhang_Curriculum_Domain_Adaptation_ICCV_2017_paper.pdf)]
- Cross city adaptation (CCA) : pre-trainedのnetworkをrefineする手法[[9](https://pdfs.semanticscholar.org/7365/bb81475629752a15e0e25ffe836cb1144569.pdf)]

![image.png](https://qiita-image-store.s3.amazonaws.com/0/259451/cd278fbb-5c98-794c-70c5-15e1edcab654.png)

- ドメイン適用で大幅に（23%）性能向上（NoAdaptと比較） -> ドメイン適用が有効
- その他のstate-of-the-artとの比較でも12% ~ 20%の性能向上

以下は提案手法で異なるsource domain画像（SYNTHIA, GTA）を用いた場合の結果．

![image.png](https://qiita-image-store.s3.amazonaws.com/0/259451/80ea1eab-8ab4-3a22-dc68-d16a2ec1dee8.png)

Table1, 2の比較から，GTAを用いた方が良い結果だった（これはおそらく画像枚数による，24996 vs 9400）．
以下は使用する画像枚数の変化が，結果にどれだけ影響するかを検証したもの．
Fig 4(a)から

- 使用する合成画像の枚数が多いほど性能は向上
- しかし多すぎてもIoUがサチる（さらに多様なシーンが必要）
![image.png](https://qiita-image-store.s3.amazonaws.com/0/259451/d6031069-ba2c-da5b-265e-d5f41ede8398.png)

さらに，"Skip Pooling"を適用した場合とconditional generatorを省いた場合と比較．
![image.png](https://qiita-image-store.s3.amazonaws.com/0/259451/c0907a49-2375-5966-5a85-f7aa08637bf6.png)

conditional generatorへの入力をConv1~5と変えた結果とresidual blockの数を変えた結果．

- lower layerがより詳細なlow-levelの特徴を捉えていることが良い結果に繋がっている
- imageをそのまま入力してもいいが，Conv1の方が入力のサイズが小さい

![image.png](https://qiita-image-store.s3.amazonaws.com/0/259451/2110eeea-f836-330d-9cd5-fbf3bda7fae0.png)

入力するノイズの有無で比較．

- ノイズによりunlimited numberの訓練サンプルを作ることができる

![image.png](https://qiita-image-store.s3.amazonaws.com/0/259451/5deecf2f-5102-28e3-a300-8d9a4670aac1.png)

# 議論はあるか

- セマンティックセグメンテーションのためのドメイン適用手法を提案
- GANベースのアプローチでconditional generatorがsource domain画像の特徴マップをtarget domain画像の特徴マップのように変換する
- state-of-the-artの手法の性能を，実際の交通シーンのデータセットにおいて上回った

# 次に読むべき論文

CVPR2018のGANを用いた手法いろいろ

- [Attentive Generative Adversarial Network for Raindrop Removal
from A Single Image](http://openaccess.thecvf.com/content_cvpr_2018/papers/Qian_Attentive_Generative_Adversarial_CVPR_2018_paper.pdf)
- [Logo Synthesis and Manipulation
with Clustered Generative Adversarial Networks](http://openaccess.thecvf.com/content_cvpr_2018/papers/Sage_Logo_Synthesis_and_CVPR_2018_paper.pdf)