차원축소란? — PCA·t-SNE·UMAP로 고차원 데이터 보기

BIO GLOSSARY · BIOINFORMATICS 101
차원축소란? — PCA·t-SNE·UMAP로 고차원 데이터 보기
TL;DR
차원축소(dimensionality reduction)는 유전자 수천 개 × 세포 수만 개처럼 차원이 아주 큰 데이터를 2~3차원으로 요약해, 사람 눈으로 보고 군집 같은 패턴을 찾게 해 주는 기법입니다. 세포 하나를 유전자 2만 개의 발현값으로 적으면 그 세포는 2만 차원 공간의 한 점이 되는데, 우리는 2만 차원을 볼 수가 없죠. 그래서 정보를 최대한 지키면서 축을 몇 개로 줄입니다. 대표 세 가지가 있습니다. PCA(주성분분석)는 선형 기법으로, 분산(퍼짐)이 가장 큰 축을 차례로 찾아 세웁니다. 빠르고 정량적이며 전역 구조를 보존하고 축의 의미도 해석할 수 있지만, 휘어진 비선형 구조엔 약하죠. t-SNE와 UMAP은 비선형 기법으로, 가까운 점끼리의 국소 이웃 관계를 지켜 군집을 또렷하게 펼칩니다. t-SNE는 perplexity, UMAP은 n_neighbors·min_dist라는 조절 파라미터가 있고, UMAP이 더 빠르고 전역 구조도 어느 정도 지켜 단일세포 RNA-seq(scRNA-seq)의 사실상 표준 시각화가 됐습니다. 다만 t-SNE·UMAP 그림의 축은 의미가 없고, 군집 사이 거리나 군집 크기를 문자 그대로 읽으면 안 됩니다.
🔗 관련 글 · 세포 지도의 원재료와, PCA를 코드로
• 단일세포 RNA-seq (scRNA-seq)이란? · PCA로 RNA-seq 샘플 QC
1. 한 줄 정의 — 수천 차원을 2차원 지도로
차원축소는 변수가 아주 많은 데이터를, 중요한 정보를 최대한 남기면서 훨씬 적은 수의 축으로 다시 그리는 일입니다. 여기서 '차원'은 한 샘플을 설명하는 변수의 개수라고 보면 됩니다. scRNA-seq에서는 세포 하나가 유전자 2만여 개의 발현값을 갖고, 그 세포는 2만 차원 공간의 점 하나가 됩니다.
문제는 우리가 3차원까지밖에 못 본다는 데 있죠. 표를 아무리 노려봐도 세포 3만 개가 몇 무리로 나뉘는지, 어떤 세포가 서로 닮았는지는 보이지 않습니다. 차원축소는 이 고차원 구름을 2차원 종이 위로 눌러, 닮은 세포는 가깝게 다른 세포는 멀게 배치한 '지도'로 바꿔 줍니다. 그 지도에서 우리는 비로소 군집(cluster)을 눈으로 셉니다.
2. 어원·역사 — PCA에서 t-SNE·UMAP까지
가장 오래된 축은 PCA입니다. 1901년 피어슨(Pearson, 1901)이 점들에 가장 잘 맞는 직선·평면을 찾는 문제로 처음 제안했고, 1933년 호텔링(Hotelling, 1933)이 '주성분(principal component)'이라는 이름과 오늘날의 틀로 다듬었습니다. 백 년이 넘도록 살아남은, 차원축소의 기본기죠.
비선형 시각화는 훨씬 최근입니다. 2008년 판데르마턴과 힌턴 (van der Maaten & Hinton, 2008)이 t-SNE(t-distributed stochastic neighbor embedding)를 발표해, 복잡하게 얽힌 고차원 데이터에서 군집을 또렷이 드러내는 길을 열었습니다. 이어 2018년 매킨스와 힐리 (McInnes & Healy, 2018)가 UMAP(uniform manifold approximation and projection)을 내놓으며, 비슷한 품질을 훨씬 빠르게 얻고 전역 구조까지 어느 정도 챙겼습니다. 단일세포 분야가 폭발하던 시기와 맞물려, 지금은 UMAP이 표준 자리에 올랐습니다.
3. 개념 풀이 — 왜 축을 줄여야 하나
핵심 질문은 이겁니다. "정보를 최대한 잃지 않으면서, 어떻게 축을 줄일까?" 고차원 데이터는 사실 겉보기 차원만큼 복잡하지 않은 경우가 많습니다. 유전자 2만 개가 제각각 움직이는 게 아니라, 함께 켜지고 꺼지는 무리가 있어 실제 '자유도'는 훨씬 작죠.

차원축소는 이 숨은 구조를 찾아 몇 개의 축으로 압축합니다. 여기서 갈림길이 생깁니다. 선형 기법인 PCA는 데이터 전체의 큰 방향을 곧은 축으로 잡아, 전역(global) 구조와 샘플 사이의 실제 거리감을 잘 지킵니다. 반면 비선형 기법인 t-SNE·UMAP은 곧은 축을 고집하지 않고, 가까운 이웃끼리의 관계를 지키는 데 집중해 휘어진 구조를 평평하게 펼칩니다.
그래서 PCA는 '전체 지형', t-SNE·UMAP은 '누가 누구와 붙어 있나'를 보는 데 강합니다. 실무에서는 t-SNE·UMAP을 돌리기 전에 PCA로 먼저 수십 차원까지 줄여 잡음을 걷어 내는 방식을 흔히 씁니다.
4. 작동 원리 ① — PCA (주성분분석)
PCA의 발상은 담백합니다. 데이터가 가장 넓게 퍼진 방향을 첫 번째 축(제1주성분, PC1)으로 삼고, 그와 직각인 방향 중 남은 퍼짐이 가장 큰 쪽을 두 번째 축(PC2)으로 잡습니다. 이렇게 분산이 큰 순서대로 서로 직교하는 축을 차례로 세우죠. 앞쪽 두세 축만 남기고 나머지를 버려도, 데이터의 큰 그림은 대부분 지켜집니다.

각 주성분이 원래 유전자들을 어떤 비중으로 섞었는지는 로딩(loading)에 담겨, "PC1은 주로 어떤 유전자군이 끌고 있다"처럼 축을 해석할 수 있습니다. 축마다 전체 분산의 몇 %를 설명하는지도 숫자로 나오죠. 빠르고, 결과가 늘 같고(결정적), 거리와 방향에 뜻이 있다는 게 PCA의 강점입니다. 대신 한계도 뚜렷합니다. 곧은 축만 쓰기 때문에, 나선처럼 휘어진 구조나 미세하게 갈린 세포 유형은 두세 축만으로는 겹쳐 보일 수 있습니다. RNA-seq 실전에서 PCA로 샘플을 정렬해 배치효과·이상치를 걸러 내는 PCA 샘플 QC가 바로 이 성질을 쓰는 예입니다.
5. 작동 원리 ② — t-SNE와 UMAP (비선형)
t-SNE·UMAP은 문제를 뒤집습니다. 곧은 축을 찾는 대신, 고차원에서 '가까운 점들'의 이웃 관계를 2차원에서도 최대한 똑같이 유지하려 합니다. 고차원에서 이웃이던 세포는 지도 위에서도 이웃이 되게, 서로 밀고 당기며 자리를 잡죠. 그 결과 얽혀 있던 군집이 또렷한 섬처럼 갈라져 보입니다.
두 방법은 조절하는 값이 다릅니다. t-SNE의 perplexity는 '한 점이 이웃으로 고려할 범위'를 정하는데, 값이 작으면 아주 국소적인 덩어리가, 크면 더 넓은 이웃 구조가 강조됩니다. UMAP은 n_neighbors(이웃 수, 국소↔전역 균형)와 min_dist(점들이 얼마나 촘촘히 뭉칠지)로 조절합니다. 실용적인 차이도 큽니다. UMAP은 t-SNE보다 훨씬 빠르고 국소와 전역 구조의 균형이 나아, 세포 수만~수십만 개 규모에서도 무난히 돌아가죠. t-SNE는 느리고 실행할 때마다 그림이 조금씩 달라집니다(비결정적). 이 때문에 scanpy·Seurat 같은 도구가 UMAP을 기본 시각화로 삼습니다.
여기서 꼭 짚을 게 있습니다. t-SNE·UMAP 그림의 가로세로 축은 아무 물리적 의미가 없고, 눈금도 읽지 않습니다. 군집 사이의 거리, 군집의 크기, 회전 방향도 파라미터에 따라 달라지므로 문자 그대로 해석하면 안 됩니다. "붙어 있으니 두 군집이 더 가깝다"거나 "크니까 더 중요하다"는 식의 읽기는 흔한 오독입니다.
6. 헷갈리는 개념 비교 — PCA vs t-SNE vs UMAP
세 방법은 목적이 겹치면서도 성격이 확연히 다릅니다. PCA는 선형·정량·전역 보존이 강점이라 정밀한 거리 비교나 전처리에 어울리고, t-SNE·UMAP은 비선형으로 군집을 시각적으로 또렷이 드러내는 데 특화돼 있죠. 아래 표로 견주면 언제 무엇을 쓸지가 또렷해집니다.

| 구분 | PCA | t-SNE | UMAP |
|---|---|---|---|
| 방식 | 선형 | 비선형 | 비선형 |
| 보존 | 전역 구조·거리 | 국소 이웃 | 국소+전역 균형 |
| 속도 | 아주 빠름 | 느림 | 빠름 |
| 축 해석 | 가능 (로딩·분산 %) | 불가 (축 무의미) | 불가 (축 무의미) |
| 주 용도 | 전처리·QC·거리 비교 | 군집 시각화 | 대규모 군집 시각화(표준) |
한 가지 자주 나오는 오해가 "차원축소가 데이터를 새로 만든다"는 생각입니다. 그렇지 않습니다. 원래 있던 구조를 낮은 차원으로 '투영'해 보여 줄 뿐, 없던 군집을 지어내진 않죠. 다만 파라미터를 극단으로 주면 인위적인 덩어리가 생길 수 있어, perplexity·n_neighbors를 바꿔 가며 그림이 안정적인지 확인하는 습관이 안전합니다. 그리고 세 방법 모두 스케일에 민감하므로, 유전자별 값의 크기를 맞추는 RNA-seq 정규화와 표준화를 먼저 거쳐야 결과가 믿을 만해집니다.
참고로 GWAS에서 인구집단 구조를 보정할 때 PCA로 상위 주성분을 공변량으로 넣는 것처럼, 차원축소는 시각화를 넘어 통계 보정에도 두루 쓰입니다.
7. 현장 활용 — scRNA-seq 그림 읽기
단일세포 분석의 표준 흐름은 대개 이렇습니다. 발현 행렬을 정규화·표준화한 뒤, PCA로 수십 개 주성분까지 줄여 잡음을 걷어 냅니다. 그 주성분을 입력으로 이웃 그래프를 만들어 군집을 나누고, 마지막에 UMAP(또는 t-SNE)으로 2차원 지도를 그려 군집을 눈으로 확인하죠. 즉 PCA는 전처리, UMAP은 시각화라는 역할 분담이 자연스럽습니다.
- PCA 그림. 축에 "PC1 (32%)"처럼 설명 분산이 붙습니다. 샘플이 조건별로 갈리는지, 배치효과로 엉뚱하게 뭉치는지, 이상치가 튀는지를 봅니다.
- UMAP·t-SNE 그림. 색으로 표시된 군집이 몇 개인지, 마커 유전자를 얹었을 때 어느 섬이 켜지는지를 봅니다. 축 눈금·섬 사이 거리는 읽지 않습니다.
도구로는 파이썬의 scikit-learn·umap-learn·openTSNE, 단일세포 쪽의 scanpy·Seurat가 널리 쓰이고, R에서는 prcomp·Rtsne·uwot로 같은 일을 합니다. 어떤 도구든, 그림을 그리기 전 정규화와 PCA 전처리를 제대로 했는지가 결과의 질을 가릅니다.
8. 핵심 정리 & 다음 학습
- ✅ 차원축소는 수천 차원 → 2~3차원 지도로 요약해 군집을 눈으로 찾는 법 — scRNA-seq 시각화의 표준 단계.
- ✅ PCA = 선형, 분산 큰 축을 차례로(PC1·PC2…). 빠름·정량·전역 보존·해석 가능(로딩), 비선형 구조엔 약함. 보통 t-SNE·UMAP 전처리로 먼저 실행.
- ✅ t-SNE = 비선형, 국소 이웃 보존(perplexity). 군집 분리 또렷, 느림·비결정적.
- ✅ UMAP = 비선형, 국소+전역 균형·빠름(n_neighbors·min_dist) → scRNA-seq 사실상 표준.
- ⚠️ t-SNE·UMAP의 축은 무의미하고, 군집 크기·군집 간 거리를 문자 그대로 읽지 말 것. 스케일에 민감하니 정규화·표준화 선행.
• (입력 데이터) 단일세포 RNA-seq (scRNA-seq)이란? — 차원축소가 그리는 세포 지도의 원재료
• (코드로 직접) PCA로 RNA-seq 샘플 QC — prcomp·plotPCA로 PCA를 R에서 실행하는 실전편
• (그다음 파이프라인) scanpy로 단일세포 분석 — PCA→UMAP·군집까지 파이썬으로 잇기
• (값 맞추기) RNA-seq 정규화 — 축소 전에 유전자 값의 크기를 비교 가능하게
References
- Pearson, K. (1901). On lines and planes of closest fit to systems of points in space. Philosophical Magazine, 2(11), 559–572. doi:10.1080/14786440109462720
- Hotelling, H. (1933). Analysis of a complex of statistical variables into principal components. Journal of Educational Psychology, 24(6), 417–441. doi:10.1037/h0071325
- van der Maaten, L., & Hinton, G. (2008). Visualizing data using t-SNE. Journal of Machine Learning Research, 9(86), 2579–2605. jmlr.org/papers/v9/vandermaaten08a.html
- McInnes, L., Healy, J., & Melville, J. (2018). UMAP: Uniform Manifold Approximation and Projection for dimension reduction. arXiv:1802.03426. doi:10.48550/arXiv.1802.03426
- Becht, E., McInnes, L., Healy, J., Dutertre, C. A., Kwok, I. W. H., Ng, L. G., et al. (2019). Dimensionality reduction for visualizing single-cell data using UMAP. Nature Biotechnology, 37(1), 38–44. doi:10.1038/nbt.4314
Pipette & Pipeline · A bio portfolio journal
'Bio Glossary > Bioinformatics 101' 카테고리의 다른 글
| 변이 주석·해석이란? — VEP·gnomAD·ClinVar·ACMG 5등급 완전 정리 (0) | 2026.07.14 |
|---|---|
| 유전체 어셈블리란? — de novo·contig/scaffold·N50·롱리드·T2T (0) | 2026.07.10 |
| GO·경로 농축분석이란? — 유전자 목록에서 의미 찾기 (0) | 2026.07.08 |
| 다중서열정렬(MSA)이란? — 여러 서열을 한 줄에 맞추기 (0) | 2026.07.07 |
| BLAST란? — 서열 상동성 검색으로 유전자·단백질의 정체 찾기 (0) | 2026.07.06 |