오토인코더 (Autoencoder)
쉽게 풀면
친구에게 긴 이야기를 한 줄 요약으로 전달했다가, 그 한 줄만 보고 원래 이야기를 최대한 비슷하게 되살려보라고 시킨다고 상상해보세요. 요약이 핵심을 잘 담고 있을수록 복원된 이야기도 원본과 비슷해질 것입니다. 오토인코더는 정확히 이 과정을 신경망으로 구현한 것입니다. 앞부분(인코더)은 입력을 작은 차원의 "요약본"(잠재공간)으로 압축하고, 뒷부분(디코더)은 그 요약본만 보고 원래 입력을 최대한 비슷하게 재구성합니다. 입력과 출력을 비교해 복원이 잘 안 될수록 벌점을 주는 방식으로 학습시키면, 압축 과정에서 데이터의 진짜 중요한 특징만 남기는 요령을 스스로 터득하게 됩니다.
왜 중요한가
오토인코더는 레이블 없는 데이터만으로 특징을 학습할 수 있어, 대량의 비지도·자기지도 표현 학습 연구의 기본 축을 이룹니다. 압축된 잠재공간이 데이터의 핵심 구조를 담고 있다는 아이디어는 이상 탐지, 노이즈 제거, 차원 축소, 생성 모델(변이형 오토인코더 등) 등 여러 응용으로 확장되어 논문에서 반복적으로 등장합니다. 또한 사전학습된 인코더를 다른 다운스트림 작업에 재사용하는 흐름과도 맞닿아 있어, 표현 학습 전반을 이해하는 데 자주 인용됩니다.
논문에서는 이렇게 쓰입니다
이 문장은 정상적인 패턴만 잘 압축·복원하도록 학습된 오토인코더가, 한 번도 본 적 없는 비정상 데이터를 만나면 복원을 제대로 못 해서 오차가 커진다는 원리를 이용해 이상 탐지에 활용했다는 뜻입니다.
추천 시스템 분야에서는 희소한 사용자-아이템 평가 데이터를 오토인코더로 압축해, 그 잠재표현 안에 숨겨진 취향 패턴을 학습에 활용한다는 의미입니다.
이 문장은 오토인코더를 특징 추출기로 활용하는 방식으로, 압축 과정에서 학습된 표현을 다른 지도학습 작업(분류)의 입력으로 재사용했다는 뜻입니다.
조금 더 깊게 보면
논문을 읽다 보면 오토인코더의 여러 변형을 함께 마주치게 됩니다. 잠재공간에 확률분포를 가정해 새로운 데이터를 생성할 수 있게 만든 변이형 오토인코더(VAE), 입력에 인위적으로 노이즈를 섞어 강건한 표현을 학습시키는 디노이징 오토인코더, 잠재 벡터의 활성화를 제한해 희소한 표현을 유도하는 희소 오토인코더 등이 대표적입니다. 성능을 논할 때는 대체로 복원 오차(재구성 손실)를 기본 지표로 삼되, 다운스트림 작업(분류, 탐지 등)에서의 성능으로 표현의 질을 간접적으로 평가하는 경우도 흔합니다.
주의할 점
오토인코더는 단순히 입력을 그대로 베끼는 항등함수를 배우면 안 됩니다. 그래서 일부러 압축 차원을 좁게 만들거나 노이즈를 섞는 등의 제약을 걸어, 데이터를 압축하는 과정에서 의미 있는 잠재공간을 학습하도록 유도합니다. 또한 오토인코더가 학습한 표현이 항상 사람이 이해하기 쉬운 형태는 아니라는 점도 유의해야 합니다.