s4GAN - arXiv:1908.05724
Contents
s4GAN - arXiv:1908.05724#
Information
Title: Semi-Supervised Semantic Segmentation with High- and Low-level Consistency, ICCV 2019
Reference
Review By: 김소연
Edited by: Taeyup Song
Last updated on Jan. 5, 2022
Abstract#
수량이 제한된 pixel-wise annotated samples (labeled dataset)과 추가적인 annotation-free images(unlabeled dataset)을 이용하여 학습.
Self-training을 포함한 Semi-supervised learning 기반 classification network와 segmentation network가 연동되는 구조를 제안.
아주 적은 수의 labeled samples를 이용한 학습 과정에서 발생할 수 있는 low/high-level artifacts를 줄이기 위한 Dual-branch approach
PASCAL VOC 2012, PASCAL-Context, and Cityscapes에서 semi-supervised learning 기법 중 SOTA 달성
Problem Statement#
limited data로 학습된 CNN이 두 가지 failure mode를 가질 수 있음
Low-level detail이 부정확함 (틀린 object shape, 부정확한 boundary, 말이 안되는 surfaces)
Misinterpretation of high-level information (figure 1. (d), 이미지의 많은 영역을 틀린 class로 예측하는 경우)
Proposed Method#
High/low-level artifacts에 각각 대응하기 위한 Two network branch architecture 제안
low-level artifacts에 대응하기 위한 improved GAN-based model
Segmentation network를 generator로 사용
Discriminator는 생성된 segmentation map과 GT를 classify
기존의 GAN loss를 사용하지 않고, feature matching loss를 사용함
discriminator score 기반의 self-training procedure 사용하여 최종 성능 향상
leveraging high-quality generator predictions as fully labeled samples
high-level artifacts에 대응하기 위한 semi-supervised multi-label classification branch
이미지 내 classes를 예측함으로써 segmenation network가 globally consistent decisions를 할 수 있도록 도움
Extra image-level information from unlabeled images을 사용하기 위해 we leverage the success of ensemble-based semi-supervised
두 branch가 상호 보완적으로 low & high-level error에 대응함을 확인 (Fig1 (e))
Experiment#
(1) Setting#
Datasets
PASCAL VOC 2012 segmentation benchmark
PASCAL-Context dataset
Cityscapes dataset
Network configuration
semi-supervised segmentation GAN
DeepLabv2를 main segmentation network로 사용
discriminator
4개의 convolution layers로 구성된 standard binary classification network → global average pooling → fully connected layer
global average pooling의 결과물을 feature matching loss 계산하는데 사용
semi-supervised multi-label classification network
ResNet 101 pretrained on ImageNet as base
Baselines
compare to the DeepLabv2 network as the fully-supervised baseline approach, which was trained only on the labeled part of the dataset
main semi-supervised baseline은 [15] : use a two-stage GAN training
(2) Results#
PASCAL VOC 2012, PASCAL-Context, Cityscapes로 실험 결과 기존 SSL 기반 방법들에 성능이 향상됨을 확인할 수 있고, semi-supervised semantic segmentation에서도 new SOTA를 달성함.
특히 2% labeled data에서 SOTA (Deeplabv2) 대비 11% 성능 향상을 가져옴
추가적으로 extra image-level weak annotations이 있을 때 이를 쉽게 적용할 수 있을 것이라 기대할 수 있음.
(3) PASCAL VOC#
COCO pre-train 여부와 관계없이 제안된 Semi-supervised segmentation model이 모든 labeled data setting에서 가장 좋은 성능을 나타냄.
Deeplabv3+ backbone으로 적용 시 Low-data supervised only 세팅에서 unstable함. 데이터가 충분한 경우 Deeplab v2 대비 성능이 개선됨.
제안된 semi-supervised model에서는 Deeplabv3+을 사용한 경우가 더 좋은 성능 나타냄.
PASCAL context 데이터셋으로 1/8 labeled data로 학습한 결과.1/8 label을 이용하여 supervision으로 학습한 baseline에 비해 많이 향상된 결과를 확인 가능함.
COCO pretraining 없이 Cityscapes 데이터셋에서 1/8 labeled data로 학습한 결과 1/8 label을 이용하여 supervised learning으로 학습한 baseline 대비 향상된 결과를 볼 수 있다.
(4) Ablation Studies: MLMT 효과 분석#
MLMT를 적용한 결과 baseline 대비 false-positive가 제거됨을 확인할 수 있음.(fig 7. (d))
s4GAN을 적용한 결과 작은 shape을 더 잘 포착함을 확인할 수 있음 (fig 7. (e))
s4GAN이랑 MLMT 합쳤을 때 low and high-level artifacts를 효과적으로 제거함을 확인 (fig 7. (g))
(5) Ablation Studies: Failure cases#
multiple objects가 있는 경우, foreground object가 명확하지 않은 경우??
(6) Ablation Studies: Discriminator#
Self-training loss를 포함하여 학습한 경우 Discriminator가 overly strong해지는 걸 막아서 학습이 더 잘된다.
5% labeled data를 이용한 setting에서 ImageNet pre-train을 사용하지 않은 경우 Mean Teacher기반 classification network가 특히 false positives를 더 잘 없애줌을 확인 가능