● 為什麼需要「非線性」降維?
本區段旨在建立降維分析的核心觀念。在單細胞分析中,我們常面臨極高的資料維度。了解為何傳統線性方法不足,是非線性演算法派上用場的關鍵前提。
傳統 PCA (線性) 的局限
主成分分析 (PCA) 是標配,但它主要捕捉數據中的全域差異 (Global variance)。面對複雜的生物學流形 (Manifold),PCA 難以將細微的細胞亞群區分開,容易導致資料重疊。
非線性降維的優勢
- 保留高維空間中點與點之間的局部鄰域關係。
- 能將複雜的非線性結構「攤平」到 2D 平面上,使細胞分群與生物學軌跡一目了然。
演算法對決:視覺化模擬器
此互動區塊模擬了三種演算法處理相同單細胞數據時的視覺差異。請點擊按鈕切換,觀察細胞群體在不同降維空間中的分佈特性與群間關係。
關鍵參數對比
調整這些參數會直接影響降維結果的緊密度與群間距離。了解它們的功能是優化圖譜的關鍵。
| 參數 | t-SNE | UMAP |
|---|---|---|
| 核心變數 | Perplexity | n_neighbors / min_dist |
| 功能影響 | 控制局部與全域結構的平衡。數值越大,考慮的鄰居越多。 | n_neighbors 控制局部結構;min_dist 控制點的緊密程度。 |
| 建議設定 | 30 - 50 | 15-30 / 0.1-0.3 |
實戰流程 (R 語言 Seurat)
提供標準的分析代碼流程。注意:在運行非線性降維之前,必須先運行 PCA 以去噪並加速運算。
# 假設已完成標準化與高變異基因篩選
# 1. 運行 PCA (線性降維)
pbmc <- RunPCA(pbmc, features = VariableFeatures(object = pbmc))
# 2. 選擇主成分數量 (例如前 20 個 PC)
# 3. 運行 UMAP (推薦)
pbmc <- RunUMAP(pbmc, dims = 1:20)
# 4. 運行 t-SNE (可選)
pbmc <- RunTSNE(pbmc, dims = 1:20)
# 5. 視覺化
DimPlot(pbmc, reduction = "umap", label = TRUE)
常見誤區與注意事項
點擊下方問題展開詳細解說,避免在解讀降維圖表時產生常見的生物學誤判。
UMAP1 或 tSNE1 軸本身沒有明確的物理或生物學意義。這與 PCA 完全不同(PCA 的 PC1 代表數據中最大的變異方向)。它們只是用來將點散佈在 2D 空間中的相對座標。
在 t-SNE 中,兩個遠處分群之間的距離通常沒有意義,它通常會丟失全域結構。而在 UMAP 中,雖然相對距離(全域結構)保留得較好,更具生物學意義(如發育路徑),但仍應謹慎解讀,不宜直接量化絕對距離。
不一定。分群的視覺大小(點的分佈密度)很大程度上受到演算法設定參數(如 min_dist 或 perplexity)的影響,並不一定代表該群細胞內部的實際轉錄組異質性程度。
不是。非線性降維通常是在 PCA 的空間(例如前 20-30 個主要成分)上運行,而不是直接在原始的 20,000 個基因上運行。這有助於消除雜訊並大幅提升運算效率。