본문 바로가기
카테고리 없음

생성적 적대 신경망(Generative Adversarial Networks GAN)이란?

by 남오공 2022. 5. 19.
728x90

생성적 적대 신경망(GAN)이란?

  • 생성자(Generator)는 실제와 동일한 데이터를 만들기 위해 노력하고
  • 판별자(Discriminator)가 생성된 데이터가 진짜인지 아닌지를 판단하는 학습방식이다.
    이는 이미지를 받아 이진분류(실제 이미지에는 양수 가짜에는 음수를 출력)를 수행하는 역할을 하기 떄문에 LeakyReLU함수를 사용한다.
  • 처음에는 성능이 안좋을 수 도 있지만 학습을 거듭하며 점점 발전하게 되는 기술이다. 아래예시를 보고 이해를 해보자

고양이 그림을 그리는 GAN의 생성자와 판별자를 나타낸 예시이다.
처음에는 생성자가 이상한 그림만 그리지만 학습 후 고양이를 그려냈다.
손글씨를 학습하는 GAN 모델의 예시이다.

Cycle Gan이란?

  • 특정이미지의 도메인특성을 유사한 부분의 특성으로 적용할 수 있는 역할을 하는 GAN
  • 생성자 2개가 필요하며 각각의 생성자는 A→B, B→A 로 이미지를 변경하게 된다.
  • 판별자 역시 2개를 필요하며. 각각의 판별자는 A, B 에 대해 Real/Fake 를 판단하게 된다.
  •  
  • 아래의 예시를 보고 생각해보자.

댓글