스팟 하나에 세포가 몇 개 숨어 있는가
S35에서 봤듯이, Visium의 55μm 스팟에는 보통 1~10개의 세포가 들어갑니다. 스팟 발현은 이 세포들의 혼합물입니다. 뇌 조직의 한 스팟에 뉴런 3개, 성상세포 2개, 올리고덴드로사이트 1개가 있다면, 그 스팟의 발현 프로파일은 이 세 유형의 가중 평균입니다.
디컨볼루션(deconvolution)은 이 혼합물을 풀어내는 과정입니다 — 각 스팟에서 어떤 세포 유형이 얼마나 기여하는지를 추정합니다. 이를 위해서는 참조(reference) 데이터, 즉 각 세포 유형의 순수한 발현 프로파일이 필요합니다. 보통 같은 조직에서 얻은 scRNA-seq 데이터가 이 참조 역할을 합니다.
이 편에서는 디컨볼루션이 수학적으로 어떤 문제인지 정식화하고, Tangram, cell2location, RCTD 세 도구의 접근 방식을 비교한 뒤, Tangram으로 직접 실습합니다.
수학적 정식화: 혼합물 모델
스팟 의 발현 벡터를 (G개 유전자)라 하고, 세포 유형 의 참조 발현 프로파일을 라 하면, 선형 혼합 모델은 다음과 같습니다.
여기서 는 스팟 에서 세포 유형 의 **비율(proportion)**입니다. 비음수이고 합이 1이어야 하므로, 이것은 심플렉스 위의 볼록 최적화 문제입니다.
문제의 어려움은 세 가지입니다. (1) 유전자 수(~20,000)가 세포 유형 수(~10~30)보다 훨씬 많아 과결정(overdetermined) 시스템이지만, (2) 참조 프로파일 자체의 불확실성(세포 간 변이)이 크고, (3) 스팟의 총 세포 수를 모릅니다(비율은 알 수 있지만 절대 수는 추가 정보 없이 알 수 없습니다).
세 도구의 접근 방식
Tangram — 최적 수송
Tangram(Biancalani et al., 2021)은 문제를 **최적 수송(optimal transport)**으로 풀어냅니다. scRNA-seq 참조의 개별 세포를 공간 스팟에 "배치(map)"하되, 두 조건을 동시에 만족시킵니다: (1) 배치된 세포의 발현 합이 스팟 발현과 일치하고, (2) 배치가 가능한 한 균일합니다(어느 한 스팟에 모든 세포가 몰리지 않도록).
이것은 PyTorch 기반의 미분 가능 최적화로 구현되어 GPU 가속이 가능합니다. 출력은 세포 × 스팟 확률 행렬이며, 이를 집계하면 세포 유형별 비율이 됩니다.
cell2location — 베이즈 모델
cell2location(Kleshchevnikov et al., 2022)은 완전 베이즈 접근을 취합니다. 참조 데이터에서 세포 유형별 발현 특성을 추정하고, 공간 데이터의 각 스팟을 이 특성의 혼합으로 모델링합니다. 음이항 분포 기반의 생성 모델을 사용하며, **세포 유형별 절대 풍부도(absolute abundance)**를 추정할 수 있다는 것이 Tangram과의 차이입니다.
RCTD — 가중 최소제곱 회귀
RCTD(Robust Cell Type Decomposition, Cable et al., 2022)는 전통적 회귀 접근입니다. 참조에서 세포 유형별 평균 발현을 구한 뒤, 각 스팟의 발현을 이 평균의 가중 합으로 분해합니다. 포아송/음이항 가중 최소제곱을 사용하며, doublet 모드(스팟에 최대 2개 유형만 허용)와 full 모드를 선택할 수 있습니다.
| 항목 | Tangram | cell2location | RCTD |
|---|---|---|---|
| 방법론 | 최적 수송 | 베이즈 (음이항) | 가중 최소제곱 |
| 출력 | 비율 (상대적) | 절대 풍부도 + 비율 | 비율 |
| GPU 지원 | 예 (PyTorch) | 예 (Pyro/scvi-tools) | 아니오 (R) |
| 참조 해상도 | 단일세포 수준 매핑 | 세포 유형 수준 | 세포 유형 수준 |
| 생태계 | Python | Python (scvi-tools) | R (spacexr) |
| 벤치마크 성능 | 상위권 | 상위권 | 상위권 |
세 도구 모두 벤치마크에서 강력한 성능을 보이며, 선택은 주로 사용하는 생태계(Python vs R)와 출력 유형(비율 vs 절대 풍부도)에 따라 결정됩니다.
실습: Tangram으로 Visium 뇌 스팟 디컨볼루션
Tangram 공식 튜토리얼의 마우스 뇌 데이터를 사용합니다. Visium 공간 데이터 + scRNA-seq 참조로 스팟별 세포 유형 비율을 추정합니다.
import tangram as tgimport scanpy as sc
# 1. 참조 scRNA-seq 로드 + 전처리adata_sc = sc.read_h5ad("mouse_brain_sc.h5ad")sc.pp.normalize_total(adata_sc)sc.pp.log1p(adata_sc)
# 2. 공간 Visium 데이터 로드adata_sp = sc.read_visium("visium_brain/")sc.pp.normalize_total(adata_sp)sc.pp.log1p(adata_sp)
# 3. 마커 유전자로 매핑 유전자 선택tg.pp_adatas(adata_sc, adata_sp, genes=marker_genes)
# 4. Tangram 매핑 (GPU 권장)ad_map = tg.map_cells_to_space( adata_sc, adata_sp, mode="cells", # 단일세포 수준 매핑 density_prior="rna_count_based", num_epochs=500, device="cuda:0",)
# 5. 세포 유형 비율 집계tg.project_cell_annotations(ad_map, adata_sp, annotation="cell_type")sc.pl.spatial(adata_sp, color=["Neuron", "Astrocyte", "Oligo"], spot_size=1.5)결과에서 뉴런 비율이 피질 회백질에, 올리고덴드로사이트가 백질에 집중되면, 디컨볼루션이 해부학적 구조를 올바르게 복원하고 있다는 증거입니다.
유전자 발현 투영
디컨볼루션 결과를 사용해, 참조 scRNA-seq의 유전자 발현을 공간에 투영할 수 있습니다. Visium에서 측정하지 않은 유전자도 scRNA-seq 참조에 있다면 공간적으로 추정할 수 있다는 뜻입니다.
# scRNA-seq 발현을 공간에 투영tg.project_genes(ad_map, adata_sp, adata_sc)sc.pl.spatial(adata_sp, color=["Gad1", "Slc17a7"], spot_size=1.5)Gad1(억제성 뉴런 마커)과 Slc17a7(흥분성 뉴런 마커)이 서로 다른 피질 층에 분포하면, 단일세포 참조가 공간 정보를 보완하는 효과를 확인할 수 있습니다.
CS 매핑
- 비음수 행렬 분해(NMF): 디컨볼루션의 수학적 구조는 (비음수 제약)로 NMF와 동일합니다. 추천 시스템의 사용자-아이템 분해와 같은 원리입니다.
- 최적 수송(Optimal Transport): Tangram의 세포-스팟 매핑은 Wasserstein 거리 최소화 기반 최적 수송 문제입니다. 물류 최적화·GAN 훈련(WGAN)에서도 사용됩니다.
- 볼록 최적화: 비율이 심플렉스(비음수, 합 = 1) 위에 있으므로, 제약 조건부 볼록 최적화 문제입니다.
자주 만나는 결함
- 참조 데이터 품질 — 디컨볼루션 결과는 참조 scRNA-seq의 세포 유형 주석에 전적으로 의존합니다. 참조에서 세포 유형이 잘못 주석되었거나 빠져 있으면, 그 오류가 공간 분석에 그대로 전파됩니다.
- 참조-공간 불일치 — scRNA-seq와 공간 데이터가 다른 개체, 다른 조건, 다른 기술로 생성되었다면, 기술적 차이가 디컨볼루션을 왜곡합니다. 가능하면 같은 조직에서 두 데이터를 얻는 것이 이상적입니다.
- 비율 vs 절대 수 혼동 — Tangram/RCTD의 출력은 비율입니다. "뉴런 40%"가 스팟에 뉴런이 4개 있다는 뜻은 아닙니다(총 세포 수를 모르므로). 절대 풍부도가 필요하면 cell2location을 고려합시다.
- 마커 유전자 선택에 민감 — Tangram의 매핑 품질은 어떤 유전자를 사용하느냐에 크게 좌우됩니다. 범용 마커보다 조직 특이적 마커를 선택하면 정확도가 올라갑니다.
더 깊게 파고 싶다면
본문은 BPD가 직접 재구성한 서술입니다. 심화는 아래 정통 자료를 활용합시다.
- 원 논문(Tangram): Biancalani et al. (2021), Deep learning and alignment of spatially resolved single-cell transcriptomes with Tangram, Nature Methods 18:1352.
- 원 논문(cell2location): Kleshchevnikov et al. (2022), Cell2location maps fine-grained cell types in spatial transcriptomics, Nature Biotechnology 40:661.
- 원 논문(RCTD/spacexr): Cable et al. (2022), Robust decomposition of cell type mixtures in spatial transcriptomics, Nature Biotechnology 40:517.
- 벤치마크: Li et al. (2023), Benchmarking spatial and single-cell transcriptomics integration methods for transcript distribution prediction and cell type deconvolution, Nature Methods 19:662.
- 참고 무료 웹북: Single-cell best practices (sc-best-practices.org) — Deconvolution 챕터.
Spatial Omics 시리즈를 마쳤습니다 — 기술 원리(S35), 공간 통계(S36), 디컨볼루션(S37). 이제 시선을 유전자 발현에서 유전자 조절로 돌립니다. 다음 편 S38에서는 히스톤 변형이 어디에 쌓이는지를 읽는 ChIP-seq와 MACS 피크 검출로 후성유전체 시리즈를 시작합니다.