Abstract
GAN은 생성 모델을 학습하기 위한 새로운 적대적 학습 프레임워크를 제안한다. 이 방식은 데이터 분포를 찾아내려는 생성기 G와, 입력이 실제 데이터인지 생성된 데이터인지 판별하려는 판별기 D를 동시에 학습시키며, 두 모델은 미니맥스 게임 구조를 이룬다.
이론적으로는 무한한 표현력을 가정할 때 G와 D의 최적해가 존재하며, 최적해가 존재하는 지점에서 G는 실제 데이터 분포를 재현하고 D는 모든 입력에 대해 0.5의 확률을 출력한다. 또한 제안된 방식은 MCMC나 복잡한 추론 절차 없이 단순히 역전파만으로 학습과 샘플 생성이 가능하다. 실험에서는 이 프레임워크가 다양한 데이터셋에서 생성 모델로서 유의미한 품질을 보여줌을 확인했다.
*MCMC(Markov Chain Monte Carlo): 확률 분포에서 직접 샘플링하기 어려울 때, 마코프 체인을 이용해 그 분포를 근사적으로 샘플링하는 방법들로 간단히 말하자면 복잡한 확률분포에서 샘플을 뽑기 위해, 점을 조금씩 움직이며 분포를 따라가도록 만드는 샘플링 기법이다.
왜 GAN에서 MCMC 언급이 나올까?
→ 기존의 많은 생성 모델(RBM, DBM 등)은 모델의 분포에서 샘플을 얻기 위해 MCMC를 돌려야 했다. 따라서 깊은 생성 모델은 느린 MCMC 샘플링이 필요하다는 고질적인 문제가 있었다. 그러나 GAN은 샘플 생성할 때 MCMC가 필요없고 생성기에 노이즈 넣고 한번 forward 하면 끝이므로 속도 측면에서 강력하다. 또한 MCMC는 혼합이 잘 되지 않는 경우 학습이 아예 망가져, GAN은 학습 안정성 측면에서도 강력하다.
1. Introduction
최근 딥러닝은 복잡한 데이터의 확률분포를 더 잘 표현하는 모델을 목표로 발전해왔지만, 그중 가장 큰 성과를 낸 방법은 이미지를 보고 라벨을 맞히는 것처럼 입력을 분류하는 모델(판별 모델)이었다. 반면 생성 모델은 학습이 훨씬 어려웠다. 왜냐하면 생성 모델을 최대우도로 학습하려면 확률 계산이 너무 복잡해서 직접 계산할 수 없는 경우가 많고, 이를 대신하기 위해 쓰는 MCMC 같은 추론 방법도 느리고 수렴이 불안정하기 때문이다. 또한 깊은 생성 모델들은 잠재변수 구조가 복잡해서 딥러닝에서 자주 쓰는 ReLU 같은 비선형 활성화의 장점도 제대로 활용하기 어렵다. 그래서 학습하려면 여러 근사 기법(MCMC)을 사용해야했는데 이는 계산 비용도 크고 과정도 까다롭다.
비선형 활성화의 장점을 왜 활용하기 어려웠는가?
→ RBM/DBM 같은 깊은 생성 모델은 위↔아래가 반복 연결된 구조라 ReLU처럼 값이 커지는 활성화를 쓰면 신호가 계속 증폭되어 발산할 위험이 있다. 그래서 feed-forward(MLP, CNN 등) 네트워크처럼 ReLU의 장점을 마음껏 활용하기 어렵다.
GAN은 이러한 문제를 해결하기 위해 추론 과정이나 MCMC를 필요로 하지 않는 새로운 생성 모델 학습 절차를 제안한다. 이 프레임워크에서는 생성 모델을 “가짜를 만드는 쪽”, 판별 모델을 “진짜와 가짜를 구분하는 쪽”으로 설정하고, 두 모델이 서로 경쟁하는 적대적 게임을 통해 학습이 이루어진다. 이 경쟁은 두 모델의 성능을 계속 개선시키면 궁극적으로 생성 모델이 실제 데이터와 구분되지 않는 분포를 찾아내도록 이끈다.
2. Related work
기존의 깊은 생성 모델들은 주로 잠재변수를 가진 확률 그래프 모델 형태로, 대표적으로 RBM, DBM 같은 비지도 학습 기반의 undirected 모델과 DBN 같은 hybrid 모델이 있다. 그러나 이러한 모델들은 확률분포의 정규화 상수 계산이 어려워 이를 추정하기 위해 MCMC 기반 학습을 사용한다. 그러나 이는 느리고 혼합이 불안정하다는 근본적 한계를 가진다. 또한 score matching, noise-contrastive estimation(NCE) 같은 대안적 학습 기준도 제안되었지만 이 방식들은 정규화되지 않은 확률밀도 함수가 명시적으로 정의되어야 한다는 제약이 있어 복잡한 생성 모델에 적용하기 어렵다. 최근에는 GSN(Generative Stochastic Networks), denoising autoencoder 기반 모델, variational autoencoder(VAE) 같은 backpropagation 기반의 생성 모델도 등장했지만, 이들 역시 Markov chain을 필요로 하거나 또는 근사 추론이 필수라는 한계를 지닌다. 이와 대비해 GAN의 Adversarial nets 프레임워크는 샘플을 직접 생성할 수 있고, 학습 과정에서도 전혀 MCMC를 요구하지 않으며, 추론 절차 없이도 backprop만으로 모델을 훈련할 수 있다는 점에서 기존 접근과 다르다.
3. Adversarial nets
이 섹션에서는 GAN의 핵심 구조인 적대적 학습 프레임워크를 수학적으로 정의한다. 생성기는 잠재변수 $z∼p_{z}(z)$ 를 입력받아 데이터 공간으로 매핑하는 함수 $G(z;θ_{g})$ 로 정의되고, 판별기는 입력 x가 실제 데이터에서 왔는지 생성된 데이터에서 왔는지를 나타내는 확률 $D(x;θ_{d})$ 를 출력하는 함수로 정의된다. GAN의 학습은 생성기 G와 판별기 D가 참여하는 미니맥스 게임으로 구성된다:

판별기(D)는 실제 데이터와 생성 데이터를 잘 구분하도록 V(D,G)를 최대화하고, 반대로 생성기(G)는 판별기가 오류를 내도록 V(D,G)를 최소화한다. 실제 학습에서는 판별기를 완전히 최적화하는 것이 비현실적이므로, 실험적으로는 판별기 업데이트 k회와 생성기 업데이트 1회를 번갈아 수행하는 SGD 기반 알고리즘(Algorithm 1)을 사용한다.
또한 학습 초기에 $log(1−D(G(z)))$ 항이 gradient가 거의 사라지는 문제를 피하기 위해, 생성기는 동일한 값을 가지면서 더 강한 gradient를 제공하는 $max_{G} logD(G(z))$ 형태의 대체 손실을 사용하기도 한다.
4. Theoretical Results
Algorithm 1은 GAN의 생성기(G)와 판별기(D)를 번갈아 학습시키는 절차를 미니배치 확률적 경사하강법(SGD) 형태로 제시한다.
핵심 아이디어는 다음과 같다.

- 판별기 D를 먼저 여러 번(k회) 업데이트
- 실제 데이터 미니배치와 생성기 G가 만든 가짜 샘플 미니배치를 사용해 두 데이터를 구별하도록 판별기의 파라미터를 최대화 방향으로 학습한다.
- 생성기 G는 한 번 업데이트
- 노이즈 $z∼p_{z}$ 를 입력해 G가 샘플을 만든 뒤, D가 이 샘플을 진짜라고 판단하도록 G의 파라미터를 경사하강 방식으로 업데이트한다.
- 이 과정을 반복하여 두 네트워크가 경쟁적으로 개선됨
- D는 분류기를 잘하도록 향상되고, G는 D를 속이는 가짜 샘플을 더 잘 생성하도록 향상된다.
4.1. Global Optimality of $p_{g} = p_{data}$
임의의 실수 쌍 $(a,b)∈R2∖{(0,0)}$에 대해 아래 함수 $f(y)=alogy+blog(1−y)$ 는 y∈[0,1] 범위에서 $y = a/a+b$ 일 때 최대가 된다는 것은 잘 알려진 사실이다. 즉 생성기 G를 고정했을 때, 판별기 D를 최적화하면 다음 형태의 최적 판별기를 얻는다:

다음으로, 이 판별기 목적함수는 사실상 입력 x가 실제 데이터에서 왔는지(=1), 생성기에서 왔는지(=0)를 맞히는 이항 분류기의 로그우도를 최대화하는 것과 같다는 점을 알 수 있다. 이 해석을 통해 GAN의 미니맥스 게임(Eq. 1)은 아래처럼 최적 판별기 $D∗_{G}$를 사용한 형태로 다시 표현할 수 있다.

Proof. $p_{g} = p_{data}$라고 가정하면, 최적 판별기DG∗는DG∗(x)=1/2가 된다(Eq. 2 참고). 따라서 Eq. 4에 DG∗(x)=1/2를 대입하면 C(G)=log1/2+log1/2=−log4로 이 경우 C(G)는 −log4가 된다. 이 값이 C(G)가 도달할 수 있는 최솟값이며 오직 $p_{g} = p_{data}$일 때만 이루어진다는 것을 보이기 위해 다음 식을 살펴보자:

그리고 이 식을 C(G)=V(DG∗,G)에서 빼주면 다음을 얻는다:

여기서 KL은 Kullback–Leibler divergence로, 두 확률분포가 얼마나 다른지 측정하는 비대칭적인 거리 척도다. 위 두 KL 항의 합은 모델 분포 $p_{g}$와 실제 분포 $p_{data}$ 사이의 Jensen–Shannon divergence(JSD)와 동일하다:
$C(G)=−log4+2⋅JSD(p_{data} ∥ p_{g})$
여기서 JSD는 두 분포가 동일할 때만 0이 된다. 따라서 GAN의 전역 최적해는 $p_{g} = p_{data}$이며, 이때 C(G)의 최소값은 −log4이다. 즉 이론적 최적점에서 생성 모델은 실제 데이터 생성 과정을 완벽히 모방하게 된다.
*두 KL을 평균낸 것이 JSD다.
4.2. Convergence of Algorithm 1
이 절에서는 실제 학습 알고리즘이 위의 이론적 목적을 달성할 수 있는지 다룬다. 생성기와 판별기가 무한한 표현력(capacity)을 가진다고 가정하면, 매 스텝마다 판별기를 최적으로 학습시키고 생성기가 C(G)를 감소시키는 방향으로 충분히 작은 업데이트를 수행한다면, 생성 분포 $p_{g}$는 이론적으로 $p_{data}$로 수렴한다.

Proof. V(G,D)를 앞에서 정의한 기준에 따라 $p_{g}$에 대한 함수 $U(p_{g},D)$ 로 생각하자. 이때 $U(p_{g},D)$ 는 $p_{g}$에 대해 볼록한 함수이다. 볼록 함수들의 상한을 취한 함수의 부분미분 집합에는, 그 상한이 실제로 달성되는 점에서의 원래 함수의 도함수가 포함된다. 만약 $f(x)={sup}_{α∈A}f_{α}(x)$ 이고 모든 $f_{α}(x)$ 가 x에 대해 볼록하다면 $β=arg{sup}_{α∈A}f_{α}(x)$ 일 때, fβ(x)의 도함수는 f의 부분미분 집합에 포함된다. 이는 곧 주어진 생성기 G에 대해 최적 판별기 D를 사용하여 $p_{g}$에 대해 경사 하강 업데이트를 수행하는 것과 동일함을 의미한다. 그리고 앞의 정리(Theorem 1)에서 보았듯 ${sup}_{D}U(p_{g},D)$ 는 $p_{g}$에 대해 볼록이고 전역 최적값이 유일하므로, 를 충분히 작은 스텝으로 업데이트한다면 $p_{g}$⟶$p_{data}$로 수렴한다.
물론 실제 신경망은 한정된 용량을 가지므로 이론적 보장이 실제 훈련의 안정성을 의미하지는 않지만, GAN이 “올바른 방향의 목적함수”를 갖고 있다는 점을 수학적으로 보여주는 핵심 섹션이다.
5. Experiments
GAN은 MNIST, TFD, CIFAR-10 등 다양한 데이터셋에서 실험되었다. 생성기(G)는 ReLU 계열의 비선형 함수와 sigmoid를 혼합해 구성되었고, 판별기(D)는 maxout과 dropout을 사용하여 표현력을 강화하였다. 생성 과정에서는 오직 입력 노이즈만 사용하고, 중간층에 별도의 노이즈를 추가하는 방식은 사용하지 않았다. 모델의 정량적 평가는 기존 생성 모델들이 사용한 방법과 동일하게, Parzen window 기반 log-likelihood 추정을 이용하여 수행되었다.
*maxout: 여러 개의 선형 변환 중 가장 큰 값을 선택해 출력하는 활성화 함수로, ReLU보다 표현력이 높고 gradient 흐름이 안정적이다.
*Parzen window 기반 log-likelihood 추정: GAN이 만든 샘플 위에 가우시안 커널을 깔아 확률분포를 근사한 뒤, 테스트 데이터의 log-likelihood를 계산하는 평가 방식. GAN은 확률밀도를 직접 계산할 수 없어 사용함
이는 G에서 샘플을 다량 생성한 뒤, 그 샘플에 Gaussian Parzen window를 적합시키고 테스트 데이터의 평균 로그우도를 계산하는 방식이다. MNIST와 TFD에서 GAN은 기존 RBM/GSN/CAE 등 여러 모델과 비교해 동등하거나 더 높은 수준의 로그우도 성능을 보였다.

시각적 평가에서는 다양한 데이터셋에서 생성된 샘플을 제시하였으며, 특히 MNIST와 얼굴 데이터에서는 실제 데이터와 유사한 고품질의 비정규화 샘플을 보여주었다. 또한 z공간에서의 선형 보간 결과가 자연스럽게 연결된 이미지를 생성하는 점도 확인되었다. GAN은 샘플링 시 MCMC가 필요 없으므로, 생성된 이미지들이 서로 독립적이며 Markov chain 기반 모델들에서 흔히 나타나는 샘플 간 상관이 없다는 특징도 함께 제시되었다.
6. Advantages and disadvantages
GAN의 주요 단점은 생성 분포 $p_{g}$를 명시적으로 표현하지 않는다는 점과 학습 과정에서 생성기(G)와 판별기(D)를 적절히 동기화해야 한다는 점이다. D가 너무 강하거나 G가 너무 많이 업데이트되면 생성기가 다양한 샘플을 만들지 못하고 특정 출력으로 붕괴되는 collapse(일명 Helvetica scenario) 문제가 발생할 수 있다.
반면 GAN의 장점은 매우 뚜렷하다. 샘플 생성에 Markov chain이 필요 없기 때문에 샘플 간 상관이 없고, 학습과 추론 과정 모두에 backpropagation만 사용 가능해 계산적으로 단순하며 효율적이다. 또한 모델 구조에 제약이 거의 없어서 임의의 differentiable 함수를 generator나 discriminator로 사용할 수 있다. 샘플링을 위해 distribution을 부드럽게 만들 필요도 없어 매우 sharp하고 복잡한 분포도 표현할 수 있다.
7. Conclusions and future work
GAN은 적대적 학습을 기반으로 한 새로운 생성 모델 프레임워크로, MCMC나 복잡한 추론 없이 backpropagation만으로 고품질의 샘플을 생성할 수 있음을 보였다. 실험 결과 이 접근이 다양하고 복잡한 데이터 분포를 학습할 수 있으며 기존 생성 모델들과 경쟁력 있는 성능을 낼 수 있음을 확인했다.
향후 확장 방향으로는 조건부 생성 모델(conditional GAN), 입력에서 잠재변수를 추정하는 보조 추론 네트워크, 부분적 관측을 기반으로 한 조건부 확률 모델링, 소량의 라벨을 활용한 반지도 학습, 그리고 G와 D의 학습을 더 효율적으로 조정하는 방법 등이 제안된다. 이러한 확장은 GAN 프레임워크의 활용 범위를 크게 넓힐 것으로 기대된다.
'ML&DL > 논문리뷰' 카테고리의 다른 글
| CycleGAN: Unpaired Image-to-Image Translationusing Cycle-Consistent Adversarial Networks (0) | 2025.11.19 |
|---|---|
| R-CNN: Regions with CNNfeatures (0) | 2025.11.18 |
| EfficientNet (0) | 2025.11.13 |
| ResNet (0) | 2025.11.11 |
| BLIP (0) | 2025.11.03 |