GAN (Generative Adversarial Networks)

I. 경쟁을 통한 원본 복제 기술, GAN

가. GAN (Generative Adversarial Networks)의 개념

생성자와 판별자 간 복제본 구별 경쟁을 통한 MinMax기반 성능 강화 비지도 학습 기술

나. GAN의 특징

준지도 학습– 지도학습(구별자) + 비지도학습(생성자)
MinMax Problem– 최소화와 최대화 경쟁 기반 성능 향상

 

II. GAN의 학습과정/수학적 표현 및 구성요소

가. GAN의 학습과정/수학적표현

학습과정수학적 표현

– 위조 데이터생성 및 판별
minGmaxDV(D,G) = logD(x) + log(1-D(G(z)))
Discriminator: 엔트로피 최대화
Generator: 엔트로피 최소화

나. GAN의 구성요소

구분핵심기능설명
구별자– 정확도최대화
– Convolution
– 입력 데이터 진위여부 판별
– D(x) = 1, D(G(z)) = 0
생성자– 정확도최소화
-Deconvolution
– 랜덤 노이즈 기반 유사 변환
– data 패턴 모사, D(G(z)) = 1
학습
데이터(x)
– 샘플 데이터
– 패턴 다양화
– 모사할 original 샘플 데이터
– Real data, 학습량 기반
잠재 변수– 랜덤 노이즈
– 랜덤 벡터
– 모사 데이터 생성 벡터
– 데이터 생성 시 입력
  • 학습을 반복하여 Pg = Pdata가 되어 Discriminator가 구별 불가능한 인 상태로 수렴

 

III. GAN의 문제점 및 해결 방안

문제점해결 방안
– 모드붕괴 및 국부최저문제
– 판별자 학습부진으로 최소극대화 문제 성립 어려움
– Mini-Batch GAN 사용
– 전체 Batch 모두 확인
– 다양성 부족시 위조 라벨링

 

IV. 다양한 산업에 활용되는 GAN의 응용 기법

응용기법특징설명
DCGAN– 감식자 판정
– 이미지 연산
– 생성자: Deconvolution Net.
– 감식자: Convolution Net.
SRGAN– 8K Display
– SRResNet
– 저해상도 → 고해상도 변환
– 이미지 초고해상도 변환
스택GAN– 저/고해상도
– 2단계 Net.
– 입력 문자과 단어 해석
– 문자/단어 이미지 생성
Cycle GAN– Unpaired
  Training
– 자율적 이미지 스타일 변환
– 모네, 피카소 스타일 유화
  • GAN은 기초 연구 뿐 아니라 비즈니스 응용 진행중

콘텐츠 사용 시 출처 표기 부탁 드리고, 댓글은 큰 힘이 됩니다^^