설명
Variational Autoencoders(VAE)는 입력 데이터의 압축된 잠재 표현을 학습하는 기존 오토인코더의 기반 위에 구축됩니다. 표준 오토인코더가 각 잠재 차원에 대해 단일 값을 출력하는 반면, VAE는 확률론적 접근 방식을 취합니다. VAE는 단일 값이 아닌 각 잠재 속성에 대한 확률 분포를 정의하는 매개변수를 출력하는 인코더를 공식화합니다.
이러한 확률론적 인코딩은 데이터에 대한 보다 미묘한 표현을 가능하게 합니다. 예를 들어, 얼굴 이미지 인코딩 시 VAE는 '미소'와 같은 속성을 단일 값이 아닌 분포로 표현하여 모나리자와 같은 모호한 경우를 더 효과적으로 처리할 수 있습니다. 그런 다음 디코더는 이러한 분포에서 샘플링하여 입력을 재구성합니다. 인코더는 종종 인식 모델이라고 하고 디코더는 생성 모델이라고 합니다.
VAE의 핵심 통계적 동기는 다루기 어려운 사후 분포, 특히 p(z|x)를 다룰 수 있는 변분 분포 q(z|x)를 사용하여 근사하는 데 있습니다. 이러한 분포 간의 Kullback-Leibler(KL) 발산을 최소화함으로써 VAE는 q(z|x)를 p(z|x)에 최대한 가깝게 만드는 것을 목표로 합니다. 이 최적화 프로세스는 두 가지 항으로 구성된 손실 함수로 이어집니다. 하나는 재구성 가능도이고 다른 하나는 학습된 분포가 사전 분포(일반적으로 단위 가우시안)와 유사하도록 장려하는 KL 발산 항입니다.
실제로는 인코더가 단순성을 위해 대각 공분산 행렬을 가정하고 각 잠재 차원에 대한 평균과 분산을 출력합니다. '재매개변수화 트릭'은 샘플링 프로세스를 통한 역전파를 가능하게 하는 데 사용됩니다. 즉, 단위 가우시안에서 무작위 샘플 ε를 추출한 다음 학습된 평균(μ) 및 분산(σ)으로 변환하여 z = μ + σε로 만듭니다. 이를 통해 확률적 특성을 유지하면서 분포의 매개변수를 최적화할 수 있습니다.
VAE의 잠재 공간은 표준 오토인코더에 비해 상당한 이점인 연속성과 부드러움으로 특징지어집니다. 이러한 부드러운 잠재 공간은 생성 작업에 유리합니다. 사전 분포에서 샘플링함으로써 디코더는 학습 데이터와 유사한 새로운 데이터 인스턴스를 생성할 수 있습니다. 예를 들어, MNIST 숫자로 학습된 VAE는 새로운 실제 손글씨 숫자를 생성할 수 있으며, 서로 다른 숫자는 잠재 공간의 다른 영역을 차지하고 그 사이의 부드러운 전환을 허용합니다.
VAE는 강력한 데이터 표현, 이상 탐지 및 생성 모델링이 필요한 작업에 유용합니다. 데이터 포인트 간의 부드러운 보간을 생성하는 능력은 애니메이션의 중간 프레임 생성 또는 오디오 샘플 간의 보간과 같은 응용 프로그램에도 적합합니다. 재구성 및 KL 발산 항의 가중치를 조정하는 유연성은 재구성 정확도와 잠재 공간 규칙성 간의 균형을 미세 조정할 수 있게 하여 분리된 VAE와 같은 모델로 이어집니다.
Variational Autoencoders 하이라이트
확률론적 잠재 공간 인코딩
생성 모델링 기능
부드러운 잠재 공간 표현
입력 데이터 재구성
인코더-디코더 아키텍처
학습을 위한 재매개변수화 트릭
분포 일치를 위한 KL 발산
단위 가우시안 사전 가정
잠재 분포의 평균 및 분산 학습
분리된 잠재 표현 (매개변수 조정 포함)
잠재 공간에서의 데이터 포인트 간 보간
Variational Autoencoders 시작하기
인코더 네트워크 정의: 입력 데이터를 잠재 분포(평균, 분산)의 매개변수에 매핑합니다.
디코더 네트워크 정의: 샘플링된 잠재 변수를 다시 매핑하여 입력 데이터를 재구성합니다.
손실 함수 구현: 재구성 오류와 학습된 분포와 사전 분포 간의 KL 발산을 결합합니다.
재매개변수화 트릭 적용: 학습 중 샘플링 프로세스를 통한 그래디언트 흐름을 가능하게 합니다.
모델 학습: 역전파를 사용하여 네트워크 매개변수를 최적화합니다.
새로운 데이터 생성: 사전 분포에서 샘플링하고 디코더를 통해 전달합니다.
Variational Autoencoders의 사용 사례
- 생성 모델링
- 데이터 보간
- 이상 탐지
- 표현 학습
- 이미지 생성
- 특징 추출
- 데이터 노이즈 제거







