1. 오토인코더
- 비지도 학습의 형태로 입력 데이터의 효율적인 표현( = 코드 )을 학습할 수 있는 인공 신경망
- 코드는 일반적으로 입력 데이터보다 차원이 낮음 → 차원 축소에 유용
- 훈련 데이터와 매우 유사한 새로운 데이터를 무작위로 생성할 수 있는 능력도 있음
1) 구조와 동작
구조
- 다층신경망의 구조와 기본적으로 동일
- 단, 입력과 출력은 같아야 하므로 입력 뉴런과 출력 뉴런의 개수가 동일
동작
- 기본적으로 입력과 동일한 출력을 내도록 학습
- 학습 시 각종 제약을 가해 여러 유용한 특성을 학습
- 입력보다 사이즈가 작은 출력을 내도록 제약 시 차원 축소 효과 학습
- 입력에 노이즈를 추가하고 출력으로 원 입력이 나오도록 하면 노이즈 제거 효과 학습
- 비지도 학습의 형태로 입력 벡터만 주어짐
- 실제 학습은 지도 학습의 형태로 진행 → 타겟 값을 입력 값과 동일한 것으로
- 학습 후에는 디코더를 제거한 형태로 사용
- 코드는 입력 벡터를 압축한 형태로 표현
- 입력 벡터의 중요한 특징들을 추출, 덜 중요한 특징을 버리는 형태
- 활성화 함수로 선형함수, 비용 함수로 MSE (Mean Squared Error) 를 사용하면 PCA (Principal Component Analysis) 와 같은 효과를 발휘함
<aside>
💡 뭔 소리야 이게
</aside>