UMAP: Uniform Manifold Approximation and Projection for Dimension Reduction

2020. 10. 22. 11:01카테고리 없음

UMAP: Uniform Manifold Approximation and Projection for Dimension Reduction

UMAP은 주어진 manifold가 uniform 하다는 가정 하에 차원 축소의 관점에서 manifold learning을 수행할 수 있다.
Data manifold를 UMAP으로 해석하기 전에 만족해야할 아래 세 가지 가정이 존재한다.

  1. 데이터는 Riemannian manifold 상에서 균일하게 분포한다.
  2. Riemannian metric이 국소적으로 일정하다. (또는 근사적으로 일정하다고 할 수 있다.)
  3. 주어진 manifold는 국소적으로 연결되어 있다.

Benefits of UMAP

  1. 빠르다.
  2. 일반화된 embedding 차원: 시각화 용도인 t-SNE와 다르게 UMAP은 embedding 차원의 크기에 대한 제한이 없기 때문에, 일반적인 차원 축소 알고리즘으로 적용 가능하다. (게다가 전체적인 구조를 더 잘 반영하기 때문에 시각화도 더 예쁘게 된다.)
  3. Global structure: 전체적인 manifold 구조를 더 잘 보존한다
  4. 탄탄한 이론적 배경: 리만 기하학과 위상 수학에 기반 (저자에 의하면, 이론적 디테일은 모르는 게 정신건강에 이롭다)
  5. 코드로 바로 사용 가능하게 API로 존재한다.

t-SNE vs UMAP

t-SNE보다 더욱 빠르면서도 데이터 공간을 잘 분리하는 UMAP(Uniform Manifold Approximation and Projection)은 비선형 차원 축소를 위해 제안되었다. 즉, 매우 큰 데이터셋을 빠르게 처리할 수 있고, 희소 행렬 데이터에 적합하다. 더 나아가, t-SNE에 비해 다른 머신러닝 모델에서 새로운 데이터가 들어왔을 때 즉시 embedding 할 수 있다는 장점이 있다.

t-SNE는 전체적인 구조보다는 국소적인 neighbour graph 구조를 활용하여 국소적인 특징을 잘 반영한다.

www.youtube.com/watch?v=nq6iPZVUxZU&ab_channel=Enthought

차원 축소

예를 들어, MNIST 이미지 데이터의 경우 28x28 의 크기를 갖지만 실제 주어진 이미지에 대한 "잠재" 정보는 몇 가지 정보로 축약 될 수 있을 것이라고 생각할 수 있다.

Find the "latent" features in your data

차원 축소 알고리즘은 크게 다음 두 가지로 나뉠 수 있다: Matrix Factorization, Neighbour Graphs

  1. Matrix Factorization
    • ex) Principal Component Analysis, Linear Autoencoder, Latent Dirichlet Allocation, Non-negative matrix factorization, Generalised Low Rank Models, GloVe, Word2Vec
  2. Neighbour Graphs
    • ex) Laplacian Eigenmaps, Hessian Eigenmaps, Local Tangent Space Alignment, JSE, Isomap, t-SNE, Locally Linear Embedding, UMAP

Manifold Learning

References