GANs 3 - 훈련(Training)

김성빈·2024년 6월 13일
0

Modern Computer Vision

목록 보기
106/117

이 글은 아래 세가지의 내용을 다룰것

  1. GAN 훈련의 어려움
  2. 훈련 과정
  3. 문제점

GANs 훈련

우선 GANs 학습은 Neural Networks 보다 훨씬 어렵다

Neural Networks은 하나의 네트워크, 간단한 손실함수가 있고 손실을 줄이기 위해 경사하강법과 역전파를 사용한다.

복잡해 보이지만, GANs가 비교적 훨씬 어렵기 때문이다.

왜 어려움?

두 개의 적대적인 네트워크(생성자와 판별자)가 서로의 성능을 개선하기 위해 경쟁하기 때문이다.

훈련 과정

GANs 2에서 보여줬던 구성도이다.
노이즈를 생성자에게 넘겨주는 부분부터 시작이다.

1. 초기 단계에서 랜덤 노이즈 벡터를 생성자에 입력하여 가짜 데이터를 생성

  1. 생성된 가짜 데이터와 실제 데이터를 섞어 판별자에 입력

  2. 판별자는 입력 데이터가 진짜인지 가짜인지 판단하고, 그에 따라 자신의 가중치를 업데이트

  3. 생성자는 판별자의 피드백을 받아 가중치를 조정하고 더 나은 가짜 데이터를 생성

  4. 이 과정을 반복하며 생성자와 판별자는 점점 더 나은 성능을 발휘

프로세스의 모습

1~5의 구성을 지나 만들어진 이미지의 모습이다.

노이즈로부터 바로 만든 1번의 이미지는 처참하다

하지만 5번까지 가면서 품질은 점점 높아지고 5번은 확실히 인식되는 부분들이 많다.

문제점


아래는 대표적인 GAN의 4가지 문제점이다.

  • GAN은 종종 이상한 결과를 생성할 수 있으며, 이는 네트워크가 데이터의 실제 의미를 완전히 이해하지 못하기 때문

  • 균형을 맞추는 것이 어렵고, 하이퍼파라미터 조정, 초기화, 활성화 함수 선택 등 많은 요소를 신경 써야 한다.

  • 잘못된 초기화는 판별자의 손실을 0에 가깝게 만들 수 있으며, 이는 원치 않는 결과

  • 모드 붕괴(Mode Collapse): 생성자가 입력 노이즈에 관계없이 거의 동일한 출력을 생성하는 현상으로, 이는 판별자가 특정 이미지에만 높은 점수를 주는 경우 발생

profile
감사합니다. https://www.youtube.com/channel/UCxlkiu9_aWijoD7BannNM7w

0개의 댓글

관련 채용 정보