Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
BIGGAN_.pptx_seoultech uniy ppt presentation
1. LARGE SCALE GAN TRAINING FOR HIGH FIDELITY
NATURAL IMAGE SYNTHESIS
한정현
2. • Conditional GAN은 많은 발전을 해왔지만 SAGAN 조차 아직 실제 이미지와 차이
가 크며, 실제 이미지의 IS 인 233에 비교해 SAGAN은 52.5의 IS에 그친다.
• BigGAN은 GAN에서 생성된 이미지들과 실제 이미지인 ImageNet 간의
fidelity(품질), variety(다양성) 격차를 줄인다는 목표를 가지고 다음의 3가지
를 증명합니다. (다음 페이지)
* IS(Inception score) : GAN에 사용되는 평가 지표 중 하나. 높을수록 좋음
3. • GAN이 scaling으로 크게 이득을 본다는 것을 입증한다. 기존의 art(SOTA 모델을 의미하는 듯)에 비해
2~4배 많은 parameter와 8배 큰 batch size로 학습한다. scalability를 향상시키는 두 간단한, 일반적인
architectural changes를 소개하고 conditioning을 향상시키기 위해 regularization scheme을 수정해서
성능을 높인다
• 위의 수정으로 인해 모델이 "truncation trick"에 적합해지는데(amenable), 이는 sample variety와
fidelity 사이 tradeoff를 명시적으로 미세조정할 수 있게 하는 simple sampling technique이다.
• large scale GANs에 특수한 불안정성을 발견하고 경험적으로 characterize한다.
5. • 이 논문에서는 G에 shared embedding으로 CBN 방식을 사용한다고 한다.
https://arxiv.org/pdf/1707.00683.pdf
Shared Embedding
-- 논문에는 우선 아무런 설명X
6. • CBN은 Modulating early visual processing by language에서 소개되었으며, 기존의 Batch
Normalization(BN)의 learnable parameter인 γ, β에 class 정보가 영향을 미칠 수 있도록 해 conditional
정보를 BN에 주는 방법
• 주고자 하는 condition에 해당하는𝑒𝑞 를 MLP layer에 통과시켜 channel 수 마다 2개의 값 Δβ와 Δγ를
계산합니다
8. Hierarchical Latent spaces
1. Z는 model input에서 한번만 쓰이는게 일반적인데, BIGGAN에서는 Residual block마다
class 정보와 함께 입력된다
2. latent vector z가 channel 차원에 따라 동일한 크기로 분할되고 각 분할된 z는 shared
class embedding인 CBN과 연결되어 residual block에 conditioning vector로 전달
3. 이 z가 여러 층에 전달되기에 이를 hierarchical latent space라 하고 skip connection처럼
layer를 뛰어넘어 concat되는 z를 skip-z라 합니다
(b)는 하나의 RB를 나타냄
9.
10. • Memory, compute costs가 개선됨
• Performance improvement는 4% 개선
• Training speed는 18% 개선으로, 유의미한 수치
11. • 새로운 trick으로 variety와 fidelity를 조절하며 IS와 FID 점수를 향상시킬 수 있는 truncation trick을 발견
• train 과정에서는 z∼N(0,I) 를 그대로 사용해 이전의 모델들과 같은 방법이지만, evaluate 시 z값이
threshold 값을 넘어가게 된다면 다시 추출하는 것이 truncation trick
• 즉 threshold가 작을수록 규제가 강한 것
• threshold 값이 큰 좌측의 결과 이미지들은 다양한 이미지가 출력되나 상대적으로 품질이 떨어지며
(fidelity ↓↓, variety ↑↑), threshold 값이 작아지며 우측으로 갈수록 결과 이미지들의 다양성은 떨어
지나 품질이 올라가는 것(fidelity ↑↑, variety ↓↓)을 볼 수 있습니다.
Truncation Trick
12. • (b)처럼 Truncation Trick을 적용해도 잘 생성되지 않는 경우가 빈번하게 발생함.
• 이를 해결하기 위해 Orthogonal Regularization을 적용함
13. • 사실 orthogonal regularization은 BIGGAN 저자의 이전 논문인 Neural Photo Editing with
Introspective Adversarial Networks에서 제안
• W는 weight matrix이고 β가 hyperparameter로 weight를 orthogonal하게 제한하도록 orthogonal
regularization이 제안되었으나, spectral normalization 논문에서 orthogonal regularization은 중요한
singular value에 상관 없이 모든 singular value를 1로 설정하기 때문에 spectrum 정보를 파괴하는 문제
가 있다고 지적을 당해 BIGGAN 논문에서는 변형된 아래의 버전을 사용
• 11은 모든 요소가 11로 설정된 행렬이며, β를 10−410−4로 설정해 모델이 truncation에 적응할 수 있도
록 likelihood를 개선할 수 있다는 것을 찾게 되었고, orthogonal regularization을 사용한다면 16%의 경
우에만 truncation trick을 적용할 수 있었던 것을 60%까지 적용할 수 있게 되었다고 합니다.
아쉬운 점은, 논문에서는 왜 이렇게 식을 사용하였고, 그냥 이렇게 썼더니 잘 되던데? 이
런 느낌으로만 적음
Orthogonal Regularization
14. • Table 1의 1~4행은 단순히 batch size를 최대 8배까지 증가시키는 것으로 IS 점수는 SOTA에서 46%
향상됨을 보여줌
• 또한 channel 수를 50% 증가시켜 파라미터 수를 약 2배로 늘려 IS가 21% 더 개선
• 깊이를 2배로 늘리는 것은 처음엔 개선으로 이어지지 않았지만 residual block 구조를 사용하는
BIGGAN-deep 모델에서 해결
이런 scale up으로 인한 주목할 만한 부작용은 training collapse
실험 및 결과는 간단하게만 확인
15. • G의 경우 일부 layer의 weight 행렬의 singular values σ값이 학습 내내 상승하고 collapse 될 때 폭발
하는 spectrum들을 가지고 있음
• 이를 방지하기 위해 G에 추가 조건을 부과해 폭발하는 spectrum을 막아 training collapse를 방지
하고자 했으나 Spectral Normalization을 사용하더라도 일부의 경우 성능이 약간 개선되기만 할 뿐
training collapse를 막지 못했다고 합니다
이 논문에서 이러한 Collapse를 막기 위해서 3가지 정도의 실험을 하였는데, learning rate를 이용하
여 실험을 대부분 진행. 결과는 모두 실패
실험 및 결과는 간단하게만 확인
Collapse
16. • 왼쪽 3개는 잘 만들어 졌는데, 마지막 사진은 테니스 공에 개(?)같은 얼굴이 보임
• Class leakage: 한 클래스의 특성이 다른 클래스에서도 나타나는 현상
실험 및 결과는 간단하게만 확인