在腫瘤相關單細胞轉(zhuǎn)錄組測序中,腫瘤細胞的甄別一直是一個讓人頭疼的問題。CNV可以用于區(qū)分腫瘤細胞和正常細胞,常用的inferCNV方法往往需要一個清晰的非腫瘤細胞注釋做為參考去佐證腫瘤細胞,CopyKAT對于細胞數(shù)量多的分析項目是極不友好的,時間成本消耗也是極高的。下面介紹一種新的腫瘤細胞預測的方法:Cancer-Finder,其可以應用于腫瘤細胞的鑒定和空間惡性區(qū)域的識別。
Cancer-Finder是一種基于深度學習算法,用于單細胞轉(zhuǎn)錄組數(shù)據(jù)腫瘤細胞預測和空間轉(zhuǎn)錄組數(shù)據(jù)惡性區(qū)域的識別的軟件,其平均預測精準度可以高達95.16%。Cancer-Finder收集13種不同腫瘤相關組織的單細胞數(shù)據(jù)集做為訓練數(shù)據(jù)集對腫瘤細胞進行預測。
與當前一些腫瘤細胞預測手段,諸如:CaSee、CopyKAT、SCEVAN、ikarus等比較,Cancer-Finder分析時間花費的更少,效果更佳。Cancer-Finder使用Python語言編寫,也有著對計算機資源消耗相對較少的優(yōu)點。
如何安裝?
基于Linux的軟件安裝:
1. 首先,下載Cancer-Finder到本地,并解壓,進入該目錄,你可看到如下文件結(jié)構(gòu),infer.py為預測腫瘤細胞程序。
2. 然后,使用Conda安裝 Cancer-Finder。
a) 首先創(chuàng)建一個名字叫csf的虛擬環(huán)境并安裝3.9.16版本的python軟件:
conda create -n scf python==3.9.16
b) 然后激活scf虛擬環(huán)境:conda activate scf
c) 最后使用pip安裝Cancer-Finder所需模塊:
pip install -r requirements.txt -i
pip install matplotlib==3.8 -i
d) 注意事項:這里推薦使用Python的清華鏡像(-i 參數(shù)),安裝速度較快,matplotlib建議使用3.8版本。以上安裝步驟親測可用。
如何運行預測程序?
執(zhí)行下面一行代碼即可開啟分析。
python -u infer.py --ckp=../sc_pretrain_article.pkl --matrix=sample_data/sample_data_matrix.tsv --out=out.csv
--ckp參數(shù):用于預測腫瘤細胞或者區(qū)域的預訓練好的模型數(shù)據(jù),存儲為.pkl格式文件。Cancer-Finder提供了預訓練完成的單細胞模型數(shù)據(jù) sc_pretrain_article.pkl 和空間轉(zhuǎn)錄組模型數(shù)據(jù) st_pretrain_article.pkl。
--matrix參數(shù):待注釋的表達矩陣文件,支持tsv、csv、h5ad格式的文件。
--out 參數(shù):結(jié)果輸出。
輸出結(jié)果一共兩列,如下圖,第一列為細胞信息,第二列為細胞對應預測結(jié)果信息,1.0代表被預測為腫瘤細胞,0.0代表被預測為非腫瘤細胞。從結(jié)果上看這里的目標是只需區(qū)分腫瘤細胞和非腫瘤細胞即可,其本質(zhì)是機器學習中的深度神經(jīng)網(wǎng)絡解決二元分類問題。
如何訓練自己的模型數(shù)據(jù)?
Cancer-Finder提供的預訓練模型數(shù)據(jù)(單細胞和空間轉(zhuǎn)錄組模型數(shù)據(jù))可能并不適用于某些領域的研究,所以提供了訓練私有模型的程序 train.py 。
python -u train.py \
--train_dir=\
--val_dir=\
--batch_size=\
--lr=\
--max_epoch=\
--output=\
--gpu_id=
數(shù)據(jù)結(jié)構(gòu)詳細請參考下載到本地的Cancer-Finder軟件包 data目錄。
實際效果如何?
使用GEO數(shù)據(jù)(GSE155446)比較預測結(jié)果。
python -u infer.py --ckp=sc_pretrain_article.pkl --matrix=GSE155446_human_raw_counts.csv --out=GSE155446_human.rs.tsv
上圖中Pred標簽UMAP圖為使用Cancer-Finder對腫瘤細胞的預測結(jié)果的展示,1代表腫瘤細胞,0代表非腫瘤細胞;CellType標簽的UMAP圖為數(shù)據(jù)集提供的注釋結(jié)果展示。從UMAP圖上可以清晰看出Cancer-Finder預測的腫瘤細胞與注釋高度一致。接下來看下注釋結(jié)果與預測結(jié)果的比例情況,如下圖。
從上圖可以看出Cancer-Finder識別出了極高比例的腫瘤細胞,從這個案例可以看出Cancer-Finder的效果是很好的,此數(shù)據(jù)接近4w的細胞數(shù)量,在幾分鐘內(nèi)可以完成腫瘤細胞的識別,有著相當不俗的表現(xiàn)。在已知背景數(shù)據(jù)集中Cancer-Finder的預測能力是極好的,對于未知領域的數(shù)據(jù)可以綜合不同的算法交叉比較,大概率應該對個性化研究也會有著不錯的結(jié)果。
對于空間轉(zhuǎn)錄的數(shù)據(jù),大家可以小試牛刀。
參考文獻:
Zhong, Z., Hou, J., Yao, Z. et al. Domain generalization enables general cancer cell annotation in single-cell and spatial transcriptomics. Nat Commun 15, 1929 (2024).