이 포스팅은 오토인코더의 모든것의 내용을 다량 참조하고 있습니다.
목차는 아래와 같습니다.
1. Manifold Learning & AutoEnocoder Basic
2. RBM for Stacked AutoEncoder
3. Stacked AutoEncoder
4. Sparse AutoEncoder
5. Variational AutoEncoder
6. Application in Medical Image
2. RBM (Restricted Boltzmann Machine)
RBM은 Stacked Autoencoder를 이해하기 위해 알아야하는 알고리즘입니다.
그리고 해당 내용을 이해하기 위해 조금 수학이 들어가게 됩니다.
보통의 Autoencoder 처럼 Hidden layer(latent layer)가 있으며 유사해 보입니다.
하지만 조금 다른 점은 여기서의 Layer는 Bipartite Graph를 사용한다는 것입니다.
(참고 : Bipartite Graph는 2개의 정점을 가지고 서로 간 연결에는 방향성이 없고 같은 layer 간의 노드는 연결이없는 graph를 말합니다. 이것이 RBM의 제한을 걸고 Restrict란 이름이 붙은 이유입니다.)
위 그림을 보시면 klog(omega)의 경우 통계역학, Q/T는 열역학에서 가져온 개념입니다. 이 두식을 정리하면 오메가에 대한 식으로 아타낼 수 있게됩니다. 그리고 Q (열에너지) 대신에 C라는 상수로 견하면 아래와 같은 식이 나오게 됩니다.
exponential 값을 Boltzamnn factor라고 하며 Z의경우 Partition function(분배함수)라고 하여 Nomalization이 되게 됩니다.
그리고 E값에 다음과 같은 식을 도입하면 찾고자하는 확률을 알 수 있게 됩니다.
Training 방향의 경우 아래와 같게 됩니다.
Stacked Autoencoder
Basic Autoencoder의 경우 Back Propagation을 통해 학습을 진행합니다. 하지만 이 경우 Layer와 Unit이 많아지면 Local Minima나 Gradient Vanishing이 생길 수 있습니다. 따라서 이를 위해 Deep Belief Net이 도입되게 되고 이 Network가 RBM을 사용한 Stackted Autoencoder입니다.
기존의 Autoencoder와 비슷해보이지만 차이점은 아래 그림과 같이 Stacked Autoencoder의 경우 Greedy Layer-wise Training을 하게 됩니다. 즉, Fine Tunning 식으로만 Back propagation을 하고 다른 경우 2개의 layer만 있는 경우 즉, Bipartite graph를 활용한 RBM으로 학습을 진행하게 됩니다.
Sparse Autoencoder
Sparse Autoencoder는 Hidden Unit이 큰 경우 사용합니다.
Sparse Parameter p를 도입합니다. 전체적인 Loss term을 보면 Regularization을 진행한 것으로 이해할 수 있는데요.
p와 Activated Hidden Unit을 도입하여 이 두 분포의 KL divergence를 기존 Basic Autoencoder의 Loss term에 추가합니다.
KL Divergence
KL Divergence는 두 분포의 차이를 계산하기 위한 것으로 이를 위해 엔트로피(정보)의 차이를 이용한 것입니다.
KL Divergence의 경우 아래와 같은 그래프를 그리게 됩니다.
이 KL Divergence에는 중요한 두가지 성질이 있습니다.
첫번째 성질의 경우 0보다 크거나 같은 것은 거리개념에서도 성립하니 괜찮지만 순서를 바꿧을 때에는 값이 같지 않다는 것에서 이는 거리와는 다른 개념이라는 것입니다.
이 엔트로피 개념의 경우 다음에 추가적으로 글을 작성하도록 하겠습니다.
다시 Sparse Autoencoder로 돌아와서 이러한 Regularization Term으로 인해 Sparse Autoencoder는 Sparsity를 도입하여 Hidden layer의 Acitivity를 제한할 수 있게됩니다.
'Deep Learning' 카테고리의 다른 글
AutoEncoder - Basic부터 응용까지 (1) (0) | 2021.07.13 |
---|