딥러닝 수업 기말을 위해 공부를 해야해서
해당 영상을 참고해 공부해 봤다. 근데 정말 잘 가르친다... 강추..
모든 정보와 슬라이드는 "MIT 6.S191 (2023): Deep Generative Modeling"을 참고했다.
Supervised Learning | Unsupervised Learning | |
Data | (x, y) x : data, y : label | x : data , no label |
Goal | Learn function to map x→y | Learn the hidden or underlying structure of the data |
Examples | Classification, regression | clustering, feature reduction |
Generative Modeling
Goal: Take as input training samples from some distribution and learn a model that represents that distribution
Why generative models?
- Debiasing → Capable of uncovering underlying features in a dataset
- Outlier detection 가능
Latent variable models
그림자 연극에서 그림자(Sample)를 만드는 물체가 Latent
Autoencoder
Unsupervised approach for learning a lower-dimensional feature representation from unlabeled training data
📌 lower-dimensional 로 만드는 이유는 효율성 때문에
어떻게 latent space에 대해서 알 것인가?
- feature 들을 이용해 original data를 reconstruct 함
- 이후 reconstruct 한 것과 original을 비교 해 Loss 계산
✅ Autoencoding is a form of compression
Bottleneck hidden layer forces network to learn a compressed latent representation
Reconstruction Loss forces the latent representation to capture(encode) as much “information” about the data as possible
VAE [Variational Autoencoders]
latent space z의 probability 를 normal distribution으로 보내서 확률적으로 바꿈
Regularization : prior를 Normal Gaussian으로 줌 ➡️ $D(q_{\phi}(z|x) || p(z))$ 값을 KL divergence 통해 latent와 prior 차이 알아내기
🤔왜 정규화를 해야할까?
- Continuity : latent space에서 가까운 점들이 decoding 이후에도 비슷한 결과물이 되도록
- Completeness : latent space에 있는 sampling이 decoding 이후에 의미 있는 content가 되기 위해
🤔 왜 normal 로 해야할 까?
- Variance가 작으면 pointed distribution 이 됨 ➡️좁은 공간에 갇히게 되면서 다양성이 떨어지고, decoder 때 품질이 떨어짐
- Different means → Discontinuities
결과적으로 normal 로 Regularization을 해줘서 continuity 와 completeness를 달성할 수 있다.
Back Propagation 불가능
➡️ back propagation은 완벽히 deterministic 한 layer를 요구하지만 sampling은 randomness 함
Reparameterization
$z \sim N({\mu}, {\sigma}^2)$로 하는게 아니라 $z={\mu} + {\sigma} {\bigodot} {\epsilon}$
${\epsilon}$은 아예 model parameter와 독립적으로 보기 때문에 backprop이 가능해짐
Latent perturbation
각 latent의 값을 바꿔보면서 어떤 feature를 나타내는 지 알 수 있음
➡️ 각 latent가 하나의 feature만 나타내도록 하는 것이 이상적임 ➡️ disentanglement
Latent space disentanglement with ${\beta}$-VAEs
$$L({\theta}, {\phi}, x, z, {\beta}) = {\mathbb{E}}{q{\phi}(z|x)}[log_{p_{\theta}}(x|z)]-{\beta} D_{KL}(q_{\phi}(z|x)$$
베타를 늘리면 efficient latent encoding을 유도함 ➡️ disentanglement
© Alexander Amini and Ava Amini
MIT Introduction to Deep Learning
IntroToDeepLearning.com
'딥러닝' 카테고리의 다른 글
Language Deep Learning 찍먹 (2) | 2024.06.13 |
---|---|
MIT 6.S191 (2023): Convolutional Neural Networks (1) | 2024.06.07 |
MIT 6.S191 (2023): Recurrent Neural Networks, Transformers, and Attention (44:50~) (0) | 2024.06.07 |
MIT 6.S191 (2023): Recurrent Neural Networks, Transformers, and Attention (~44:50 RNN, LSTM) (0) | 2024.06.06 |
MIT 6.S191 (2023): Deep Generative Modeling (41:25~ GAN) (0) | 2024.06.06 |