본문 바로가기

Machine Learning/Paper3

[논문 구현] Auto-Encoding Variational Bayes (Varitional Auto Encoder) 앞서 VAE에 대해 이론에 대해 살펴보았다. (논문 리뷰)이제 이를 어떻게 PyTorch 코드로 구현할 수 있는지에 대해 알아보도록 하겠다. 논문에서는 흑백 이미지를 사용했지만 여기서는 컬러 이미지인 CelebA 데이터셋을 사용하도록 하겠다. 해당 코드는 여기에서 살펴볼 수 있다.  Baseimport base librariesimport torch, torchvisionfrom torch import nnimport numpy as npimport torch.nn.functional as F Configuration parameters설정과 관련된 값들과 hyperparameter 등을 정한다.이미지 크기는 빠른 학습 결과를 보기위해 100x100으로 해두었다.원래 사이즈는 178×218 이다.late.. 2024. 8. 5.
[논문 리뷰] Auto-Encoding Variational Bayes (Varitional Auto Encoder) 이번 포스팅에서는 image generative model의 기본 모델인 Variational Auto Encoder(이하 VAE)에 대해 정리하도록 한다. 단순하게 VAE의 구조와 관련 수식을 정리하는 것이 아니라 왜 VAE가 Encoder와 Decoder의 구조를 가지게 되었고 수식은 어떻게 나오게 되었는지 논리적인 흐름을 따라가고자 한다. First approach먼저 최초의 동기는 저차원의 latent space에서 샘플링 된 latent variable $z$를 통해 고차원의 이미지 $x$를 생성하고자하는 것이다저차원의 latent space는 고차원의 이미지에 대한 feature를 다룬다.예를 들어 사람 얼굴 이미지를 생성하는 것이 목적이라면 latent space의 각 차원은 사람 얼굴에 대.. 2024. 8. 5.
[논문 리뷰] Deep Residual Learning for Image Recognition ResNet으로 유명한 Deep Residual Learning for Image Recognition의 논문을 리뷰한다.ResNet은 CNN을 아키텍처이지만, 이 논문에서 시사하는 바는 딥러닝에 일반적으로 통용되기 때문에 꼭 읽어봐야할 논문이다.(기계 번역을 위한 모델인 Transformer에서도 skip(shortcut) connection을 사용하는 것을 확인할 수 있다) 이번 글을 통해 논문에서 제기하는 문제와 이를 해결하기 위한 residual learning에 대해 이해할 수 있도록 하자.(최대한 논문의 내용을 베이스로 하되 좀 더 쉽게 이해하도록 풀어쓰기 위해 노력하였다)  * 이 논문에서 얘기하는 "plain" network는 이 논문에서 제안하는 shortcut connection을 적용.. 2024. 7. 1.