용어집

자동 인코더

자동 인코더가 고급 AI 기술을 통해 데이터를 압축하고 노이즈를 줄이며 이상 징후 감지, 특징 추출 등을 지원하는 방법을 알아보세요.

YOLO 모델을 Ultralytics HUB로 간단히
훈련

자세히 알아보기

자동 인코더는 주로 비지도 학습 작업, 특히 차원 축소특징 추출에 사용되는 인공 신경망(NN)의 한 유형입니다. 기본 목표는 입력 데이터의 압축된 표현(인코딩)을 학습하는 것으로, 일반적으로 네트워크가 자체적으로 입력을 재구성하도록 훈련하는 것입니다. 입력 데이터를 저차원 잠재 공간에 매핑하는 인코더와 이 압축된 표현에서 원본 데이터를 재구성하는 디코더의 두 가지 주요 부분으로 구성됩니다. 이 프로세스를 통해 자동 인코더는 학습 데이터의 가장 두드러진 특징을 포착합니다.

자동 인코더 작동 방식

자동 인코더의 작동은 인코딩과 디코딩의 두 단계로 이루어집니다.

  1. 인코더: 이 부분은 입력 데이터(예: 이미지 또는 벡터)를 받아 잠재 공간 또는 병목 현상이라고 하는 저차원 표현으로 압축합니다. 이 압축을 통해 네트워크는 의미 있는 패턴을 학습하고 노이즈나 중복성을 제거합니다. 인코더는 일반적으로 여러 개의 레이어로 구성되며, ReLU 또는 시그모이드와 같은 활성화 함수를 사용하는 경우가 많습니다.
  2. 병목 현상: 입력 데이터의 압축된 저차원 표현이 있는 자동 인코더의 중앙 레이어입니다. 필수 정보를 캡처하는 '코드'입니다. 이 계층의 차원은 매우 중요한 하이퍼파라미터입니다.
  3. 디코더: 이 부분은 병목현상에서 압축된 표현을 가져와서 원본 입력 데이터를 최대한 정확하게 재구성하려고 시도합니다. 인코더의 구조를 미러링하지만 역으로 데이터를 원래 크기로 다시 업샘플링합니다.

학습에는 입력 데이터를 네트워크에 공급하고 연속 데이터의 경우 평균 제곱 오차(MSE), 이진 데이터의 경우 이진 교차 엔트로피와 같은 손실 함수를 사용하여 출력(재구성된 데이터)을 원래 입력과 비교하는 과정이 포함됩니다. 이러한 재구성 오류를 최소화하기 위해 네트워크의 가중치는 역전파Adam 또는 SGD와 같은 최적화 알고리즘을 사용하여 조정됩니다.

자동 인코더의 유형

기본 자동 인코더 아키텍처에는 여러 가지 변형이 있으며, 각각 특정 작업에 맞게 설계되었습니다:

  • 노이즈 제거 자동 인코더: 노이즈로 인해 손상된 입력을 깨끗한 버전으로 재구성하도록 훈련된 인코더입니다. 따라서 이미지 노이즈 제거와 같은 작업에 강력합니다. 노이즈 제거 자동 인코더에 대해 자세히 알아보세요.
  • 스파스 자동 인코더: 병목 계층에 희소성 페널티(일종의 정규화)를 도입하여 네트워크가 한 번에 몇 개의 노드만 활성화되는 표현을 학습하도록 합니다.
  • 가변 자동 인코더(VAE): 잠재 공간에 대한 확률적 매핑을 학습하여 학습 데이터와 유사한 새로운 데이터 샘플을 생성할 수 있는 생성형 AI 모델입니다. VAE 백서를 읽어보세요.
  • 수축형 자동 인코더: 손실 함수에 페널티 항을 추가하여 인코더가 입력의 작은 변화에도 견고한 표현을 학습하도록 유도합니다.

실제 애플리케이션

자동 인코더는 다양한 머신러닝(ML) 애플리케이션에 사용되는 다용도 도구입니다:

  • 이상 탐지: 자동 인코더는 데이터의 정상 패턴을 학습함으로써 이상값이나 이상 징후를 식별할 수 있습니다. 특정 데이터 포인트의 재구성 오류가 높으면 입력이 학습 데이터와 크게 다르다는 것을 의미하며, 금융 사기 거래나 제조 장비 결함과 같은 이상 징후를 나타낼 수 있습니다. 이상 징후 탐지에 대해 자세히 알아보세요.
  • 이미지 압축 및 노이즈 제거: 자동 인코더는 이미지의 압축 표현을 학습하여 효과적으로 압축을 수행할 수 있습니다. 노이즈 제거 자동 인코더는 특히 이미지에서 노이즈를 제거하는 데 사용되며, 이는 의료 이미지 분석 (예: MRI 또는 CT 스캔 품질 향상) 또는 오래된 사진 복원에 유용합니다. 의료용 이미징 솔루션을 참조하세요.
  • 차원 축소: 주성분 분석(PCA)과 유사하게 자동 인코더는 데이터 차원을 줄이면서도 PCA가 포착할 수 없는 복잡한 비선형 관계를 포착할 수 있습니다. 이는 데이터 시각화 및 다른 ML 모델의 전처리 단계에 유용합니다.
  • 특징 학습: 인코더 부분은 이미지 분류 또는 객체 감지와 같은 다운스트림 작업의 특징 추출기로 사용될 수 있으며, 종종 원시 데이터보다 더 강력한 특징을 제공합니다. 다음과 같은 모델은 Ultralytics YOLO 와 같은 모델은 전문화된 백본을 사용하지만, 자동 인코더 원칙은 표현 학습에 정보를 제공합니다.

자동 인코더와 관련 개념 비교

  • PCA: 둘 다 차원을 줄이기는 하지만, PCA는 선형 변환으로 제한됩니다. 신경망인 자동 인코더는 복잡한 비선형 매핑을 학습할 수 있어 복잡한 데이터 세트의 표현을 개선할 수 있습니다.
  • GAN: 생성적 적대 신경망(GAN) 은 주로 매우 사실적인 새로운 데이터를 생성하기 위해 설계되었습니다. 자동 인코더의 일종인 VAE도 데이터를 생성할 수 있지만 잘 구조화된 잠재 공간을 학습하는 데 중점을 두는 반면, GAN은 출력 충실도가 뛰어나지만 때로는 잠재 공간 해석 가능성을 희생하기도 합니다.
  • CNN과 트랜스포머: 자동 인코더는 아키텍처 패턴(인코더-디코더)을 정의합니다. 인코더와 디코더 내의 빌딩 블록으로 이미지 데이터용 컨볼루션 신경망(CNN) 또는 순차 데이터용 트랜스포머와 같은 다른 네트워크 유형을 활용하는 경우가 많습니다.

도구 및 구현

자동 인코더는 널리 사용되는 딥러닝(DL) 프레임워크를 사용하여 구현할 수 있습니다:

Ultralytics HUB와 같은 플랫폼은 비지도 자동 인코더 학습보다는 주로 감지 및 세분화와 같은 지도 작업에 중점을 두지만 데이터 관리 및 모델 학습을 포함한 전반적인 ML 워크플로우를 용이하게 합니다.

모두 보기