U-GAT-IT

2021. 1. 29. 14:10Computer vision 논문 & 코드리뷰

728x90

U-GAT-IT: UNSUPERVISED GENERATIVE ATTENTIONAL NETWORKS WITH ADAPTIVE LAYERINSTANCE NORMALIZATION FOR IMAGE-TO-IMAGE TRANSLATION

컴퓨터 비전 논문 스터디에서 이 논문에 관련하여 발표하였습니다 발표자료를 공유합니다.

 

 

논문 개요
image-to-image translation

image to image translation이란 이미지 데이터셋을 사용하여 input 이미지와 output 이미지를 mapping하는 것을 목표로 하는 생성모델의 한 분야입니다. 흑백 이미지에 컬러를 입힌다든지, 낮 사진을 밤 사진으로 만든다든지, 테두리만 주어진 사진을 실제 물건같이 만드는 것이 가능하죠.

이런 image to image translation은 크게 paired한 데이터셋을 사용하는 분야 (기본적으로 generator에 넣었던 input 이미지, 이와 하나의 pair가 될 진짜 이미지나 생성된 이미지를 input으로 받습니다.  paired dataset의 경우, X 이미지의 좌표값과 Y 이미지의 좌표값이 어떻게 대응되는지에 대한 정보들이 담겨있습니다.)

 

unpaired한 데이터셋을 사용하는 분야로 구분할 수 있습니다. 그리고 이 분야들을 대표하는 모델들이 오늘 볼 pix2pix cyclegan입니다.

 

paired dataset의 경우, X 이미지의 좌표값과 Y 이미지의 좌표값이 어떻게 대응되는지에 대한 정보들이 담겨있습니다. 그러나 unpaired dataset은 일대일로 매칭된 것이 아니기 때문에 이에 대한 정보가 존재하지 않습니다.

 

paired dataset은 생성하기 어렵기 때문에 unpaired dataset을 활용한 모델이 더 실용적이겠죠?

 

unpaired dataset을 활용한 training은 unsupervised training이라고 할 수 있는데, 이 슬라이드가 그 문제점을 잘 보여줍니다. 

 

- U-GAT-IT 구조

U-GAT-IT의 전체적 구조를 나타내면 다음과 같습니다.

전체적인 구조

attention map semantically important areas 초점을 맞추기 위해 generator discriminator 내장되어 있으므로 shape transformation 용이하게 한다

generator attention map 도메인을 구체적으로 구별하는 영역에 focus 유도.

discriminator attention map target domain 실제 이미지와 가짜 이미지의 차이에 초점을 맞춤으로써 fine-tuning 돕는다.

Attention mechanism외에도 normalization function 선택하는 것이 shape texture 서로 다른 다양한 데이터 세트에 대한 변환 결과의 품질에 상당한 영향을 미침.

 

Generator 구조

encoder에서 얻어진 featuremap은  FC (분류를 위한 weights 학습: 소스도메인에서 얻어진 featuremap확률얻기위한 weights: weightsfeaturemap에 곱해주는 것으로 attention map a를 구한다)

CAM에서의 FC 생각하면 될 듯 하다.

AdaLIN에 대해서는 뒤에서 언급하겠다.

 

WCT, AdaIN

논문에서 제시한 AdaLIN 이라는 Normalization방법을 비교하는 다른 방법으로 WCT(최선의 방법이라고 언급) , AdaIN( 차선책으로 언급) 을 제시합니다. 이에 대한 내용을 간략히 실었습니다.

 

Batch Normalization

Batch Normalization은

Gradient Vanishing / Gradient Exploding이 일어나지 않도록 하는 아이디어 중의 하나입니다.

이런 문제들은 원래 Activation 함수를 ReLU로 변환, 초깃값 튜닝, 작은 learning rate 값으로 해결했습니다. Batch Normalization 방법은 training 과정 자체를 안정화하여 학습 속도를 가속화하기 위해 만들어졌습니다.

표준화와 유사한 식으로 mini-batch에 적용해 평균 0, 단위 표준 편차 유지를 시도합니다.

 

<장점>

propagatio에서 parametescale 영향을 받지 않으므로, learning rate를 크게 설정할 수 있다.

weight regularizationDropout(이 방법과 성능이 같지만 느림)을 제외할 수 있어, 학습 속도를 향상시킬 수 있다.

LN, IN대해 직관적으로 확인할 수 있는 이미지

 

AdaIN

Batch-Instance Normalization(BIN) (Nam & Kim (2018)) 에서 영향을 받아 Adaptive LayerInstance Normalization (AdaLIN)을 제안.

AdaLIN: 새로운 정규화 함수

AdaLIN parametersadaptively하게 Instance normalization (IN) Layer Normalization (LN) 사이의  적절한 비율을 선택함으로써 training동안에 dataset으로부터 학습된다.

 

AdaLIN function은 우리의 attention guided model모양과 질감의 변화 정도를 유연하게 제어할 있도록 도와줍니다

 

instance normalization이 중요한 작업에서 ρ 값이 1에 가깝고 LN이 중요한 작업에서 ρ 값이 0에 가깝도록 값을 조절함으로써 IN이 중요할땐 IN을, LN이 중요할땐 LN을 해준다고 이해했음.

 

Content features style feature로 전송하는 최적의 방법은 Whitening and Coloring Transform (WCT) (Li et al. (2017b)) 을 적용하는 것. But covariance matrix and matrix inverse (공분산 행렬과 역행렬) 계산 의해 computational cost가 높다.

AdaIN (Huang & Belongie (2017))WCT보다 빠르고 feature channel uncorrelation을 가정하기 때문에 WCT에 차선책이다(sub-optimal). 그래서 transferred features content patterns를 조금 더 포함한다. 반면에, LN은 채널간 uncorrelation을 가정하지 않는다. 하지만 feature maps에 대해서만 global stastics를 고려하기 때문에 가끔은 original domain content structure을 잘 유지하지 못합니다.

-> 이문제를 극복하기 위한 normalization technique AdaLINAdaIN의 장점과 LN의 장점 content information을 선택적으로 유지 또는 변경함으로써 결합한다. 이것은 wide range of image-to-image translation problems를 해결하는데 도움이 된다.

 

Discriminator 구조

 

< LOSS >

1.변환된 이미지의 분포를 대상 이미지 분포와 일치시키기 위해

2. mode collapse problem 완화를 위해 generatocycle consistency constraint 적용(주기 일관성 제약 조건). 소스이미지의 픽셀값들 x대해 Xs에서Xt로의 변환과 Xt에서 Xs로의 변환이 이뤄진후 이미지는 성공적으로 original domain으로 돌아와야한다.

3.입력 이미지와 출력 이미지의 색 분포가 비슷하도록 하기 위해, 우리는 제너레이터에 identity consistency constraint 적용. 영상 x → Xt가 주어지면 Gs→t를 사용하여 x를 변환한 후 영상이 변경되지 않아야 합니다.

4.generatodicriminator의 보조분류기의 확률변수들 사용함으로써 소스이미지와 타겟이미지(주어진이미지)주어졌을대, GD는 어디를 더 향상시켜야하는지 또는 어떤 것이 두 도메인간 차이를 크게 만드는지 알게해줌

5.최종loss.. 엔코더, 디코더, 이스크리미네이터, 보조분류기 모두를 함께 학습 – final objective를 최적화화기위해...

 

Experiments

CycleGAN, UNIT, MUNIT, DRIT, AGGAN, and CartoonGAN

-Dataset

대표적인 4개의 이미지 변환 데이터 세트와 실제 사진과 애니메이션 작품으로 구성된 새로운 데이터 세트를 포함하여 5개의 unpaired 이미지 데이터 세트를 사용하여 방법(i.e.,selfie2anime) 훈련을 위해 모든 영상의 크기는 256 x 256으로 조정됩니다.

Fig2(b)에서 보여주는 처럼 attention feature map generator , 같은 target domain discriminative(차별적인) source image 영역에 focus 있도록 돕습니다.

한편, 우린 fig2© (d) 각각 표시된 것처럼 discriminator local global attention map 각각시각화 함으로써 discriminator attention concentrate(집중)시킴으로써 target image 진짜인지 fake인지 판별하는 영역을 있다

Generator discriminator attention maps focus하는 area fine-tune 있다.

receptive field(수용영역) 크기가 다른 두개의 discriminator globallocal attention map들을 통합한다는 점을 유의하라.

maps generator local regions뿐만 아니라 global structure(e.g., face area, near of eyes) capture 있도록 도와준다.

정보들로, 일부 regions 더욱 주의깊게 translated된다.

Attention module의한 결과는 fig2(e) 나와있듯이 image translation task에서 attention feature map 활용의 advantageous effect 검증한다.

반면, fig2(f) 같이 attention module 사용하지 않고선 눈이 잘못 정렬되어 있거나 translation 전혀 수행되지 않은 것을 있다.

 

AdaLIN generator decoder에만 AdaLIN 적용한다.

Decoder residual(잔여) blocks 역할은 features 내장(embed)하는 것이고, decoder upsampling convolution blocks embedded features에서 target domain images 생성하는 것이다.

만약 학습된 gate parameter ρ 값이 1 가까우면, corresponding layers LN보다 IN 많이 의존한다는 것을 의미한다.

마찬가지로 학습된 ρ 값이 0 가까우면 corresponding layers IN보다 LN 많이 의존한다는 것을 의미한다.

Fig3 (c)에서 보듯이, decoder에서 IN 사용하면, residual blocks 사용되는 channel-wise normalized feature statistics로 인해 source domain의 특징 (: 광대 주변 귀걸이 음영) 보존된다.

그러나 the global styleup-sampling convolution blocksIN에 의해 captured될 수 없기 때문에, the amount of translation to target domain style 이 부족하다.

반면, fig3(d)처럼 만약 우리가 decoder에서 NL만 사용하면, up-sampling convolution에 사용되는 virtue of layer-wise normalized feature statistics의해 target domain style이 충분히 전송될 수 있다.

하지만 source domain imagefeaturesresidual blocks에서 NL을 이용하는 것보다 덜 보존된다

이 두가지 극단적 사례 대한 분석은 source domainsemantic characteristics를 보존하기 위해 feature representation layers에서 LN보다 IN에 더 의존하는 것이 유익하고, 실제로 feature embedding에서 이미지를 생성하는 upsampling layer에는 그 반대라는 것을 보여준다.

그러므로, 제안된 AdaLINsource target domain의 분포에 따라 decoder INLN비율을 조정하는 unsupervised image-to-image translation tasks에서 더 선호된다.

추가로, fig3(e) , (f)는 각각 AdaINGroup Normalization (GN)을 사용한 결과이다. 우리의 method는 이것들에 비교하여 더 나은 결과를 보여주고 있다.

ablation study using Kernel Inception Distance (KID)(Binkowski et al. (2018)) 통해 AdaLIN attention module 성능 나타냄.

U-GAT-IT 모델이 가장 낮은 KID

Attention module AdaLIN 별도로 사용함에도 불구하고 성능이 우수함 --

하지만 함께 사용한다면? 더욱더 좋은 성능!

. 135 참가자들에게 source image 있는 제안된 포함해 다양한 방법의 translated results 보여주고 target domain best translated image 선택하도록 요청.

Target domain 이름(: 애니메이션, , 얼룩말) 알려주었다.

그러나 적절한 판단을 보장하기 위해 초상화 고흐 데이터 세트에 대한 대상 도메인의 일부 예제 이미지가 최소 정보로 제공됩니다.
2 제안된 방법이 photo2vangogh 제외하고 상당히 높은 점수를 얻었지만 인간의 지각 연구에서 다른 방법과 비교할 있음을 보여준다.

 

Fig4 성능 비교를 위해 방법의 이미지 변환 결과를 제시한다.
U-GAT-IT
attention module 이용하여 source target domain 사이의 구별되는 영역에 집중함으로써 왜곡되지 않은(undistorted) 이미지를 생성할 있다.

CycleGAN 결과에서 얼룩말의 머리나 개의 주변 부위가 왜곡된다는 점에 유의해라.
또한 U-GAT-IT 사용한 변환 결과는 소스 도메인의 의미적 특징을 보존하면서 다른 방법보다 시각적으로 우수하다.
MUNIT
DRIT 결과는 다양성을 위해 임의의 스타일 코드를 사용하여 이미지를 생성하므로 소스 이미지와 많이 다르다는 점에 주목할 필요가 있다.
또한 U-GAT-IT 5개의 서로 다른 모든 데이터 세트에 동일한 네트워크 아키텍처와 하이퍼 파라미터를 적용했으며, 다른 알고리듬은 사전 설정된 네트워크 또는 하이퍼 파라미터로 훈련된다는 점을 강조해야 한다.
사용자 연구의 결과를 통해 우리는 attention module AdaLIN 결합이 모델을 더욱 유연하게 만들어줌을 보여준다.

최근에 제안된 KID 사용하여 실제 이미지의 feature representations 생성된 이미지의 feature representations 사이의 squared Maximum Mean Discrepancy (제곱 평균 불일치) 계산한다.
feature representations
인셉션 네트워크(Szegedy et al., 2016)에서 추출한다.

Frchet Inception Distance(Heusel et al., (2017) 대조적으로 KID unbiased estimator 가지고 있어 특히 Inception 형상의 치수(dimensionality )보다 테스트 영상이 적을 더욱 신뢰성이 높다.
KID
낮을수록 실제이미지와 generated이미지의 visual similarities 공유된다는 것을 나타냅니다. (Mejjati et al. (2018))
따라서 translated 경우 KID 여러 데이터셋에서 작은 값을 갖게 됩니다. 3 제안된 방법이 photo2vangogh photo2portrait 같은 스타일 전송 작업을 제외하고 가장 낮은 KID 점수를 달성했음을 보여준다.

 

728x90