변이형 오토인코더 (VAE)
1. 개요
1. 개요
변이형 오토인코더(Variational Autoencoder, VAE)는 딥러닝 기반의 생성 모델 중 하나이다. 2013년 디디에리크 레흐트(Diederik P. Kingma)와 맥스 웰링(Max Welling)에 의해 제안된 이 모델은 확률적 추론과 신경망을 결합하여 데이터의 잠재적인 확률 분포를 학습한다.
이 모델의 핵심 목표는 입력 데이터를 저차원의 잠재 공간(latent space)으로 압축한 후, 그 공간에서 새로운 데이터를 생성하는 것이다. 이를 위해 오토인코더의 구조를 차용하지만, 결정론적인 방식이 아닌 확률론적 방식을 도입했다는 점에서 차별화된다. 인코더는 입력을 특정 확률 분포(보통 정규 분포)의 매개변수로 매핑하고, 디코더는 이 분포에서 샘플링된 잠재 변수를 원본 차원으로 재구성한다.
VAE는 생성 모델로서 이미지 생성, 음성 합성, 텍스트 생성 등 다양한 분야에 응용된다. 또한 학습된 잠재 공간을 활용한 데이터 증강이나 이상 탐지와 같은 작업에도 효과적으로 사용된다. 그 구조적 특성으로 인해 생성적 적대 신경망(GAN)과 함께 현대 생성형 AI의 중요한 기반 기술 중 하나로 평가받는다.
2. 기본 원리
2. 기본 원리
변이형 오토인코더의 기본 원리는 확률론적 접근을 통해 데이터의 잠재적 표현을 학습하는 것이다. 핵심 아이디어는 입력 데이터를 잠재 공간 상의 확률 분포로 매핑한 후, 그 분포로부터 샘플링하여 원본 데이터를 재구성하는 것이다. 이는 전통적인 오토인코더가 결정론적으로 하나의 잠재 벡터를 생성하는 것과 근본적으로 다르다.
VAE는 잠재 변수 z를 확률 변수로 모델링한다. 인코더는 입력 x가 주어졌을 때 잠재 변수의 사후 확률 분포 p(z|x)를 근사하는 인공신경망 q_φ(z|x)를 학습한다. 일반적으로 이 분포는 다변량 정규분포로 가정되며, 인코더 네트워크는 이 분포의 평균(μ)과 분산(σ²)을 출력한다. 디코더는 잠재 변수 z가 주어졌을 때 데이터 x의 우도 p_θ(x|z)를 모델링하는 네트워크를 학습하여 새로운 데이터를 생성한다.
이 모델의 학습 목표는 증거 하한을 최대화하는 것이다. ELBO는 다음과 같이 정의된다.
ELBO(θ, φ; x) = E_{z∼q_φ(z|x)}[log p_θ(x|z)] - D_{KL}(q_φ(z|x) || p(z))
여기서 첫 번째 항은 재구성 손실로, 샘플링된 잠재 변수로부터 원본 데이터를 얼마나 잘 복원하는지를 측정한다. 두 번째 항은 쿨백-라이블러 발산으로, 인코더가 출력한 사후 분포 q_φ(z|x)와 사전에 가정한 잠재 변수의 사전 확률 분포 p(z)(보통 표준 정규분포) 사이의 차이를 정규화한다. 이 정규화 항은 잠재 공간이 구조화되고 연속적이며 해석 가능한 특성을 갖도록 유도하는 핵심 역할을 한다.
2.1. 오토인코더와의 차이점
2.1. 오토인코더와의 차이점
오토인코더는 입력 데이터를 잠재 공간의 저차원 표현으로 압축한 후, 이를 재구성하는 것을 목표로 하는 신경망 구조이다. 학습의 핵심 목표는 입력과 재구성된 출력 간의 차이, 즉 재구성 손실을 최소화하는 것이다. 이 과정에서 인코더는 데이터를 압축된 표현(코드)으로, 디코더는 이 코드를 다시 원본에 가깝게 복원하는 방법을 학습한다.
반면, 변이형 오토인코더는 확률론적 접근을 도입하여 근본적인 차이를 보인다. VAE의 인코더는 단일한 고정값이 아닌, 잠재 변수의 확률 분포(보통 가우시안 분포)의 평균과 분산을 출력한다. 이는 동일한 입력이라도 매번 약간 다른 잠재 벡터를 샘플링할 수 있게 하여, 잠재 공간에 연속성과 구조를 부여한다.
결과적으로, 표준 오토인코더의 잠재 공간은 불규칙적이고 해석하기 어려운 경우가 많지만, VAE는 학습 과정에 쿨백-라이블러 발산 항을 추가하여 잠재 변수의 분포가 사전에 정의한 간단한 분포(예: 표준 정규분포)에 가깝도록 규제한다. 이로 인해 VAE의 잠재 공간은 더 잘 조직화되어 있으며, 공간 내의 보간을 통한 새로운 데이터 생성이 가능해진다.
요약하면, 표준 오토인코더가 효율적인 압축과 재구성에 초점을 맞춘다면, VAE는 규제된 잠재 공간을 학습하여 데이터의 확률적 생성 모델로 기능하는 것을 목표로 한다. 이는 VAE를 단순한 차원 축소 도구를 넘어 생성 모델의 범주에 위치시키는 핵심 차별점이다.
2.2. 잠재 공간과 확률 분포
2.2. 잠재 공간과 확률 분포
변이형 오토인코더의 핵심 아이디어는 잠재 공간을 고정된 점들의 집합이 아닌 확률 분포로 모델링하는 것이다. 전통적인 오토인코더의 인코더는 입력 데이터를 잠재 공간의 하나의 특정 좌표(점)로 압축한다. 반면, VAE의 인코더는 입력 데이터를 바탕으로 잠재 변수 z의 확률 분포의 매개변수(예: 정규분포의 평균 μ와 분산 σ²)를 출력한다. 이는 동일한 입력이라도 매번 약간 다른 잠재 벡터가 샘플링될 수 있음을 의미하며, 이 불확실성의 모델링이 생성 능력의 근간이 된다.
일반적으로 이 분포는 다변량 정규분포로 가정되며, 인코더 네트워크는 각 잠재 변수 차원에 대한 평균 벡터 μ와 분산 벡터 σ²를 예측한다. 이후 이 분포로부터 무작위 샘플링을 통해 하나의 잠재 벡터 z를 얻고, 이를 디코더에 입력하여 원본 데이터를 재구성하거나 새로운 데이터를 생성한다. 잠재 공간이 확률 분포로 정의됨에 따라, 공간 내에서의 보간이 매끄럽고 연속적인 특성을 가지게 되어, 두 데이터 포인트 사이를 잠재 공간에서 선형적으로 이동할 때 디코더가 의미 있는 중간 형태의 데이터를 생성할 가능성이 높아진다.
이러한 접근법의 중요한 배경에는 잠재 변수 모델과 베이즈 추론이 있다. VAE는 관찰된 데이터 x가 어떤 알려지지 않은 잠재 변수 z에서 생성되었다고 가정하는 생성 모델이다. 목표는 데이터의 실제 분포 p(x)를 근사하는 것이며, 이를 위해 p(x) = ∫ p(x|z)p(z) dz 라는 주변 우도를 최대화하려 한다. 그러나 이 적분 계산은 일반적으로 다루기 힘들기 때문에, VAE는 실제 사후 분포 p(z|x)를 다루기 쉬운 분포(예: 정규분포) q(z|x)로 근사하는 변분 추론을 사용한다. 인코더가 바로 이 근사 분포 q(z|x)를 출력하는 네트워크이다.
2.3. ELBO 손실 함수
2.3. ELBO 손실 함수
변이형 오토인코더의 학습 목표는 관찰된 데이터의 주변 우도를 최대화하는 것이지만, 이는 직접 계산하기 어렵거나 불가능한 경우가 많다. 이를 해결하기 위해 VAE는 변분 추론을 활용하여 주변 우도의 하한, 즉 증거 하한을 최대화하는 방향으로 모델을 학습한다.
ELBO는 다음과 같은 두 개의 항으로 분해될 수 있다.
항 | 설명 | 역할 |
|---|---|---|
재구성 항 | 입력 데이터를 잠재 변수를 통해 다시 복원하는 정확도 | 디코더의 성능을 측정 |
인코더가 출력하는 잠재 변수의 분포와 사전 분포 간의 차이 | 잠재 공간의 규제 및 정규화 |
재구성 항은 주로 이진 교차 엔트로피나 평균 제곱 오차와 같은 손실 함수로 계산되며, 디코더가 입력을 얼마나 잘 재구성하는지를 평가한다. KLD 항은 인코더가 출력하는 잠재 변수의 분포(예: 가우시안 분포)가 설정한 사전 분포(보통 표준 정규 분포)에 가깝도록 유도하는 규제 항 역할을 한다. 이 두 항은 서로 상충 관계에 있어, 학습 과정에서 적절한 균형을 찾는 것이 중요하다.
ELBO를 최대화함으로써 모델은 효율적인 잠재 표현을 학습하면서도, 그 표현이 잘 정규화된 연속적인 공간을 이루도록 한다. 이는 VAE가 생성 모델로서 의미 있는 새로운 데이터를 샘플링할 수 있는 기반이 된다.
3. 핵심 구성 요소
3. 핵심 구성 요소
변형 오토인코더의 핵심 구성 요소는 인코더 네트워크, 잠재 변수 샘플링 과정, 그리고 디코더 네트워크로 이루어진다. 이 세 요소는 모델이 입력 데이터의 확률 분포를 학습하고, 그로부터 새로운 데이터를 생성하는 기능을 수행하는 기반이 된다.
인코더 네트워크는 입력 데이터 x(예: 이미지 픽셀)를 받아 이를 잠재 공간의 파라미터로 변환한다. 일반적인 오토인코더가 입력을 고정된 잠재 벡터로 압축하는 반면, VAE의 인코더는 잠재 변수 z의 확률 분포를 정의한다. 주로 이 분포는 정규 분포로 가정되며, 인코더는 각 입력에 대해 해당 분포의 평균 벡터 μ와 분산 벡터 σ² (또는 로그 분산)를 출력한다[1]. 이는 입력 데이터의 불확실성을 잠재 공간에서 확률적으로 표현하는 핵심 메커니즘이다.
잠재 변수 샘플링은 인코더가 예측한 확률 분포에서 실제 잠재 벡터 z를 추출하는 단계이다. 평균 μ와 분산 σ²을 알면 z = μ + σ ⊙ ε 와 같은 재매개변수화 트릭을 통해 샘플링을 수행한다. 여기서 ε는 표준 정규 분포에서 추출된 노이즈 벡터이며, ⊙는 원소별 곱셈을 의미한다. 이 트릭은 확률적 샘플링 과정이 역전파를 통한 경사 하강법 학습이 가능하도록 만들어준다. 샘플링된 z는 입력 데이터의 압축된 확률적 표현이 된다.
디코더 네트워크는 샘플링된 잠재 벡터 z를 받아 원본 데이터 공간으로 재구성한다. 디코더는 주어진 z에 대해 원본 데이터 x의 조건부 분포 p(x|z) 를 모델링한다. 예를 들어, 이미지 생성의 경우 이 분포는 각 픽셀 값의 베르누이 분포나 정규 분포로 설정될 수 있다. 디코더의 최종 출력은 재구성된 데이터 x' 이다. 인코더와 디코더는 대체로 심층 신경망으로 구현되며, 이 세 구성 요소가 함께 작동하여 VAE는 데이터의 의미 있는 잠재 표현을 학습하고 그로부터 새로운 샘플을 생성할 수 있게 된다.
3.1. 인코더 네트워크
3.1. 인코더 네트워크
인코더 네트워크는 변이형 오토인코더의 첫 번째 핵심 구성 요소로, 입력 데이터를 잠재 공간의 확률 분포로 변환하는 역할을 한다. 입력 데이터 x(예: 이미지)가 주어지면, 인코더는 이를 분석하여 잠재 변수 z의 분포를 결정하는 파라미터를 출력한다. 일반적으로 이 분포는 다변량 정규분포로 가정되며, 인코더는 평균 벡터 μ와 분산 벡터 σ²(또는 로그 분산 log σ²)를 예측한다[2].
인코더는 주로 합성곱 신경망 또는 다층 퍼셉트론과 같은 심층 신경망으로 구성된다. 예를 들어 이미지 데이터를 처리할 때는 여러 개의 합성곱층과 풀링층을 쌓아 점차적으로 입력의 공간적 차원을 줄이면서 의미 있는 특징을 추출한다. 네트워크의 최종 층은 두 개의 병렬 출력층을 가지며, 하나는 잠재 변수의 평균 μ를, 다른 하나는 분산 σ²을 담당한다. 이렇게 출력된 분포 q_φ(z|x)는 입력 데이터가 주어졌을 때 잠재 변수의 사후 분포를 근사한다.
인코더의 주요 목표는 입력 데이터의 복잡한 구조를 저차원의 잠재 공간에서 잘 표현할 수 있는 확률 분포로 압축하는 것이다. 이 과정에서 인코더는 데이터의 핵심적인 특징(예: 이미지에서의 형태, 질감, 방향)을 포착하도록 학습된다. 인코더가 출력하는 분산 σ²은 모델의 불확실성을 나타내며, 각 잠재 변수 차원이 입력 데이터를 설명하는 데 얼마나 '유연한지'를 결정한다.
3.2. 잠재 변수 샘플링
3.2. 잠재 변수 샘플링
잠재 변수 샘플링은 변이형 오토인코더의 핵심 메커니즘으로, 인코더 네트워크가 출력한 분포의 매개변수로부터 실제 잠재 벡터를 생성하는 과정이다. 인코더는 입력 데이터를 분석하여 잠재 공간 상의 확률 분포, 일반적으로 가우시안 분포의 평균(μ)과 분산(σ²)을 출력한다. 그러나 이 분포에서 직접 샘플을 추출하는 연산은 미분이 불가능하여 역전파를 통한 학습이 불가능하다는 문제가 있다.
이 문제를 해결하기 위해 VAE는 재매개변수화 트릭을 사용한다. 구체적인 과정은 다음과 같다. 먼저, 표준 정규 분포에서 독립적인 노이즈 벡터 ε을 샘플링한다. 그런 다음, 인코더가 출력한 평균 μ와 분산 σ²을 이용해 잠재 변수 z를 z = μ + σ ⊙ ε 공식으로 계산한다. 여기서 ⊙는 요소별 곱셈을 의미한다. 이 트릭 덕분에 샘플링의 확률적 과정은 역전파 경로에서 제외되고, μ와 σ만이 그래디언트를 흘려받을 수 있게 되어 전체 모델의 확률적 경사 하강법 학습이 가능해진다.
이 샘플링 과정은 VAE가 결정론적인 오토인코더와 구분되는 생성 모델로서의 특성을 부여한다. 동일한 입력에 대해서도 매번 다른 ε이 샘플링되므로, 인코더는 동일한 입력에 대해 약간 다른 잠재 벡터를 출력하게 된다. 이는 모델이 데이터의 근본적인 변동성을 학습하고, 학습된 잠재 공간 분포에서 새로운 샘플을 뽑아 디코더 네트워크를 통해 새로운 데이터를 생성할 수 있는 기반이 된다.
3.3. 디코더 네트워크
3.3. 디코더 네트워크
디코더 네트워크는 잠재 공간에서 샘플링된 잠재 변수 z를 입력으로 받아, 원본 데이터 공간으로 재구성하는 신경망이다. 인코더가 데이터를 압축하고 확률 분포를 학습하는 역할을 한다면, 디코더는 이 분포에서 무작위로 추출된 잠재 코드를 바탕으로 새로운 데이터 인스턴스를 생성하는 생성기 역할을 수행한다. 디코더는 일반적으로 인코더 네트워크와 대칭적인 구조를 가지며, 전결합층이나 합성곱 신경망의 전치 합성곱 레이어로 구성된다.
디코더의 수학적 표현은 조건부 확률 분포 p_θ(x|z)로 정의된다. 여기서 θ는 디코더 네트워크의 학습 가능한 매개변수를 나타낸다. 이 분포는 주어진 잠재 변수 z에 대해 원본 데이터 x가 생성될 확률을 모델링한다. 일반적으로 이산 분포나 연속 분포를 가정하며, 이미지 생성의 경우 각 픽셀 값을 베르누이 분포나 가우시안 분포의 출력으로 처리한다. 디코더의 최종 목표는 학습 데이터의 분포 p(x)를 근사하는 것이다.
학습 과정에서 디코더는 ELBO 손실 함수의 재구성 손실 항을 통해 최적화된다. 이는 생성된 샘플과 원본 입력 데이터 간의 차이를 계산한다. 손실 함수의 선택은 데이터 유형에 따라 달라지며, 이진 데이터에는 이진 교차 엔트로피, 연속값 데이터에는 평균 제곱 오차가 흔히 사용된다. 디코더가 정확하게 데이터를 재구성할수록, 잠재 공간의 표현은 더 의미 있고 구조화되게 된다.
4. 주요 변형 및 발전
4. 주요 변형 및 발전
변이형 오토인코더의 기본 구조는 다양한 연구를 통해 여러 방향으로 확장되고 발전되었다. 주요 변형 모델들은 생성의 제어성, 잠재 공간의 해석 가능성, 또는 데이터 표현의 효율성을 개선하는 데 초점을 맞추었다.
가장 대표적인 변형 중 하나는 Conditional VAE (CVAE)이다. 이 모델은 생성 과정에 조건 정보를 추가한다. 예를 들어, 생성하려는 이미지의 클래스 레이블이나 텍스트 설명과 같은 조건 변수 *c*를 인코더와 디코더의 입력에 함께 제공한다[3]. 이를 통해 특정 클래스의 데이터를 목표로 생성하거나, 원하는 속성을 가진 샘플을 조절하여 생성할 수 있게 된다. CVAE는 지도 학습 설정에서 데이터의 조건부 분포를 모델링하는 데 유용하게 적용된다.
잠재 공간의 해석 가능성과 분리 학습을 강조하는 모델로는 β-VAE가 있다. 이 모델은 ELBO 손실 함수에 추가적인 제약을 도입한다. 기본 VAE의 손실 함수에 포함된 쿨백-라이블러 발산 항에 가중치 β(>1)를 곱하여 잠재 변수의 사후 분포가 사전 분포(보통 표준 정규분포)에 더 가깝도록 강제한다. 이는 다음과 같은 효과를 가져온다.
β 값의 영향 | 결과 |
|---|---|
β = 1 | 기본 VAE와 동일 |
β > 1 | 더 강한 규제, 더 독립적이고 해석 가능한 잠재 변수 학습[4] |
β < 1 | 규제 완화, 더 정확한 재구성, 잠재 변수 간 상관관계 증가 |
높은 β 값은 잠재 변수의 각 차원이 데이터의 단일하고 독립적인 생성 요인(예: 크기, 각도, 색상)을 포착하도록 유도하여, 해석 가능한 AI 연구에 기여한다.
데이터를 이산적인 잠재 표현으로 학습하는 접근법으로는 VQ-VAE (Vector Quantised-VAE)가 있다. 이 모델은 연속적인 잠재 공간 대신 이산적인 코드북을 사용한다. 인코더의 출력은 미리 정의된 크기의 코드북에서 가장 가까운 임베딩 벡터로 양자화된다. 디코더는 이 양자화된 벡터를 입력으로 받아 데이터를 재구성한다. 이 이산적 표현은 자연어 처리의 토큰화와 유사하며, 생성형 AI 모델, 특히 대규모 언어 모델과 결합하여 고품질의 음성 또는 이미지를 생성하는 데 효과적으로 활용된다[5].
4.1. Conditional VAE (CVAE)
4.1. Conditional VAE (CVAE)
Conditional VAE는 변이형 오토인코더의 조건부 생성 버전이다. 기존 VAE가 무작위 잠재 변수로부터 데이터를 생성하는 반면, CVAE는 특정 조건 정보를 추가하여 그 조건에 맞는 데이터를 생성하도록 설계되었다. 예를 들어, 숫자 레이블이 주어지면 해당 숫자의 이미지를 생성하거나, 텍스트 설명이 주어지면 그에 맞는 얼굴 이미지를 합성하는 데 사용될 수 있다. 이는 생성 과정을 보다 세밀하게 통제할 수 있게 해준다.
CVAE의 구조는 기본 VAE와 유사하지만, 인코더와 디코더 모두에 조건 정보가 추가 입력된다. 인코더는 원본 데이터와 조건 정보를 함께 받아 조건부 잠재 변수의 분포를 추정한다. 디코더는 샘플링된 잠재 변수와 조건 정보를 함께 받아 조건에 부합하는 데이터를 재구성하거나 생성한다. 이로 인해 모델은 잠재 공간 내에서도 조건에 따라 구분된 영역을 학습하게 된다.
CVAE의 손실 함수는 조건부 버전의 ELBO 손실 함수를 사용한다. 이는 데이터의 조건부 로그 우도를 최대화하는 하한을 제공하며, 재구성 손실과 조건부 잠재 분포와 사전 분포 사이의 쿨백-라이블러 발산으로 구성된다. 수식적으로는 기존 ELBO에 조건 변수가 포함된 형태를 가진다.
CVAE의 주요 응용 분야는 다음과 같다.
응용 분야 | 설명 |
|---|---|
조건부 이미지 생성 | 특정 클래스(예: '고양이', '자동차')나 속성(예: '금발', '미소')을 조건으로 한 이미지 생성 |
이미지-이미지 변환 | 한 도메인의 이미지(예: 낮 시간대 사진)를 다른 도메인(예: 밤 시간대 사진)으로 조건부 변환 |
대화형 생성 | 사용자의 텍스트나 스케치 입력을 조건으로 하여 세부적인 콘텐츠를 생성 |
이 모델은 생성의 다양성을 유지하면서도 생성 결과의 특정 속성을 명시적으로 제어할 수 있다는 점에서 강력한 도구이다. 그러나 조건 정보의 품질과 표현력이 최종 생성 결과의 정확도와 밀접하게 연관된다는 한계점도 지닌다.
4.2. β-VAE
4.2. β-VAE
β-VAE는 변이형 오토인코더의 목적 함수에 KL 발산 항에 가중치 β를 부여하여 잠재 공간의 표현 학습 능력을 강화한 변형 모델이다. 이는 2017년 Higgins 등에 의해 제안되었으며, 표현 학습과 해석 가능성을 향상시키는 것을 주요 목표로 한다. 기존 VAE의 목적 함수인 ELBO는 재구성 손실과 잠재 변수의 사전 분포에 대한 KL 발산 항의 합으로 이루어져 있다. β-VAE는 이 KL 발산 항에 β > 1인 계수를 곱하여, 인코더가 학습 데이터의 근본적인 생성 요인에 더 독립적이고 해석 가능한 표현을 학습하도록 유도한다.
β 값은 모델의 동작을 결정하는 핵심 하이퍼파라미터이다. β=1일 경우 기존 VAE와 동일하다. β > 1로 설정하면 모델은 재구성 정확도보다 잠재 공간의 정규화와 요인 분리를 더 강하게 장려한다. 이로 인해 학습된 잠재 변수의 각 차원이 데이터의 단일 생성 요인(예: 객체의 크기, 회전 각도, 색상)에 더 민감하게 반응하면서 다른 요인에는 상대적으로 무관해지는 현상이 나타난다. 반대로 β < 1로 설정하면 재구성 성능을 더 우선시하게 되어, 잠재 공간의 구조는 다소 희생될 수 있다.
β-VAE의 주요 장점은 해석 가능하고 분리된 잠재 표현을 학습한다는 점이다. 이는 생성된 샘플의 의미론적 속성을 체계적으로 조작하는 데 유용하게 활용된다. 예를 들어, 얼굴 이미지 데이터셋으로 학습된 β-VAE 모델에서 특정 잠재 변수 차원을 변화시키면, 생성된 얼굴의 표정이나 머리 색깔만을 독립적으로 변경할 수 있다. 그러나 β 값을 지나치게 크게 설정하면 재구성 품질이 현저히 저하되는 trade-off가 존재한다. 이 한계를 보완하기 위해 학습 중에 β 값을 점진적으로 증가시키는 방법이나, 재구성 손실과 KL 발산 항의 균형을 더 정교하게 조절하는 후속 연구들이 이루어졌다.
4.3. VQ-VAE
4.3. VQ-VAE
VQ-VAE(Vector Quantised-Variational AutoEncoder)는 연속적인 잠재 공간을 사용하는 기존 변이형 오토인코더와 달리, 이산화된(discrete) 잠재 표현을 학습하는 생성 모델이다. 이 방법은 2017년 DeepMind 연구팀에 의해 제안되었으며, 오디오, 이미지, 비디오 생성 분야에서 특히 효과를 보인다.
VQ-VAE의 핵심은 인코더가 출력한 연속적인 잠재 벡터를 미리 정의된 코드북(codebook) 내의 가장 가까운 임베딩 벡터로 대체하는 벡터 양자화 과정에 있다. 코드북은 학습 가능한 임베딩 벡터들의 모음으로, 인코더의 출력은 이 중 가장 유사한 벡터의 인덱스(정수)로 매핑된다. 디코더는 이 이산화된 인덱스 시퀀스를 다시 코드북을 통해 임베딩 벡터로 복원하여 원본 데이터를 재구성한다. 이 과정은 연속 공간에서의 샘플링 불가능 문제를 회피하고, 이산적인 표현의 장점을 활용할 수 있게 한다.
학습은 재구성 손실과 코드북 벡터를 업데이트하기 위한 손실로 이루어진다. 주요 손실 함수는 다음과 같은 세 가지 구성 요소를 포함한다.
손실 구성 요소 | 설명 |
|---|---|
재구성 손실 | 디코더 출력과 원본 입력 간의 오차(예: MSE) |
코드북 손실 | 인코더 출력을 코드북 벡터로 끌어당기는 역할 |
커밋 손실 | 인코더 출력이 코드북 벡터 주변에 모이도록 유도 |
VQ-VAE의 이산적 잠재 표현은 이후 자회귀 모델(예: PixelCNN, Transformer)을 사용한 강력한 사전 확률 모델링을 가능하게 한다. 인코더가 압축한 이산 코드 시퀀스에 대해 자회고 모델을 학습시켜 새로운 시퀀스를 생성하면, 이를 VQ-VAE의 디코더에 통과시켜 고품질의 이미지나 오디오를 생성할 수 있다. 이 접근법은 VQ-VAE-2와 같은 후속 모델에서 고해상도 이미지 생성에 성공적으로 적용되었다.
5. 학습 과정
5. 학습 과정
학습 과정은 변분 추론을 통해 잠재 변수의 사후 분포를 근사하고, 재매개변수화 트릭을 활용하여 역전파가 가능하도록 하는 것이 핵심이다. 모델은 인코더가 입력 데이터를 받아 잠재 변수의 평균과 분산을 출력하고, 이 통계량을 바탕으로 정규 분포에서 잠재 벡터를 샘플링한다. 샘플링된 벡터는 디코더를 통해 원본 데이터를 재구성하도록 학습된다.
손실 함수는 증거 하한(ELBO)을 최대화하는 형태로 구성된다. ELBO는 재구성 손실과 쿨백-라이블러 발산(KL Divergence)의 합으로 이루어지며, 이를 최소화하는 방향으로 학습이 진행된다. 재구성 손실은 디코더 출력과 원본 입력의 차이를 측정하여 데이터를 잘 복원하도록 유도한다. KL 발산 항은 인코더가 출력하는 잠재 변수의 분포가 사전 분포(일반적으로 표준 정규 분포)에서 너무 멀어지지 않도록 규제하는 역할을 한다.
학습 단계 | 설명 | 목적 |
|---|---|---|
순전파 | 입력 데이터 → 인코더 → (μ, σ) → 재매개변수화(ε ∼ N(0,1), z = μ + σ ⊙ ε) → 디코더 → 출력 | 잠재 벡터 샘플링 및 데이터 재구성 |
손실 계산 | L = 재구성 손실(MSE 또는 BCE) + β * KL(N(μ, σ²) \ | \ |
역전파 및 최적화 | 계산된 손실에 대해 역전파를 수행하고, 확률적 경사 하강법(SGD) 또는 Adam 옵티마이저로 매개변수 업데이트 | 인코더와 디코더 네트워크의 가중치 조정 |
이 과정에서 재매개변수화 트릭은 결정론적인 경로를 만들어 무작위 샘플링 연산에 대한 기울기 흐름을 가능하게 한다[6]. β 계수는 재구성 정확도와 잠재 공간의 규제 강도 사이의 균형을 조절하는 하이퍼파라미터로, β-VAE에서는 이 값을 1보다 크게 설정하여 더 해석 가능한 잠재 표현을 학습하도록 유도하기도 한다. 학습이 완료되면, 디코더 네트워크는 표준 정규 분포에서 직접 샘플링한 잠재 벡터를 입력받아 새로운 데이터를 생성할 수 있다.
5.1. 재매개변수화 트릭
5.1. 재매개변수화 트릭
재매개변수화 트릭은 변이형 오토인코더 학습 과정에서 핵심적인 역할을 하는 기법이다. 이 트릭은 확률적 샘플링 연산이 포함된 계산 그래프를 통해 경사 하강법을 적용할 수 있도록 만든다. 인코더 네트워크가 출력하는 것은 잠재 변수 z 자체가 아니라, 그 변수의 확률 분포 매개변수 (예: 정규 분포의 평균 μ와 분산 σ²)이다. 학습 중에 z를 샘플링해야 하지만, 이 샘플링 연산은 미분이 불가능하여 역전파가 차단된다.
이 문제를 해결하기 위해 재매개변수화 트릭은 샘플링 과정을 분리한다. 구체적으로, 잠재 변수 z를 다음과 같이 재표현한다: z = μ + σ ⊙ ε. 여기서 ε는 표준 정규 분포에서 샘플링된 노이즈(ε ~ N(0, I))이며, ⊙는 요소별 곱셈을 의미한다. 이 변환을 통해, 샘플링의 확률적 요소(ε)는 μ와 σ와 독립적이게 된다. 결과적으로, 계산 그래프 상에서 미분 가능한 경로(μ와 σ를 통해)가 생성되어, 손실 함수의 기울기가 인코더와 디코더 네트워크로 원활히 흐를 수 있다.
이 트릭의 효과는 다음과 같이 요약할 수 있다.
구분 | 재매개변수화 트릭 적용 전 | 재매개변수화 트릭 적용 후 |
|---|---|---|
샘플링 연산 | z ~ N(μ, σ²I) (미분 불가) | z = μ + σ ⊙ ε, ε ~ N(0, I) |
기울기 흐름 | 샘플링 지점에서 차단됨 | μ와 σ를 통한 미분 가능 경로 생성 |
학습 안정성 | 확률적 경사 하강법 적용 어려움 | 표준 역전파 알고리즘으로 최적화 가능 |
이 방법은 ELBO 손실 함수를 직접 최적화하는 데 필수적이며, VAE가 효율적으로 학습될 수 있는 이론적 토대를 제공한다. 또한, 이 트릭은 정규 분포 외에 다른 연속적인 잠재 변수 분포를 사용하는 모델에도 확장 적용될 수 있다.
5.2. 손실 함수 최적화
5.2. 손실 함수 최적화
변이형 오토인코더의 학습 목표는 ELBO 손실 함수를 최대화하는 것이다. 이는 모델이 생성하는 데이터의 로그 우도의 하한을 높이는 것과 동일하며, 결국 원본 데이터를 잘 재구성하면서도 잠재 공간의 분포가 사전 분포에 가깝도록 만드는 과정이다. 최적화는 주로 확률적 경사 하강법과 같은 경사 기반 최적화 알고리즘을 통해 이루어진다.
학습 과정에서 손실 함수는 일반적으로 두 개의 항으로 구성된다. 첫 번째는 재구성 손실로, 디코더 네트워크가 생성한 샘플과 원본 입력 데이터 간의 차이를 측정한다. 이미지 데이터의 경우 이진 교차 엔트로피나 평균 제곱 오차가 자주 사용된다. 두 번째 항은 쿨백-라이블러 발산으로, 인코더 네트워크가 출력하는 잠재 변수의 사후 분포와 가정한 사전 분포(보통 표준 정규 분포) 사이의 거리를 계산한다. 이 KL 발산 항은 잠재 공간을 정규화하고 의미 있는 구조를 형성하도록 유도하는 역할을 한다.
손실 함수 구성 요소 | 역할 | 일반적으로 사용되는 측정 방법 |
|---|---|---|
재구성 손실 | 디코더 출력과 원본 데이터의 차이 최소화 | 평균 제곱 오차(MSE), 이진 교차 엔트로피(BCE) |
KL 발산 | 잠재 공간 분포를 사전 분포에 정규화 | 가우시안 분포 간의 쿨백-라이블러 발산 |
이 두 항 사이에는 상충 관계가 존재한다. 재구성 손실만 강조하면 오토인코더와 유사해져 잠재 공간의 규칙성이 떨어질 수 있고, KL 발산 항을 지나치게 강조하면 재구성 품질이 저하될 수 있다. 이를 해결하기 위해 β-VAE와 같은 변형에서는 KL 발산 항에 가중치 β를 도입하여 두 항의 균형을 조절한다[7]. 최적화 과정은 인코더와 디코더의 매개변수를 동시에 업데이트하며, 재매개변수화 트릭을 통해 난수 샘플링 연산이 포함된 계산 그래프에서도 경사를 안정적으로 흘려보낼 수 있다.
6. 응용 분야
6. 응용 분야
변이형 오토인코더는 잠재 공간을 확률적으로 모델링한다는 특성 덕분에 다양한 응용 분야에서 활용된다. 가장 대표적인 응용은 이미지 생성이다. 학습 데이터의 분포를 학습한 VAE는 디코더 네트워크를 통해 새로운 데이터 샘플을 생성할 수 있다. 또한, 잠재 공간에서의 보간을 통해 두 이미지 사이를 자연스럽게 변형하는 이미지 편집이 가능하다. 예를 들어, 웃는 얼굴과 무표정한 얼굴의 잠재 벡터 사이를 선형 보간하면 표정이 점차 변하는 일련의 얼굴 이미지를 생성할 수 있다.
데이터가 부족한 상황에서는 데이터 증강 도구로도 유용하게 쓰인다. VAE는 학습 데이터의 본질적인 특성을 포착하여 원본과 유사하지만 새로운 샘플을 만들어낼 수 있다. 이렇게 생성된 합성 데이터는 기계 학습 모델의 학습 데이터를 보강하여 과적합을 줄이고 일반화 성능을 향상시키는 데 기여한다. 특히 의료 영상이나 산업 결함 검사와 같이 고품질의 레이블된 데이터를 얻기 어려운 분야에서 그 가치가 크다.
또 다른 중요한 응용 분야는 이상 탐지이다. VAE는 정상 데이터의 분포를 학습하여 정상 샘플을 잘 재구성하도록 훈련된다. 따라서 정상 패턴에서 크게 벗어난 이상 데이터가 입력되면 모델은 이를 제대로 재구성하지 못해 높은 재구성 오차를 보인다. 이 원리를 활용하여 제조라인의 불량품 검출, 네트워크 침입 탐지, 금융 사기 거래 식별 등에 적용할 수 있다.
응용 분야 | 주요 활용 방식 | 예시 |
|---|---|---|
이미지 생성 및 편집 | 잠재 공간에서 샘플링 또는 보간 | 새로운 얼굴 생성, 스타일 변환, 이미지 보간 |
데이터 증강 | 학습 데이터 분포 기반 합성 데이터 생성 | 의료 이미지 증강, 희소 데이터셋 보완 |
이상 탐지 | 정상 데이터 재구성 오차 기반 이상치 판별 | 제조 결함 탐지, 사이버 보안, 사기 탐지 |
이 외에도 음성 합성, 텍스트 생성, 추천 시스템 등에서도 VAE의 변형 모델이 활발히 연구되고 적용되고 있다.
6.1. 이미지 생성 및 편집
6.1. 이미지 생성 및 편집
변이형 오토인코더는 잠재 공간의 연속적이고 구조화된 표현을 학습함으로써 이미지 생성 및 편집 작업에 효과적으로 적용된다. 학습된 잠재 공간에서 임의의 점을 샘플링하여 디코더에 통과시키면 완전히 새로운 이미지를 생성할 수 있다. 더 중요한 점은, 이 잠재 공간에서의 보간이 의미 있는 이미지 변화를 만들어낸다는 것이다. 예를 들어, 웃는 얼굴 이미지와 무표정한 얼굴 이미지의 잠재 벡터 사이를 선형적으로 보간하면, 표정이 부드럽게 변하는 일련의 얼굴 이미지들을 생성할 수 있다.
이미지 편집 작업에서는 원본 이미지를 인코더를 통해 잠재 벡터로 변환한 후, 해당 벡터를 조작하여 원하는 속성을 변경한 다음 디코더로 복원하는 방식이 사용된다. 특정 속성(예: 머리카락 색, 안경 착용 여부, 표정)에 해당하는 방향 벡터를 잠재 공간에서 발견하면, 원본 잠재 벡터에 이 방향 벡터를 더하거나 빼는 간단한 연산만으로 해당 속성을 제어할 수 있다. 이는 Conditional VAE와 결합되어 특정 클래스나 조건 하에서의 정밀한 편집을 가능하게 한다.
응용 분야 | 설명 | 주요 특징 |
|---|---|---|
새로운 이미지 생성 | 잠재 공간에서 무작위 샘플링하여 완전히 새로운 이미지 생성 | 학습 데이터 분포를 따르는 다양하고 사실적인 이미지 생성 |
이미지 보간 | 두 이미지의 잠재 벡터 사이를 보간하여 중간 형태 생성 | 의미론적으로 매끄러운 전환과 새로운 조합 창출 |
속성 조작 | 잠재 공간에서 속성 방향 벡터를 찾아 이미지 편집 | 비지도 또는 약한 지도 학습으로 특정 특징을 독립적으로 제어 |
스타일 변환 | 콘텐츠 이미지의 구조를 유지하며 스타일 이미지의 특징 적용 | 잠재 변수를 분리하여 콘텐츠와 스타일을 독립적으로 인코딩 |
이러한 편집 기능은 β-VAE와 같은 변형을 통해 더욱 향상될 수 있다. β-VAE는 잠재 공간의 표현을 더욱 해석 가능하고 분리되도록 장려하여, 단일 차원이 하나의 독립적인 생성 요인(예: 얼굴의 방향, 조명 조건)에 대응되도록 만든다. 결과적으로 VAE는 단순한 생성 모델을 넘어, 이미지의 의미론적 구조를 이해하고 조작하는 강력한 도구로 자리 잡았다.
6.2. 데이터 증강
6.2. 데이터 증강
변이형 오토인코더는 학습 데이터의 분포를 학습하여 새로운 샘플을 생성할 수 있기 때문에, 데이터 증강에 효과적으로 활용될 수 있다. 기존 데이터셋의 양이 부족하거나 클래스 불균형이 심한 경우, VAE는 원본 데이터와 유사하지만 새로운 특성을 가진 합성 데이터를 생성하여 데이터셋의 다양성과 규모를 확장하는 데 사용된다. 이는 특히 과적합을 완화하고 모델의 일반화 성능을 향상시키는 목적으로 기계 학습 분야에서 널리 적용된다.
VAE를 이용한 데이터 증강의 일반적인 절차는 다음과 같다. 먼저, 제한된 양의 원본 데이터로 VAE 모델을 학습시켜 데이터의 잠재 공간 표현을 획득한다. 그 후, 학습된 잠재 공간 내에서 무작위로 점을 샘플링하거나, 특정 클래스에 해당하는 영역을 탐색하여 새로운 잠재 벡터를 생성한다. 마지막으로, 이 잠재 벡터를 디코더 네트워크에 통과시켜 원본 데이터 도메인(예: 이미지)의 새로운 샘플을 생성한다. 생성된 샘플들은 원본 데이터셋에 추가되어 확장된 학습 데이터로 사용된다.
다른 생성 모델과 비교했을 때 VAE 기반 데이터 증강의 특징은 다음과 같다.
모델 | 데이터 증강 적용 특징 |
|---|---|
생성 과정이 비교적 안정적이며, 잠재 공간의 연속적 보간을 통해 세밀한 변형 생성이 가능하다. | |
일반적으로 더 선명한 이미지를 생성할 수 있으나, 학습 불안정성과 모드 붕괴 문제로 인해 다양성이 떨어질 수 있다. | |
매우 고품질의 샘플을 생성하지만, 학습 및 샘플링에 필요한 계산 비용이 상대적으로 높다. |
이 방법은 의료 영상 분석이나 산업 결함 검출과 같이 고품질의 라벨링된 데이터를 대량으로 확보하기 어려운 분야에서 유용하게 쓰인다. 예를 들어, 희귀 질병의 X선 영상이 매우 적은 경우, 해당 클래스의 데이터를 VAE로 생성하여 분류 모델의 성능을 높일 수 있다. 그러나 생성된 데이터의 품질과 다양성은 원본 데이터의 양과 VAE 모델의 학습 품질에 크게 의존한다는 한계가 존재한다.
6.3. 이상 탐지
6.3. 이상 탐지
변이형 오토인코더는 정상 데이터의 분포를 학습하여, 학습된 분포에서 크게 벗어나는 데이터를 이상으로 판별하는 방식으로 이상 탐지에 활용된다. 학습 단계에서는 정상 데이터만을 사용하여 모델을 훈련시킨다. 이 과정에서 인코더는 입력 데이터를 잠재 공간의 확률 분포로 변환하고, 디코더는 이 분포에서 샘플링된 잠재 변수를 복원한다. 모델은 정상 데이터를 잘 재구성하도록 학습된다.
이상 탐지 단계에서는 새로운 입력 데이터가 주어지고, 모델이 이를 재구성한다. 정상 데이터는 학습된 분포 내에 있으므로 비교적 정확하게 재구성된다. 반면, 이상 데이터는 학습된 분포와 다르기 때문에 재구성 오차가 크게 발생한다. 이 재구성 오차(예: 평균 제곱 오차)를 이상 점수로 사용하여, 사전에 정의된 임계값을 초과하면 해당 데이터를 이상으로 분류한다.
VAE 기반 이상 탐지의 주요 장점은 명시적인 확률 분포 모델링을 통해 데이터의 본질적인 구조를 포착할 수 있다는 점이다. 또한 생성 모델로서 정상 데이터의 특성을 학습하기 때문에, 다양한 형태의 이전에 보지 못한 이상을 탐지하는 데 유리하다. 주요 적용 분야는 다음과 같다.
적용 분야 | 설명 |
|---|---|
산업 제조 | 생산 라인에서 불량품이나 결함을 자동으로 탐지한다. |
사이버 보안 | 네트워크 트래픽이나 시스템 로그에서 정상 패턴과 다른 이상 행위를 식별한다. |
의료 진단 | |
금융 사기 탐지 | 정상적인 거래 패턴에서 벗어나는 사기성 거래를 검출한다. |
이 방법의 한계점은 재구성 오차가 반드시 이상을 의미하지는 않을 수 있다는 것이다. 모델이 너무 강력하면(과적합) 이상 데이터도 잘 재구성할 수 있어 탐지 실패로 이어질 수 있다. 또한, 정상 데이터의 분포가 매우 복잡하거나 다중 모드를 가질 경우 단일 가우시안 분포를 가정하는 표준 VAE로는 정확한 모델링이 어려울 수 있다. 이러한 한계를 극복하기 위해 β-VAE나 정규화 흐름을 결합한 모델 등이 제안되고 있다.
7. 장단점
7. 장단점
변이형 오토인코더는 잠재 공간을 확률적으로 모델링한다는 점에서 몇 가지 뚜렷한 장점을 가지지만, 동시에 몇 가지 한계점도 존재한다.
주요 장점은 명확한 확률적 프레임워크를 제공한다는 점이다. VAE는 데이터의 생성 과정을 베이즈 정리에 기반한 확률 모델로 공식화하여, 데이터의 잠재 변수 표현을 학습한다. 이로 인해 생성된 샘플의 다양성을 통제하기가 비교적 용이하며, 잠재 공간에서의 보간이 매끄럽게 이루어진다. 또한 오토인코더 구조를 기반으로 하기 때문에 인코더를 통해 입력 데이터를 의미 있는 저차원 표현으로 압축할 수 있어, 특징 추출이나 데이터 압축에 유용하게 활용될 수 있다. 학습 과정도 비교적 안정적이며, 생성적 적대 신경망과 달리 모드 붕괴 문제가 덜 발생하는 경향이 있다.
반면, VAE는 생성된 샘플의 선명도가 다른 최신 모델에 비해 떨어지는 경우가 많다. 이는 손실 함수에 포함된 재구성 손실 항이 픽셀 단위의 평균 제곱 오차를 사용하는 경우가 많아, 생성된 이미지가 다소 흐리거나 디테일이 부족해지는 경향으로 이어지기 때문이다. 또한, 사전 분포로 가정하는 표준 정규 분포가 실제 데이터의 잠재 분포를 완벽하게 설명하지 못할 경우, 표현력에 제약이 생길 수 있다. 이로 인해 매우 복잡한 데이터 분포를 모델링하는 데 한계를 보이기도 한다.
7.1. 장점
7.1. 장점
변이형 오토인코더는 명시적인 확률 분포를 학습한다는 점이 주요 장점이다. 이는 모델이 데이터의 잠재 구조를 잠재 공간 상의 연속적이고 구조화된 분포(일반적으로 가우시안 분포)로 표현함을 의미한다. 결과적으로, 잠재 공간에서의 보간이 매끄럽고 의미 있는 새로운 데이터 샘플을 생성할 수 있게 한다. 또한 이 확률적 특성은 생성 과정에 대한 확률적 해석을 제공하며, 데이터의 불확실성을 정량화하는 데 활용될 수 있다.
모델의 학습 과정이 비교적 안정적이며 모드 붕괴 문제가 덜 발생한다는 점도 장점으로 꼽힌다. 생성적 적대 신경망은 두 개의 네트워크가 경쟁하며 학습하기 때문에 불안정한 학습과 모드 붕괴가 흔히 발생하지만, VAE는 단일 목적 함수(증거 하한)를 최대화하는 방향으로 직접 학습한다. 이로 인해 학습이 더 수렴하기 쉽고, 다양성을 잃고 제한된 종류의 샘플만 생성하는 현상을 상대적으로 덜 겪는다.
VAE는 생성 작업 외에도 데이터의 잠재 표현을 추출하는 효율적인 표현 학습 도구로 사용될 수 있다. 인코더를 통해 얻은 잠재 변수는 데이터의 핵심 특징을 저차원으로 압축한 것이며, 이는 이상 탐지, 준지도 학습, 데이터 시각화 등 다양한 다운스트림 작업에 유용하게 적용된다. 또한 디코더를 통한 재구성 과정 덕분에 입력 데이터의 노이즈 제거나 누락된 부분 복원과 같은 응용도 가능하다.
구현과 이해의 용이성도 실용적인 장점이다. VAE의 핵심 아이디어와 학습 목표는 상대적으로 직관적이며, 표준 신경망 아키텍처와 확률론의 기본 개념을 결합한다. 이는 연구와 응용 측면에서 모델을 수정하고 확장하기 쉽게 만든다. 예를 들어, 조건부 정보를 추가한 Conditional VAE나 잠재 공간의 해석력을 높인 β-VAE와 같은 다양한 변형 모델이 비교적 쉽게 파생될 수 있었다.
7.2. 한계점
7.2. 한계점
변이형 오토인코더는 잠재 공간을 확률 분포로 모델링한다는 근본적인 특성으로 인해 몇 가지 한계점을 지닌다. 가장 큰 문제는 생성된 샘플의 품질이 종종 생적적 대립 신경망이나 확산 모델과 같은 다른 생성 모델에 비해 흐릿하고 선명도가 떨어진다는 점이다. 이는 모델이 데이터의 실제 분포보다는 평균적인 특징을 학습하는 경향이 있기 때문이며, 특히 복잡한 데이터셋에서 두드러진다.
또한, VAE의 손실 함수인 증거 하한은 근사 추정에 기반하므로, 최적화 과정이 정확한 사후 분포를 학습하는 것을 보장하지 않는다. 이로 인해 잠재 공간의 일부 영역이 의미 없는 샘플을 생성하거나, 모드 붕괴 현상이 발생할 수 있다. 학습 과정에서 사용되는 재매개변수화 트릭은 미분 가능성을 보장하지만, 이는 근사적 방법이며 샘플링에 의한 불확실성이 항상 존재한다.
다음 표는 VAE의 주요 한계점을 정리한 것이다.
한계점 | 설명 |
|---|---|
생성 품질 | 생성된 이미지가 흐릿하고 디테일이 부족한 경향이 있다. |
ELBO의 근사성 | 손실 함수가 실제 목표 함수의 하한선에 불과하여 최적화가 부정확할 수 있다. |
잠재 공간 해석력 | β-VAE와 같은 변형을 제외하면, 잠재 변수의 각 차원이 인간이 이해하기 쉬운 의미적 특성에 대응된다는 보장이 없다. |
계산 비용 | 매 학습 단계에서 샘플링과 분포 계산이 필요하며, 특히 고차원 데이터에서는 계산 부담이 크다. |
이산 데이터 처리 | 기본 VAE 구조는 연속적인 잠재 변수를 가정하므로, 텍스트와 같은 이산형 데이터를 직접적으로 모델링하기 어렵다. |
마지막으로, VAE는 명시적인 확률 밀도 함수를 제공한다는 장점이 있지만, 이 밀도 추정의 정확도는 인코더와 디코더가 선택한 사전 분포 및 근사 분포의 정확성에 크게 의존한다. 따라서 매우 복잡한 고차원 데이터의 분포를 정밀하게 포착하는 데는 한계가 있다.
8. 다른 생성 모델과의 비교
8. 다른 생성 모델과의 비교
변형 오토인코더는 생성 모델의 한 종류로, 다른 주요 생성 모델인 생성적 적대 신경망과 확산 모델과는 구조와 작동 원리, 결과물의 특성에서 차이를 보인다.
비교 항목 | 변형 오토인코더 (VAE) | 생성적 적대 신경망 (GAN) | 확산 모델 (Diffusion Model) |
|---|---|---|---|
핵심 메커니즘 | 확률적 인코더-디코더를 통해 데이터의 잠재 변수 분포를 학습 | 생성기와 판별기의 적대적 경쟁을 통한 학습 | 순방향 노이즈 추가와 역방향 노이즈 제거 과정을 통한 학습 |
학습 목표 | 증거 하한(ELBO) 최대화 | 생성기와 판별기 사이의 미니맥스 게임 균형 | 데이터 분포에 대한 점진적 디노이징 과정 모델링 |
생성 방식 | 잠재 공간에서 샘플링 후 디코딩 | 무작위 노이즈 벡터로부터 직접 이미지 생성 | 순수 가우시안 노이즈로부터 반복적인 디노이징을 통한 생성 |
주요 장점 | 구조화된 잠재 공간, 비교적 안정적인 학습, 데이터 밀도 추정 가능 | 매우 선명하고 현실적인 이미지 생성 가능 | 학습 안정성 높음, 다양하고 고품질의 샘플 생성 가능 |
주요 한계 | 생성 이미지의 선명도가 상대적으로 낮을 수 있음(흐릿함) | 모드 붕괴, 학습 불안정성 문제 | 생성 과정의 계산 비용이 높음(다중 단계 필요) |
잠재 공간 | 연속적이고 구조화된 공간(보통 가우시안) 제공 | 일반적으로 해석 가능한 구조를 명시적으로 학습하지 않음 | 중간 잠재 변수는 노이즈 스케일별 특징을 포함 |
GAN은 VAE보다 일반적으로 더 선명한 이미지를 생성하지만, 학습이 불안정하고 모드 붕괴 현상이 발생할 수 있다. 반면 VAE는 안정적인 학습과 의미 있는 잠재 공간 학습이 가능하지만, 생성 이미지의 디테일이 부족할 수 있다. 최근 주목받는 확산 모델은 VAE와 GAN의 중간적 특성을 가지며, 고품질 생성과 안정적인 학습을 모두 달성했지만, 여러 단계의 샘플링이 필요해 생성 속도가 느리다는 단점이 있다. 이러한 차이로 인해 VAE는 데이터 압축, 이상 탐지, CVAE를 통한 조건부 생성 등에, GAN은 고해상도 이미지/영상 생성에, 확산 모델은 텍스트 기반 이미지 생성 등 정교한 생성 작업에 각각 널리 활용된다.
8.1. GAN과의 비교
8.1. GAN과의 비교
변분 오토인코더와 생성적 적대 신경망은 모두 생성 모델의 대표적인 접근법이지만, 그 원리와 특성에서 뚜렷한 차이를 보인다.
VAE는 확률적 생성 모델로서, 데이터의 잠재 변수 분포를 학습하고 이를 통해 새로운 데이터를 샘플링하는 데 초점을 맞춘다. 학습 목표는 잠재 공간의 사후 분포를 근사하는 것이며, 변분 추론을 통해 증거 하한을 최대화한다. 이로 인해 VAE는 일반적으로 GAN보다 학습이 안정적이며, 명시적인 확률 밀도 추정이 가능하다는 장점이 있다. 또한, 잠재 공간의 연속성과 구조화 덕분에 의미 있는 잠재 변수 보간이나 산술 연산이 가능하다. 그러나 VAE가 생성하는 이미지는 종종 GAN에 비해 흐릿하거나 디테일이 부족한 경향이 있어, 선명도와 현실감 측면에서 한계를 보인다.
반면, GAN은 생성기와 판별기라는 두 신경망을 적대적으로 경쟁시키는 프레임워크를 사용한다. 생성기는 판별기를 속일 수 있을 정도로 현실적인 데이터를 생성하려 하고, 판별기는 진짜 데이터와 가짜 데이터를 구별하려 한다. 이 경쟁적 과정의 결과, GAN은 종종 VAE보다 훨씬 선명하고 디테일한 이미지를 생성하는 능력을 보인다. 그러나 GAN은 학습 불안정성(예: 모드 붕괴) 문제로 악명이 높으며, 명시적인 확률 밀도 모델을 제공하지 않아 샘플의 다양성을 평가하거나 잠재 공간을 해석하기가 어렵다.
다음 표는 두 모델의 주요 차이점을 요약한다.
특성 | 변분 오토인코더 (VAE) | 생성적 적대 신경망 (GAN) |
|---|---|---|
핵심 원리 | 변분 추론과 확률적 재구성 | 생성기와 판별기의 적대적 경쟁 |
학습 안정성 | 비교적 안정적 | 불안정할 수 있음 (모드 붕괴 등) |
생성 품질 | 일반적으로 덜 선명함 | 매우 선명하고 디테일함 |
확률 모델 | 명시적 확률 밀도 모델 제공 | 암묵적 생성 모델 |
잠재 공간 | 구조화되고 연속적이며 해석 가능 | 일반적으로 덜 구조화됨 |
주요 장점 | 안정적 학습, 의미적 보간, 이상 탐지에 유용 | 높은 현실감의 생성 품질 |
주요 한계 | 흐릿한 생성 결과 | 학습 불안정성, 평가의 어려움 |
요약하면, VAE는 안정적인 학습과 구조화된 잠재 공간 해석에, GAN은 높은 현실감의 생성 품질에 각각 강점을 지닌다. 이후 연구에서는 두 접근법의 장점을 결합한 VAE-GAN 하이브리드 모델이나, VQ-VAE와 같은 발전된 형태도 등장했다.
8.2. 확산 모델과의 비교
8.2. 확산 모델과의 비교
변분 오토인코더와 확산 모델은 모두 생성형 인공지능의 핵심 모델로, 고품질의 새로운 데이터를 생성하는 목표를 공유한다. 그러나 그 접근 방식과 작동 원리에는 근본적인 차이가 존재한다.
가장 큰 차이는 생성 과정의 구조에 있다. 변분 오토인코더는 인코더를 통해 입력 데이터를 저차원의 잠재 공간에 매핑하고, 이 공간에서 샘플링된 점을 디코더가 복원하는 단일 단계 과정을 사용한다. 반면 확산 모델은 순방향 과정과 역방향 과정이라는 두 단계로 구성된다. 순방향 과정에서는 데이터에 점진적으로 노이즈를 추가하여 완전한 가우시안 노이즈로 만든다. 이후 역방향 과정에서는 학습된 신경망이 이 노이즈를 단계적으로 제거하여 원본 데이터 분포로부터 새로운 샘플을 생성한다[8].
이러한 구조적 차이는 모델의 특성과 성능에 직접적인 영향을 미친다. 다음 표는 두 모델의 주요 특징을 비교한다.
특성 | 변분 오토인코더 (VAE) | 확산 모델 (Diffusion Model) |
|---|---|---|
생성 과정 | 단일 단계 (잠재 변수 샘플링 → 디코딩) | 다단계 반복 (노이즈 제거) |
잠재 공간 | 명시적이며 연속적. 의미적 보간이 가능하다. | 일반적으로 명시적이지 않다. |
생성 샘플 품질 | 상대적으로 낮은 편이나, 최근 연구로 개선 중이다. | 매우 높은 품질과 다양성을 달성한다. |
학습 안정성 | 비교적 안정적이다. ELBO를 직접 최적화한다. | 안정적이다. 단순한 노이즈 예측 작업을 학습한다. |
계산 비용 | 추론(생성) 시 계산 비용이 낮다. | 추론 시 다단계 신경망 평가로 인해 계산 비용이 높다. |
주요 장점 | 효율적인 추론, 의미적 잠재 공간 해석 가능성. | 우수한 샘플 품질, 학습의 간결성과 안정성. |
주요 한계 | 생성 샘플의 선명도 부족, 사후 분포 근사 오차. | 느린 생성 속도, 높은 추론 계산량. |
요약하면, 변분 오토인코더는 효율성과 해석 가능한 잠재 공간에 강점이 있는 반면, 확산 모델은 생성 품질과 학습 안정성에서 뛰어난 성능을 보인다. 최근 연구는 두 패러다임의 장점을 결합하려는 시도, 예를 들어 잠재 확산 모델과 같은 하이브리드 접근법도 활발히 진행되고 있다.
