티스토리 뷰

DL/AutoEncoder

[Ch2] Manifold Learning

jeong_reneer 2022. 1. 30. 18:42

[Keyword] : Manifold Learning, Unsupervised Learning

 

1. AutoEncoder의 주요 기능

1) Dimension Reduction (차원 축소) : Unsupervised Learning Task

2) Density Estimation (확률 분포 예측) 

3) 'Manifold' 학습

 

 

2. Manifold 정의

 

Manifold : Train DB에 해당되는 고차원(그림상 3D) 데이터를 공간 상에 뿌려봤을 때 생기는 점들을 에러 없이 잘 아우르는 Sub-space → Manifold에서 저차원(그림상 2D) 상에 projection 시키면 데이터 차원을 줄일 수 있음

 

 

3. Manifold 학습의 목적

1) Data compression (데이터 압축)

- 같은 Bit rate에 대하여 JPEG 보다 CAE가 PSNR 수치 높음

 

 

2) Data visualization (데이터 시각화)

- 자신들이 가진 기술을 show 하고자 시각화

 

 

3) Curse of dimensionality (차원의 저주 피하기)

(1) 차원의 저주

데이터의 차원이 증가할수록, 해당 공간의 크기(부피)가 기하급수적으로 증가 = 동일한 개수의 데이터의 밀도는 희박

따라서, 데이터의 분포분석 또는 모델추정에 필요한 샘플 데이터의 수가 기하급수적으로 많아야 함

 

(2) Manifold Hypothesis (Assumption)

Natural data in high dimensional spaces concentrates close to lower dimensional manifolds

  고차원의 데이터는 밀도는 낮지만, 이들의 집합을 포함하는 저차원의 밀도 높은 Manifold 존재 ! 

Probability density decreases very rapidly when moving away from the supporting manifold

  이 저차원의 Manifold를 벗어나는 순간 급격히 밀도 낮아짐

- Uniform sampling 아무리 많이 해도 Noise 밖에 안나옴 → 골고루 분포 X, 어딘가에 몰려있음 (Hypothesis)

-  확률분포를 잘 찾으면 Sampling을 할 수 있음 → 기존 Training DB에 없는 것들도 생성할 수 있음  

    Ex) GAN (현재는 아직 Domain 한정했을 때만 어느정도 생성 가능한 수준)

 

 

4) Discovering most important features (유용한 특징 추출)

(1) Meaningful representation

- Manifold follows naturally from continuous underlying factors (=intrinsic manifold coordinates)

- Such continuous factors are part of a meaningful representation!

- Manifold 학습 결과 평가를 위해 Manifold 좌표들이 조금씩 변할 때 원 데이터도 유의미하게 조금씩 변함을 보임

"압축을 통해 Manifold를 잘 찾았다면 Dominant Feature(Rotation, Thickness, Size 등)를 자동으로 잘 찾은 것"

 

 

 

(2) Reasonable distance metric

- 의미적으로 가깝다고 생각되는 고차원 공간에서의 두 샘플들 간의 거리는 먼 경우가 많음 !!

  즉, 고차원 공간에서 가까운 두 샘플들은 의미적(Dominant Feature)으로는 굉장히 다를 수 있음

- 차원의 저주로 인해 고차원에서의 유의미한 거리 측정 방식 찾기 어려움

 

같은 유클리안 measure metric으로 측정하더라도, 어떤 공간에서 측정하는지에 따라 거리가 다를 수 있음

(원래 공간인 고차원에서는 B에 대해 A1이 더 가깝지만, 압축한 저차원 Manifold에서는 A2가 더 가까움) 

 

이미지에서의 해석

Interpolation in high dimension : 팔 2개, 골프채 2개가 나옴 → 의미 없는 이미지

Interpolation in manifold : 원하는 중간 행동이 나옴  → 원하는 이미지

 

 

"중요한 특징(Feature)들을 찾았다면 이 특징들을 공유하는 Sample들도 찾을 수 있어야 함"

 

(3) Needs disentagling the underlying explanatory factors

Ex) MNIST Data를 2D manifold로 압축

Dominant feature : 숫자가 다른 것 의미적으로 학습이 잘 됐다면 명확히 다른 모양의 숫자는 멀리 떨어져 있어야 함 

 

Entangled VS Disentangled

- Entangled (섞여 있음) : 구분을 잘 못함 = 학습이 잘 안된 것

- Disentangled : 다른 숫자끼리는 멀리 떨어져 있음 = 학습이 잘 된 것

 

 

 

 

 

4. 기존 방법론 - Neighborhood based training

Dimension Reduction (차원 축소)

 

1) Linear method - PCA

: 원 데이터를 샘플공간에 뿌려보고 분산이 최대축이 되는 plane을 찾아서 projection 시켜 점차 차원 축소

- Linear Hyperplane에 projection하는 방법이기에 꼬여있는 case의 경우 잘 구분 X (Entangled)

- h = f_θ(x) = W(x-μ)  with θ = { W, μ } Neural Net 형태와 비슷 AutoEncoder : PCA를 포함하는 방법론

 

 

 

2) Nonlinear methods - Isomap, LLE

: 1st step 에서 각 샘플별로 가까운 거리에 있는 것들을 구함

 

 

 

Density Estimation (확률 분포 예측) 

1) Parzen Windows

: 샘플별로 가우시안 커널을 씌어 쭉 다 더해 확률 분포를 모델링하는 방법론

 

 

 

 

기존 방법론의 LIMITATION

 

 

 

댓글
공지사항