변이형 자동 인코더(Variational Autoencoder, VAE)는 2013년 디데릭 P. 킹마(Diederik P. Kingma)와 맥스 웰링(Max Welling)이 도입한 인공 신경망 아키텍처로, 확률적 그래픽 모델 및 변분 베이즈 방법 계열에 속한다. VAE는 인코더 네트워크와 디코더 네트워크를 결합하며, 이들은 일반적으로 다변량 가우시안 분포를 따르는 확률적 잠재 공간을 통해 연결된다. 인코더는 각 입력 데이터 포인트(예: 이미지)를 잠재 공간의 단일 지점이 아닌 분포로 매핑하는 반면, 디코더는 잠재 공간에서 입력 공간으로 다시 매핑한다. 이러한 확률적 매핑은 훈련 데이터에 대한 과적합을 방지하는 데 도움이 된다. 모델은 재매개변수화 트릭(reparameterization trick)을 사용하여 훈련되며, 원래 비지도 학습을 위해 설계되었지만 반지도 및 지도 학습 작업에서도 효과적인 것으로 입증되었다.
VAE는 데이터 세트의 기저 확률 분포를 학습하는 생성 모델이다. 이는 데이터 가능도에 대한 하한인 증거 하한(ELBO)을 최적화하며, 이는 계산적으로 다루기 쉽다. 인코더는 분할 추론 네트워크로 작동하여 모든 데이터 포인트에 걸쳐 변분 사후 분포를 공동으로 최적화하며, 이는 데이터 포인트별 최적화에 비해 상당한 메모리 절약을 제공한다. 디코더는 잠재 변수에서 데이터를 생성하며, 두 네트워크는 재구성 항과 쿨백-라이블러(KL) 발산 항으로 구성된 손실 함수를 최소화하도록 함께 훈련된다.
아키텍처 및 작동 방식
VAE 아키텍처는 두 가지 주요 구성 요소, 즉 인코더와 디코더로 구성된다. 인코더는 입력 데이터 포인트를 받아 변분 분포의 매개변수, 일반적으로 가우시안의 평균과 분산을 출력하는 신경망이다. 이는 입력 공간에서 저차원 잠재 공간으로 매핑한다. 디코더는 잠재 공간에서 입력 공간으로 다시 매핑하는 두 번째 신경망으로, 종종 잡음 분포의 평균을 생성한다. 일부 구현에서 디코더는 분산 매개변수도 출력하지만, 이는 단순화를 위해 생략할 수 있으며 분산은 경사 하강법을 통해 최적화된다.
훈련 목표는 확률 모델의 자유 에너지 표현에서 파생된 두 항, 즉 재구성 오차와 KL 발산을 포함한다. 재구성 항은 디코더가 잠재 변수에서 입력을 얼마나 잘 재구성하는지 측정하며, 기대값을 계산하려면 샘플링 근사가 필요하다. KL 발산 항은 변분 사후 분포와 잠재 변수에 대한 사전 분포 간의 차이를 측정하여 확률 질량의 중첩을 최대화한다. 잡음 분포의 선택은 데이터 유형에 따라 달라진다. 예를 들어, 이미지와 같은 연속 데이터에는 가우시안 잡음이 일반적이고, 이진화된 MNIST 숫자와 같은 이진 데이터에는 베르누이 잡음이 사용된다.
수식화
확률 모델링 관점에서 목표는 매개변수화된 분포 \(p_\theta(x) = p(x|\theta)\) 하에서 데이터 \(x\)의 가능도를 최대화하는 것이며, 종종 가우시안으로 선택된다. 그러나 잠재 변수 \(z\)에 대한 사전 분포가 가정되면 주변 가능도 \(p_\theta(x) = \int_z p_\theta(x,z) dz\)는 다루기 어려워진다. 이를 해결하기 위해 VAE는 인코더에 의해 매개변수화된 변분 사후 분포 \(q_\phi(z|x)\)를 도입하고 ELBO를 최적화한다:
\[\log p_\theta(x) \geq \mathbb{E}_{q_\phi(z|x)}[\log p_\theta(x|z)] - D_{KL}(q_\phi(z|x) \| p_\theta(z))\]
첫 번째 항은 재구성 가능도이고, 두 번째 항은 변분 사후 분포와 사전 분포 간의 KL 발산이다. 재매개변수화 트릭은 \(z\)를 인코더 출력과 무작위 잡음 변수의 결정적 함수로 표현함으로써 샘플링 과정을 통해 기울기가 흐르도록 허용한다.
공식화
훈련과 최적화 측면에서 VAE는 음의 ELBO를 최소화하기 위해 확률적 경사 하강법을 사용한다. 재구성 항은 일반적으로 몬테카를로 샘플링을 통해 근사되는 반면, KL 발산은 사전 및 사후 분포가 모두 가우시안일 때 해석적으로 계산될 수 있는 경우가 많다. 재매개변수화 트릭은 훈련에 매우 중요하며, 이는 잠재 변수 샘플링의 확률적 부분과 결정적 부분을 분리한다. 잡음 모델의 분산은 별도로 학습되거나 고정될 수 있다.
최근 접근 방식은 모드 붕괴 문제를 해결하고 생성된 샘플의 품질을 개선하기 위해 KL 발산을 Wasserstein 거리와 같은 다른 통계적 거리로 대체하는 것을 탐구했다. 이러한 변형은 종종 통계적 거리 VAE 변형으로 불린다.
응용
변이형 자동 인코더는 이미지 생성, 이상 탐지, 표현 학습을 포함한 생성 작업에 널리 사용되어 왔다. 특히 데이터의 간결한 잠재 표현을 학습하는 비지도 학습에서 효과적이며, 레이블된 작업의 성능을 개선하기 위해 레이블되지 않은 데이터를 활용하는 반지도 학습에도 적용되었다. 이 아키텍처는 생성 과정에 클래스 레이블을 통합하는 조건부 VAE와 여러 계층의 잠재 변수를 사용하는 계층적 VAE와 같은 수많은 확장을 통해 영감을 주었다.
변형 및 확장
VAE의 성능을 개선하고 한계를 해결하기 위해 여러 변형이 개발되었다. 베타-VAE(beta-VAE)는 KL 발산 항에 가중치 요인 \(\beta\)를 도입하여 더 분리된 표현을 장려한다. VQ-VAE(벡터 양자화 VAE)는 텍스트 및 오디오 생성과 같은 작업에 유용한 이산 잠재 변수를 사용한다. 다른 확장에는 보조 정보에 생성 조건을 두는 CVAE(조건부 VAE)와 샤프한 이미지를 생성하기 위해 VAE와 생성적 적대 신경망을 결합한 VAE-GAN이 포함된다. 이러한 변형은 다양한 도메인에서 VAE의 적용 가능성을 확장했다.
다른 모델과의 관계
VAE는 생성적 적대 신경망(GAN) 및 정규화 흐름(normalizing flows)과 같은 다른 생성 모델과 밀접한 관련이 있다. GAN이 명시적 가능도 없이 현실적인 샘플 생성에 초점을 맞추는 반면, VAE는 다루기 쉬운 목적 함수를 갖춘 원리 있는 확률적 프레임워크를 제공한다. 정규화 흐름은 정확한 가능도 계산을 제공하지만 종종 더 많은 계산 비용이 든다. VAE의 인코더-디코더 구조는 기존 자동 인코더와 유사점을 공유하지만, 확률적 잠재 공간과 정규화가 결정적 자동 인코더와 구별되는 특징이다.
한계 및 향후 방향
성공에도 불구하고 VAE는 가우시안 잡음 가정과 재구성 목표로 인해 GAN에 비해 흐릿한 샘플을 생성하는 경향이 있는 등 한계가 있다. KL 발산은 잠재 변수가 정보를 제공하지 못하게 되는 사후 붕괴(posterior collapse)를 초래할 수도 있다. 현재 연구는 개선된 사전 분포, 더 유연한 사후 분포, 대체 발산 측정을 통해 이러한 문제를 해결하는 것을 목표로 한다. VAE는 학술 연구와 실용적 응용 전반에 걸쳐 지속적인 관련성을 지닌 Deep learning 및 Generative AI의 기본 모델로 남아 있다.
같이 보기
한계 및 향후 방향
성능에도 불구하고 VAE는 가우시안 잡음 가정과 재구성 목표로 인해 GAN에 비해 흐릿한 샘플을 생성하는 경향과 같은 한계가 있다. KL 발산은 또한 잠재 변수가 비정보적으로 변하는 사후 붕괴를 초래할 수 있다. 진행 중인 연구는 개선된 사전 분포, 더 표현력 있는 사후 분포, 대체 거리 측정을 통해 이러한 문제를 해결하는 데 초점을 맞추고 있다. VAE는 Generative AI 및 Deep learning에서 기본 모델로 남아 있으며, 학술 연구와 실용 응용 모두에서 지속적인 관련성을 유지한다.