티스토리 뷰

-합성곱 신경망의 주요 개념 이해하기.

-배친 정규화란?

-DCGAN의 구현.

 

논문PDF :

Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks


    기존 GAN에는 몇 가지 단점들이 존재합니다. 가장 치명적인 단점은 '그냥 성능이 좋지 못하다'는 점입니다. 이외에도 신경망의 형태로 input에 대한 output의 근거를 알 수가 없습니다. 다시 말해, 학습의 과정이 어떠한지 알 수 가 없습니다. 마지막으로 GAN은 새롭게 만들어진 sample로서 기존의 original input과 비교를 할 수 있는 정량적인 척도로 쓰일 마땅한 지표가 없습니다. 결국 사람이 직접 보고 판단해야하고 이는 주관적인 기준이 될 수 밖에 없습니다.

 

    GAN은 훈련 방식부터 매우 혁신적인 모델이었습니다. 서로 경쟁하는 형태로 이론상 수렴하는 것이 당연한 듯해 보였지만, 실제로는 그렇지 못했습니다. 훈련 과정 중에 모델이 붕괴된다고 표현하는데, 이처럼 GAN의 불안정성은 가장 큰 단점 중 하나입니다. 한줄 요약하자면... 결과물이 '형편 없다'. 그래서 위와 같은 노력으로 이를 개선합니다.

 

  • D(판별자)에서는 모든 pooling layer들을 strided convolutions 로 바꾸고, G(생성자)에서는 pooling layer들을 fractional-strided convolutions 으로 바꾼다. (fractional-strided convolutions = transposed convolutions)
  • G와 D 둘 다 batch-normalization을 사용한다. ⭐️
  • Fully-connected hidden layers를 삭제한다.
  • G에서 모든 층에 대해 활성화 함수로 Relu를 쓰되, output layer에서만 Tanh를 사용한다.
  • D에서는 모든 층에 대해 활성화 함수로 LeakyRelu를 쓴다.

 

Convolutions

 

좌 convolution / 우 transposed convolution

    Deconvolution과 transposed convolutoin의 차이는?

 

Batch Normalization

    책에서는 '배치정규화'를 특히 강조하여 언급하는데, 지금은 신경망 학습에서는 안보이는데가 없을 정도로 필수적인 layer입니다. 배치정규화는 gradient vanishing이나 exploding이 일어나지 않도록 하는 아이디어 중 하나입니다. 활성화 함수나 small learning rate 등의 방법을 통해 이런 문제들을 해결하려 했지만, 어디까지나 간접적인 방법이었기 때문에 training 과정을 안정화 시킬 수 있는 근본적인 방법을 찾기 위한 노력을 통해 개발된 방법이 배치 정규화라고 합니다.

 

'스터디 > GANs in Action' 카테고리의 다른 글

Basics of GAN (GANs 인 액션)  (0) 2022.04.26
오토인코더와 생성 학습 (GANs 인 액션)  (0) 2022.04.19
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함