오토인코더

오토인코더의 재구성 손실 최소화가 가지는 의미는 고차원 데이터를 가장 잘 설명하는 핵심적이고 본질적인 특징만을 선택적으로 추출하여 압축하는 방법을 학습해야 함. 이는 정보이론적으로 고차원 데이터의 정보를 저차원 잠재 벡터가 최대한 담는 상호정보량 최대화와 동일함.

만약 잠재공간의 차원이 특성 공간보다 크다면(Overcomplete, 과완전) 해당 잠재공간은 어떻게 형성될까? 차원 확대를 이용한 커널 함수의 의미(커버의 정리, 저차원에서 비선형적인 특징을 가진 데이터를 고차원으로 매핑하여 선형(초평면)으로 분리할 수 있음.)를 생각해보면 적절한 차원 향상으로 더 좋은 솔루션을 구할 수도 있음.

잠재 공간(Latent Space)은 원본 고차원 공간(특성 공간, Feature Space)의 데이터를 압축하고 추상화한 저차원 표현임. 잠재(Latent)라는 단어는 이 공간의 차원들이 정의상 직접적으로 관측 가능하지 않으며, 대부분의 경우 명확한 물리적/개념적 의미를 갖지 않는다는 것을 의미함.

잠재 공간의 목표는 원본 데이터의 가장 중요한 정보와 패턴을 보존하면서 차원을 줄이는 것.

오토인코더의 저차원 잠재 공간은 원본 고차원 공간의 부분 공간이 아닌, 비선형 변환을 통해 만들어진 새로운 공간임. 저차원 잠재 공간이 부분 공간의 세 가지 공리를 만족한다는 의미는 고차원의 좌표축 본질이 저차원에서도 변하지 않는다는 점인데 만약 잠재 공간이 입력 공간의 부분 공간이라면, 단순히 고차원의 특정을 저차원의 차원 수만큼 선택하는 것과 같음. 이는 의미있는 압축이 아님.

다양체: 미분 기하학 및 위상수학 등에서 국소적으로 유클리드 공간을 닮은 공간을 말함.
다양체 가설: 고차원 데이터는 고차원 공간이 포함하는 저차원 공간에 있어야 한다는 것임. 784차원에는 단순 노이즈, 단순 도형이나 복잡한 형태 등 무한한 28x28 픽셀의 이미지가 존재하지만 특정 형상(관심있는 전체 집합. ex. MNIST)을 표현하는 이미지 데이터는 해당 고차원 데이터가 포함하는 저차원 공간 위에 존재한다는 것임. 즉, sparse한 고차원 데이터를 저차원 공간에 표현할 수 있다는 의미.

매니폴드 학습은 고차원 데이터의 feature를 유지하면서 낮은 차원의 공간으로 투영할 평면을 찾는것임.

오토인코더로 축소한 잠재 공간은 실제 고차원 데이터들이 존재하는 저차원 매니폴드와는 다른 공간임. 일단 확보된 데이터가 유한적임. 그리고 일반적으로 오토인코더로 매핑하는 잠재 공간은 연속적인 유클리드 공간이라고 가정되며, 이로 인해 진짜 데이터에 대응되지 않는 의미없는 지점들이 존재함.
하지만 실제 이론적인 매니폴드는 데이터가 없는 구멍이나 빈 공간이 존재할 수 있음.

오토인코더는 재구성만 잘 되면 되므로 데이터간 거리나 연결성같은 위상적 구조를 명시적으로 보존하도록 설계되지 않음. 반면, Isomap이나 LLE같은 전통적인 매니폴드 학습 알고리즘은 이러한 위상적 구조를 보존하는 것을 직접적인 목표로 삼음. 그렇다면 오토인코더와 전통적인 매니폴드 학습 알고리즘을 결합해본다면 어떤 결과를 기대할 수 있는가?

비선형변환이 없는 오토인코더의 잠재 벡터와 PCA에 의한 차원축소 벡터는 어떤 관계가 있는가?

입력이 784차원인 데이터를 오토인코더의 인코더를 통해 바로 16차원으로 매핑된 잠재 벡터와, 중간 은닉층(512차원)을 거친 다음 16차원으로 매핑된 잠재 벡터는 같은가?

오토인코더와 U-Net의 차이는? 왜 오토인코더에서 잔차 연결을 사용하지 않는가?

희소오토인코더에서 KL 발산항에 곱하는 가중치 $\alpha$ 이 가지는 의미가 무엇인가? 또, $\beta$ -VAE와 어떤 차이가 있는가?

Denoising 오토인코더

고차원 데이터에 노이즈를 추가하여 입력 데이터로 사용하여 노이즈가 낀 고차원데이터가 주어졌을 때 원본 데이터를 복원할 조건부 분포의 가능도 $p(x\vert \hat{x})$ 을 최대화하는 것과 같음. 구현상으로는 원본과 복원된 데이터와의 차이를 최소화함. 이 학습 방식은 노이즈를 제거하는 것 뿐만 아니라, 기본 데이터 분포의 구조(매니폴드)까지 학습함. 이는 트위디의 공식으로 명확히 설명됨.

일반적인 오토인코더와의 차이로 DAE는 매니폴드 주변의 아무 지점(노이즈가 섞인 원본 데이터)에서 매니폴드로 되돌아오는 복원력 또는 벡터장을 학습하는 것과 같음. 이 복원 원리가 데이터 분포의 통계적 규칙성이며, 매니폴드의 기하학적 구조임. DAE는 이 원리를 학습하도록 강제되기 때문에, 훈련 데이터에 없던 새로운 데이터에 대해서도 더 나은 일반화 성능(강건성)을 보이는, 즉, 모집단을 더 잘 대표하는 저차원 공간을 학습함.

노이즈가 가우시안이 아닌 다른 분포를 따른다면 저차원 잠재공간의 형성이 어떻게 바뀌는가?

비선형 매니폴드 학습

고차원 데이터를 저차원 공간에서 표현하면서 내재적인 기하학적 구조 또는 입력 데이터의 특징(Feature)을 보존하는 것이 중요함. 비선형 매니폴드 학습에서 고차원 데이터의 내재적인 기하학적 구조를 보존하는것이 중요한 이유는, 단순 차원 축소가 아닌 데이터가 원래 가지고 있던 의미있는 패턴과 관계를 유지하면서 저차원 표현을 생성하는 것이 목표이기 때문. 이때 내재적인 기하학적 구조는 거리, 곡률, 접공간, 위상 구조를 의미함.

매니폴드 학습은 비지도학습의 고차원 데이터들의 차원이 불필요하게 높다는 가정(다양체 가설)에 기반함. 일반적인 매니폴드 학습은 비지도 학습임.

고차원 데이터를 저차원에 랜덤하게 투영할 시 데이터에 존재했던, 우리가 관심이 있는 구조를 체계적으로 파악할 수 없음.

랜덤 투영의 문제를 해결하기 위해 선형투영 방법들이 개발되었음.(주성분 분석, 독립 성분 분석, 선형 판별 분석) 이러한 선형차원축소 방법들은 데이터의 중요한 비선형 구조를 놓칠 수 있음.

다양한 비선형차원축소방법들이 존재하는 이유는 고차원 공간의 데이터들을 저차원 공간으로 차원축소 시킬 때 보존하려는 성질이 각각 다르기 때문임.

생성모델

기계학습은 모집단으로부터 샘플링된 고차원 데이터로부터 모델을 학습하여 모집단을 잘 설명(예측, 대변)하기 위한 것임. 하지만 고차원 데이터를 이용한 모델링이나 샘플링 과정은 까다로움.
생성모델의 정의는 Feature 데이터의 확률분포를 학습하는데 초점을 맞춘 기계학습의 한 분야로, 학습 데이터와 유사한 통계적 속성을 가지는 새로운 샘플 데이터를 생성하는 모델임.

차원의 저주

데이터가 고차원으로 갈수록 데이터가 공간의 가장자리로 몰리는 경향이 나타남. 즉, 차원이 증가하면 초구의 부피는 급격히 줄어들어, 데이터가 중심보다는 가장자리에 더 집중하게 됨.(왜?)
또한, 데이터 간 거리의 편차가 줄어들어 점점 균등해지며 유사도 기반 모델(k-NN, 클러스터링)에서 데이터간 구별이 어려워짐.

데이터의 차원이 높아질수록 연산 복잡도가 높아지고, 모델이 노이즈까지 학습할 가능성이 높아 과적합의 위험이 증가함. 따라서 고차원 데이터를 다룰 때 효과적인 차원축소가 필수적인 전처리 과정임.

모델을 만들기 위한 최소 데이터 확보가 불가능(추가 샘플링은 많은 비용이 발생)할 때 어떻게 해결해야하는가?

기존에 확보된 n개의 데이터를 이용하여 각 샘플이 추출된 모집단의 분포를 추정하여 추정된 확률분포로부터 추가 샘플링을 해볼 수 있음. 추정 방법은 명시적(VAE, Diffusion)일 수도 있고 암묵적(GAN)일 수도 있음.

분류 task는 학습 데이터를 학습하여 클래스 간 결정경계(Decision Boundary)를 모델링하는 반면, 생성 task는 레이블없이 학습 데이터의 분포를 학습(추정)하여 학습된 분포로부터 샘플과 윳한 데이터를 생성하는 모델임.

13_02 고차원 데이터에 대한 생성모델 학습의 어려움

Contrastive Learning 대조 학습

대조 손실