GAN의 목표는 판별자가 진짜와 가짜를 구별하지 못하는 균형 상태에 도달하는 것입니다. 이 과정을 수학적으로 표현하면 생성자는 판별자를 속이는 방향으로 최적화하고, 판별자는 정확히 판별하려는 방향으로 최적화하는 게임 이론적 최적화 문제로 표현됩니다.

▲ 그림 1-36 GAN 메커니즘
출처: https://ratsgo.github.io/generative%20model/2017/12/20/gan/
GAN의 작동 방식을 자세히 살펴보면 노이즈 생성, 데이터 생성, 판별, 손실 계산, 모델 업데이트, 최적화 단계로 이루어집니다.
1. 노이즈 생성: 생성자는 랜덤 노이즈 벡터 z를 샘플링합니다. 이 벡터는 보통 정규 분포에서 생성됩니다.
2. 데이터 생성: 생성자는 샘플링한 노이즈 z를 입력받아 가짜 데이터 G(z)를 생성합니다.