728x90
반응형
AutoEncoder
- 입력이 들어왔을 때, 해당 입력 데이터를 최대한 압축 시킨 후, 압축 시킨 데이터를 본래의 입력 형태로 복원시키는 신경망
- 압축하는 부분을 encoder
- 복원하는 부분을 decoder
- 압축과정에서 추출한 의미있는 데이터를 latent vector

AutoEncoder의 수식과 학습 방법
- 수식
- Input Data를 Encoder Network에 통과시켜 압축된 z값을 얻음
- 압축된 z vector로부터 Input Data와 같은 크기의 출력 값을 생성
- 이때 Loss값은 입력값 x와 Decoder를 통과한 y값의 차이
- 학습 방법
- Decoder Network를 통과한 Output layer의 출력 값은 Input값의 크기와 같아야 함(같은 이미지를 복원한다고 생각하면 됨)
- 이때 학습을 위해서는 출력 값과 입력값이 같아져야 함
Decoder의 역할
- latent feature의 경우, encoder로부터 정보를 추출해내는데, 이때 정말 잠재적인 특징을 뽑아냈는가를 확인하는 차원에서 decoder 부터 input x를 다시 활용 역전파를 하면서 특징을 잘 뽑았는지를 확인하는 용도로 쓰임
- 즉, decoder는 latent vector을 잘 찾아주기 위한 도우미 역할이라고 말할 수 있음
AutoEncoder 활용 예시
- AutoEncoder는 실제로 Input Data의 Feature를 추출할 때 많이 사용
- 주로 Dimension Reduction에 사용
- Network parameter 초기화, pre-training에 많이 사용됨
- 이 때는 Batch-Norm, Xavier Initialization과 같은 기법들이 없었음
Stacking AutoEncoder for pre-training
- weight 학습시키고 초기화 하는 것을 의미함
Denoising AutoEncoder

- AutoEncoder는 Noise가 있는 데이터에서도 잘 작동할 수 있도록 발전됨
- Denoising AutoEncoder는 Encoder에 Noise가 있는 Input data를 넣어주고, Decoder로부터 나온 Output이 Noise가 적용되지 않은 Input data와 가깝도록 학습
- 이를 통해 Noise가 있는 상황에서도 안정적인 결과를 도출할 수 있도록 함
728x90
반응형
'Deep Learning > [논문] Paper Review' 카테고리의 다른 글
R-CNN (0) | 2023.07.06 |
---|---|
GAN: Generative Adversarial Nets (0) | 2023.07.06 |
SPPNet (0) | 2023.07.06 |
Faster R-CNN (0) | 2023.07.06 |
YOLO: You Only Look Once: Unified, Real-Time Object Detection (1) | 2023.07.06 |