IE가 어른이 되기까지

[Deep Learning] AutoEncoder (AE) 본문

DL/Algorithms

[Deep Learning] AutoEncoder (AE)

기모랑의 초코 2023. 2. 17. 13:41

 

 

 

 

AutoEncoder은 비교사학습을 위한 딥러닝입니다.

이번 글에서는 AutoEncoder에 대해 알아보도록 하겠습니다.

 

 

* 비교사학습 : Output이 존재하지 않는 학습

 

 

 

 

 

 

AutoEncoder이란 ?

 

 

AutoEncoder은 Input과 Output을 동일하게 설정함으로써

신경망을 통해 비지도 학습을 구현한 방법입니다.

 

잘 모르겠으니 정확히 알아보도록 하겠습니다.

 

 

 

 

 

위 그림을 보면 Encoderinput인 x를 압축시켜서

새로운 변수 h(x)를 만듭니다.

 

압축했기 때문에 h(x)는 기존 노드 수보다 적은 노드 수를 가집니다.

 

Decoder를 통해 원래의 x로 복원합니다.

이처럼 AutoEncoder은 복원된 x와 실제 x와의 차이가 최소가 되도록

학습하는 것입니다.

 

 

 

 

 

 

따라서 Loss Function (손실함수) 은 위와 같이

실제 x와 예측한 x간의 차이로 정의됩니다.

 

 

 

 

 

 

 

AutoEncdoer 종류

 

 

 

 

AutoEncoder은 h(x)의 노드 수에 따라

다양한 종류의 AE가 존재합니다.

 

이 중, 'Denoising AutoEncoder'에 대해 알아보겠습니다.

 

 

 

 

그림을 보면 'Denoising AutoEncoer'은

Noise를 추가해줍니다.

 

Noise와 같은 어려운 문제도 학습해냈기 때문에 복원능력이 좋습니다.

 

 

 

 

 

 

 

PCA vs AutoEncdoer

 

https://piscesue0317.tistory.com/51
 

[Machine Learning] 주성분 분석 (비지도학습 / 데이터 축소)

만약 예측 시 필요한 독립변수 간 편차가 다르면 어떻게 해야할까요 ? 이런 경우, 각 독립변수에 적절한 가중치를 반영하여 유용한 변수를 생성할 수 있습니다. 이것이 바로 이 글에서 다루고자

piscesue0317.tistory.com

 

위는 PCA (주성분 분석) 에 관한 내용입니다.

PCA 또한 AutoEncoder과 같이 비지도학습에 쓰이는 알고리즘입니다.

 

PCA는 원변수의 선형 결합을 통해 새로운 변수를 생성해내고,

AutoEncoder은 원변수의 비선형 결합을 통해 생성합니다.

 

하지만 PCA는 제 1주성분이 제 2주성분보다 설명을 잘한다는 것을 알 수 있지만,

AutoEncoder은 새로 생성된 변수들 중 어떤 변수가 더 중요한지

판단하기 어렵다는 특징이 존재합니다.

 

 

 

 

 

 

 

 

 

 

 

Comments