* 3학년 학부생이 가볍게 작성한 글이니 틀린 것이 많을 수 있습니다 가볍게 봐주세요.
이번 포스팅은 Vae: Variational Autoencoder에 대한 내용을 담으려고 한다.
기존 포스팅에서 AE에 대한 내용을 담으면서 autoencdoer가 무엇인지 대략적인 감은 알았지만, Vae 관련 내용은 초반에 이해하기 너무 어려웠다.
이번 데이터 애널리틱스 생성 모델 수업을 들으며 가장 중요하게 생각했던 한 가지는 vae의 작동 원리에 집중 했던 것 같다.
따라서 앞으로 진행 될 내용들은 수식적인 내용들 보다는 작동 원리에 집중하겠다.
cf. Autoencdoer에 대한 내용
Autoencoder
서론 최근에 보아즈 멘토 멘티 수업에서 U-Net 논문을 읽고 공부를 했다. 그리고 나서 Autoencoder 공부하니 이해가 더 잘되는 기분이다. (유사한 점이 많다.) 신기한게 vgg paper 논문 공부때도 그렇고,
hyeong1197.tistory.com
목차
- 어떻게 이미지를 확률 분포 관점으로 볼 수 있을까? (Ae vs Vae)
- Vae 핵심 (표준 정규 분포를 랜덤 샘플링)
- KL 발산에 대한 확률적 이해 -> 다음 포스팅
- 결론
어떻게 이미지를 확률 분포 관점으로 볼 수 있을까?
사전 이해
1. MNIST 데이터 예시

딥러닝 초반에 가장 많이 활용하는 MNIST 데이터이다. 기본적으로 MNIST 데이터는 흑백 이미지이며, 하나의 이미지
당: 1 x 28 x 28 의 픽셀을 갖는 것을 확인 할 수 있다.
각 픽셀은 0 ~255 의 값을 갖으며 이 값을 통해 손글씨의 밝기를 나타낸다.

2. 기본 신경망 이해
가장 먼저 알아야할 사항은 신경망 구성시 Input 채널과 Output 채널의 수이다.

input size: 변수의 수
output size: 출력 층의 수

따라서 이와 같은 예시에선 변수가 총 3개이므로 신경망의 input을 3으로 해야 한다.
이런 이유로 이미지 문제를 다룰때 DNN 보다 CNN을 사용하는 이유는
- 각 픽셀 = 가중치 = 변수의 수 -> 추정해야할 파라미터의 수가 너무 많아짐
- 공간 상의 정보를 잃기 때문임
위와 같은 이유로 CNN을 사용한다는 점을 미리 포스팅 했으니 참고 하면 된다.
CNN(Convolutional Neural Network)
이번 시간에는 대표적인 cv 알고리즘인 CNN에 대하여 설명할 것이다. 최근에 보아즈 멘토 멘티 수업 중 vgg paper내용이 끝난 후, 함께 정리할겸 글을 작성해 보았다. 기초적인 내용들은 이미 충분한
hyeong1197.tistory.com
3. 결론
앞에 두 파트로 이미지의 각 픽셀은 가중치의 역할을 하며, 모든 픽셀들의 수가 변수의 수임을 알았다.
즉, MNIST 데이터를 예시로 이미지 하나당 1 x 28 x 28 의 즉, 784개의 변수의 수를 갖는다. 변수의 수는 차원의 수와 같으므로 784 차원 공간 속에 존재한다는 것이다.
- 픽셀 하나에 대한 확률 분포

- 픽셀 두개에 대한 확률 분포

두 픽셀은 변수의 수가 하나이므로 2차원 분포 하나의 값을 따른다

이런 2차원 공간 속에 한 점을 따른 다는 의미로 해석을 할 수 있다.
- 이미지 한장 당 분포 (픽셀 784개의 분포)
MNIST의 예시로 784개의 픽셀이 하나의 이미지이며, 784차원의 공간속에 한점으로 표현 된다.
기존 다루었던 분류와 예측 모델은
- P (Y|X): 즉, X의 변수가 주어졌을 때 Y를 예측하는 것
이었다면, Vae와 같은 생성형 모델에서는
- P (X|Y): 즉, y (실제 정답) 의 변수가 주어졌을 때 X를 예측하는 것
로 문제를 바꿀 수 있다.
따라서, 내가 이해하기론 이미지 한장당 784차원 속에서 하나의 점으로 존재하며, 딥러닝을 학습시킬때 여러 수의 이미지를 사용하니 각 이미지 포인트를 기준으로 이미지가 따르는 사후 확률 분포를 추정할 수 있다고 이해를 하였다.
MNIST 예시


이런 식으로 이미지를 확률 분포로 관점으로 생각할 수 있다.
4. Ae vs Vae
작성 중..
'딥러닝' 카테고리의 다른 글
Titans: Learning to Memorize at Test Time (0) | 2025.04.02 |
---|---|
Automl (data analysis)을 위한 LLM (Multi modal에서 idea 따오기) (0) | 2025.01.08 |
FLEX .. 딥러닝 독파 시작 (2) | 2023.12.16 |
Autoencoder (0) | 2023.08.05 |
CNN(Convolutional Neural Network) (1) | 2023.07.31 |