#차원축소
https://pair-code.github.io/understanding-umap/supplement.html https://m.blog.naver.com/myohyun/222421460444
- 그래프 레이아웃 알고리즘을 이용해서 데이터를 저차원 공간에 나타낸다.
- 데이터의 고차원 그래프 표현을 만든다음 저차원의 것을 고차원 그래프와 최대한 유사하게 최적화 한다.
- fuzzy simplicial complex(경계가 모호하고 단순한 복합체)를 구축
- edge weight를 이용해서 나타낸 weighted graph
- 연결되어 있는지 판단하기 위해서 각 point를 중심으로 원을 그리고 그 원끼리 포개지는 점들에 대해 두 점이 연결되어 있다고 생각
- 원의 반지름이 중요, 너무 작으면 작고 고립된 클러스터를 생성하도록 유도,너무 크게 만들면 모든게 다 연결되도록 만들기 때문에
- UMAP은 이 문제를 각 포인트의 n번째로 가까운 점까지의 거리를 바탕으로 포인트마다 반지름을 선택해서 해결함
- 원의 반지름이 커짐에 따라 그래프를 fuzzy 하게 만들어서 점 사이의 연결 정도를 줄인다.
- 각 포인트들은 최소한 가장 가까운 점들과는 반드시 연결되어야 한다고 규정해서 local structure가 보존되게 해서 global structure 밸런스를 맞출 수 있음
하이퍼 파라미터
- n_neighbors
- 초기 고차원 그래프 생성시에 사용되는 nearest neighbor의 숫자
- 값이 작으면 local structure에 집중
- 값이 크면 global structure에 집중
- 초기 고차원 그래프 생성시에 사용되는 nearest neighbor의 숫자
- min_dist
- 저차원 공간에서 포인트 사이의 최소 거리
- UMAP이 포인트들을 얼마나 촘촘하게 묶을지 조절
- 값이 작으면 촘촘히 무리지어 있음
- 값이 크면 포인트들이 상대적으로 느슨하게 퍼져있게됨
UMAP vs T-SNE
- 두 아웃풋의 가장 큰 차이는 local structure와 global structure 사이의 밸런스
- UMAP은 프로젝션에서 global structure를 보존을 더 잘함, 클러스터 사이의 관계가 t-SNE보다 의미있게 연결되어 있기 때문
- 두 방법 모두 고차원을 저차원으로 옮기면서 데이터를 왜곡하기 때문에 저차원에서 거리나 축에 대해서는 PCA같은 방법처럼 직접적으로 해석되지 않음
- tSNE를 사용하면 매우 높은 perplexity(~1000)에서 부터 global structure가 보이기 시작함 => 시간이 오래 걸림
- UMAP은 (특히 차원이 높을때 ) 두 nested cluster를 분리하지 못함
Do not msiread UMAP
- 하이퍼 파리미터 선택을 잘해야한다.
- 데이터의 목표를 고려해서 min_dist와 n_neighbor를 잘 선택해야한다.
- UMAP이 속도가 빠르기 때문에 다양한 파라미터값들이 projection에 영향을 미치는지 쉽게 확인할 수 있음
- Cluster sizes in a UMAP plot mean nothing
- 클러스터간의 상대적인 사이즈는 의미가 없음
- Distances between clusters might not mean anything
- 클러스터간 global position은 UMAP에서 더 잘 보존되지만 클러스터간 거리는 의미가 없다.
- UMAP이 고차원 그래프를 생성할 때 local distance 개념을 사용하기 때문
- Random noise does not always look random.
- 특히 n_neighbors가 작을 때 그럴듯 해 보이는 가짜 clustering을 관찰 가능함
- You may need more than one plot
- UMAP 알고리즘은 stochastic하기 때문에 같은 파라미터라 할지라도 다른 결과를 내놓을 수 있음
- 하이퍼 파라미터의 선택은 중요하기 때문에 다양한 하이퍼 파라미터로 여러번 프로젝션을 돌려보는 것이 도움이 된다.
결론
- UMAP이 tSNE 보다 더 장점이 많음
- 더 빠른 속도, 더 나은 global structure 보존, 더 쉬운 파라미터
- 축소하지 않는 기술이 가장 완벽함,
- UMAP은 어떻게 TSNE보다 더 글로벌 구조를 더 잘 보존하는가?
- 글로벌 구조...? 메머드를 3차원 좌표에 찍고 UMAP했을때 2차원으로도 메머드 모양이 보여야함
- tSNE는 고차원 공간에서 가까운 점들을 저차원에서도 가깝게 매핑하는것에 초점을 맞춤
- 국소구조는 잘 보존 하지만 글로벌 구조는 잘 보존 못함
- UMAP은 local과 global 구조의 균형을 잘 맞추게 되어 있음