오토인코더는 기본적으로 다음 세 가지 주요 구성 요소로 나뉩니다.
• 인코더(encoder): 입력 데이터를 더 낮은 차원의 잠재 공간으로 압축하는 역할을 합니다. 인코더는 입력 데이터에서 핵심 특징을 추출하고, 이를 저차원으로 변환합니다. 이 과정에서 차원 축소가 이루어집니다.
• 잠재 공간(latent space): 인코더를 통해 압축된 데이터가 표현되는 공간입니다. 원본 데이터의 핵심 특징이나 패턴이 요약되어 표현됩니다.
• 디코더(decoder): 잠재 공간에서 표현된 데이터를 다시 원본 데이터로 복원(재구성)하는 역할을 합니다. 인코더의 역과정으로 작동하며, 원래 입력과 최대한 비슷하게 출력을 생성합니다.

▲ 그림 1-34 오토인코더
출처: https://blog.keras.io/building-autoencoders-in-keras.html