변이형 오토인코더의 역사
변이형 오토인코더는 2013년 12월 킹마(Kingma)와 웰링(Welling) 그리고 2014년 1월 르젠드(Rezende), 무함마드(Mohamed), 위스트라(Wierstra)가 동시에 발견한 변이형 오토인코더는 생성 모델의 한 종류로 개념 벡터를 사용하여 이미지를 변형하는데 아주 적절하다.
오토인코더는 입력을 저차원 잠재공간으로 인코딩한 후 디코딩하여 복원하는 네트워크이다. 변이형 오토인코더는 딥러닝과 베이즈추론(Bayesian Inference)의 아이디어를 혼합한 오토인코더의 최신버전이다.
고전적인 오토인코더는 이미지를 입력받아 인코더 모듈을 사용하여 잠재 벡터 공간으로 매핑한다. 그다음 디코더 모듈을 사용하여 원본 이미지와 동일한 차원으로 복원하여 출력한다.
오토인코더는 원번 입력을 재구성하는 방법을 학습한다. 코딩에 여러 제약을 가하면 오토인코더가 더 흥미로운 또는 덜 흥미로운 잠재 공간의 표현을 학습한다. 일반적으로 코딩이 저차원이고 희소하도록 제약을 가한다. 이런 경우 인코더는 입력 데이터의 정보를 적은 수의 비트로 압축하기 위해 노력한다.
현실적으로 이와 같은 전통적인 오토인코더는 특별히 유용하거나 구조화가 잘된 잠재 공간을 만들지 못한다. 압축도 아주 뛰어나지 않는다. 이런 이유로 인하여 시대의 흐름에서 대부분 멀어졌다.
VAE는 오토인코더에 약간의 통계기법을 추가하여 연속적이고 구조적인 잠재 공간을 학습하도록 만들었다. 결국 이미지 생성을 위한 강력한 도구로 탈바꿈 되었다.
입력이미지를 잠재 공간의 고정된 코딩으로 압축하는 대신 VAE는 이미지를 어떤 통계 분포의 파라미터로 변환한다.
이는 입력 이미지가 통계적 과정을 통해서 생성되었다고 가정하여 인코딩과 디코딩하는 동안 무작위성이 필요하다는 것을 의미한다. VAE는 평균과 분산 파라미터를 사용하여 이 분포에서 무작위로 하나의 샘플을 추출한다. 이 샘플을 디코딩하여 원본 입력으로 복원한다. 이런 무작위한 과정은 안정성을 향상하고 잠재 공간 어디서든 의미있는 표현을 인코딩하도록 만든다. 즉 잠재 공간에서 샘플링한 모든 포인트는 유효한 출력으로 디코딩된다.
댓글 없음:
댓글 쓰기