공부정리/Computer Vision
[GAN] VAE(Variational Auto-Encoder)
sillon
2024. 1. 5. 14:34
728x90
반응형
VAE
- 목표: Input image X를 잘 설명하는 feature를 추출하여 Latent vector z에 담고, 이 Latent vector z를 통해 X와 유사하지만 완전히 새로운 데이터를 생성하는 것
- 각 feature가 가우시안 분포를 따른다고 가정하고 latent z는각 feature의 평균과 분산값을 나타냄

수식을 약간 곁들여 이를 표현하면 아래와 같이 나타낼 수 있다.
- p(z): latent vector z의 확률밀도함수. 가우시안 분포를 따른다고 가정
- p(x|z): 주어진 z에서 특정 x가 나올 조건부 확률에 대한 확률밀도함수
- θ: 모델의 파라미터
VAE의 구조
Input image X를 Encoder에 통과시켜 Latent vector z를 구하고, Latent vector z를 다시 Decoder에 통과시켜 기존 input image X와 비슷하지만 새로운 이미지 X를 찾아내는 구조입니다.VAE는 input image가 들어오면 그 이미지에서의 다양한 특징들이 각각의 확률 변수가 되는 어떤 확률 분포를 만들게 됩니다. 이런 확률 분포를 잘 찾아내고, 확률값이 높은 부분을 이용하면 실제에 있을법한 이미지를 새롭게 만들 수 있을 것입니다.




VAE의 수식적 증명
모델의 파라미터θ가 주어졌을 때 우리가 원하는 정답인 x가 나올 확률이 pθ(x) 높을 수록 좋은 모델이라고 할 수 있습니다. 즉 pθ(X)를 최대화 하는 방향으로 VAE의 파라미터θ를 학습시키게 됩니다.

VAE는 Intractable Density를 구할 수 있으며, 여러 수식을 전개하여 Lower Bound 값을 구할 수 있다.

VAE 장단점
- 장점 : 확률 모델을 기반으로 했기 때문에, 잠재 코드를 더 유연하게 계산할 수 있다.
- 단점 : Density를 직접적으로 구한것이 아니기 때문에 Pixel RNN/CNN 과 같이 직접적으로 Density를 구한 모델보다는 성능이 떨어진다.
Reference
728x90
반응형