본문 바로가기
데이터 분석

오토인코더의 구조와 활용 상황

by hidden-state 2026. 2. 13.

오토인코더는 입력 데이터를 스스로 복원하도록 학습하는 신경망 구조이다.

입력을 한 번 압축한 뒤 다시 원래 형태에 가깝게 복원한다.

이 과정에서 데이터의 중요한 특징이 잠재 표현으로 학습된다.


1. 오토인코더가 적합한 상황

오토인코더는 정답이 없는 데이터에서 구조를 파악하고 싶을 때 사용된다.

입력과 동일한 출력을 목표로 하지만 단순 복사가 아니라 압축을 거치기 때문에 의미 있는 표현이 만들어진다.

  • 고차원 데이터를 더 작은 차원으로 줄이고 싶을 때
  • 노이즈가 섞인 데이터를 원래 형태에 가깝게 복원하고 싶을 때
  • 정상 패턴을 학습해 이상 데이터를 구분하고 싶을 때
  • 다른 모델에 사용할 특징 벡터를 만들고 싶을 때

즉 오토인코더는 예측보다는 표현 학습에 초점이 맞춰진 구조이다.

오토인코더 구조


2. Encoder의 개념

Encoder는 입력 데이터를 더 작은 차원의 벡터로 변환하는 부분이다.

레이어를 거치며 차원은 점점 줄어든다.

최종적으로 만들어지는 벡터를 잠재 표현이라고 한다.

이 잠재 표현은 데이터의 핵심 정보를 담고 있다.

  • 입력 → 차원 감소
  • 정보 압축 역할
  • 잠재 벡터 생성

3. Decoder의 개념

Decoder는 잠재 표현을 다시 원래 입력 형태로 복원하는 부분이다.

줄어들었던 차원은 점점 다시 커진다.

출력은 입력과 최대한 유사하도록 학습된다.

  • 잠재 벡터 → 차원 증가
  • 입력과 비슷한 데이터 생성

복원 오차는 잠재 표현이 얼마나 잘 학습되었는지를 보여주는 기준이 된다.


4. Encoder와 Decoder의 차이

구분 Encoder Decoder
역할 입력 압축 압축 표현 복원
차원 변화  감소 증가
목적 핵심 정보 추출 입력 복원

 


5. 정리

오토인코더는 입력을 압축하고 다시 복원하도록 학습하는 구조이다.

Encoder는 데이터를 요약하고 Decoder는 그 요약을 바탕으로 원래 형태를 만든다.

차원 축소나 노이즈 제거 같은 문제에서 활용될 수 있다.