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으로 해석하기 전에 만족해야할 아래 세 가지 가정이 존재한다.
- 데이터는 Riemannian manifold 상에서 균일하게 분포한다.
- Riemannian metric이 국소적으로 일정하다. (또는 근사적으로 일정하다고 할 수 있다.)
- 주어진 manifold는 국소적으로 연결되어 있다.
Benefits of UMAP
- 빠르다.
- 일반화된 embedding 차원: 시각화 용도인 t-SNE와 다르게 UMAP은 embedding 차원의 크기에 대한 제한이 없기 때문에, 일반적인 차원 축소 알고리즘으로 적용 가능하다. (게다가 전체적인 구조를 더 잘 반영하기 때문에 시각화도 더 예쁘게 된다.)
- Global structure: 전체적인 manifold 구조를 더 잘 보존한다
- 탄탄한 이론적 배경: 리만 기하학과 위상 수학에 기반 (저자에 의하면, 이론적 디테일은 모르는 게 정신건강에 이롭다)
- 코드로 바로 사용 가능하게 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
- Matrix Factorization
- ex) Principal Component Analysis, Linear Autoencoder, Latent Dirichlet Allocation, Non-negative matrix factorization, Generalised Low Rank Models, GloVe, Word2Vec
- Neighbour Graphs
- ex) Laplacian Eigenmaps, Hessian Eigenmaps, Local Tangent Space Alignment, JSE, Isomap, t-SNE, Locally Linear Embedding, UMAP
Manifold Learning