hello市埋,國慶本來是該好好玩的黎泣,但是天天下雨,沒辦法腰素,學習一下吧聘裁。今天給大家?guī)淼氖且恍┗A的認知雪营,如果評價我們的聚類弓千,我們了解一下,不必深入研究献起。
文章信息
文獻標題:Putative cell type discovery from single-cell gene expression data 發(fā)表時間:2020.05.18 發(fā)表雜志:Nature Methods(IF=30.822) 原文鏈接:https://www.nature.com/articles/s41592-020-0825-9
摘要
作者提出了單細胞聚類評估框架(Single-Cell Clustering Assessment Framework, SCCAF)洋访,用于從單細胞 RNA 測序(scRNA-seq)數(shù)據(jù)中自動鑒別可能存在的細胞類型镣陕。通過迭代地對給定的細胞集合應用機器學習方法,該方法能同時鑒定不同的細胞亞群及其特征基因姻政,這些差異表達的特征基因能有效區(qū)分目標亞群和其他細胞呆抑。作者以經(jīng)過專業(yè)注釋的公共數(shù)據(jù)集為評估基準,發(fā)現(xiàn) SCCAF 能精確地自動識別出 ground truth 的細胞分群模式汁展。
引言
單細胞測序的主要用途之一是識別樣本中包含的細胞類型鹊碍,也即目前常用的諸如 Seurat 和 Scanpy 等分析流程,基于(無)監(jiān)督聚類完成細胞分群食绿,并結合已知的 marker 基因進行分群注釋侈咕。然而,這一分析過程常常伴隨以下問題:
- 對一個新的數(shù)據(jù)集來說器紧,其實際包含的細胞類型數(shù)量是未知的耀销。盡管有工具可用于評估數(shù)據(jù)中可能的聚類數(shù)量(SC3)或基于數(shù)據(jù)空間距離進行聚類合并(DendroSplit),它們都無法保障聚類結果反映的是真實生物學規(guī)律铲汪;
- 面對大樣本數(shù)據(jù)集熊尉,純手動注釋耗時費力;
- 盡管有多種基于參考數(shù)據(jù)集的自動化注釋工具(SingleR掌腰、CHETAH狰住、ACTINN、scClassify 等)辅斟,它們通常難以發(fā)現(xiàn)新的細胞類型转晰。
基于上述問題,作者提出了一種基于 python 的自動化方法——SCCAF士飒,用以輔助發(fā)現(xiàn)新的查邢、尚未被注釋的細胞類型。
SCCAF 原理:基于自映射(Self-projection)的方式
對給定的 scRNA-seq 表達矩陣酵幕,SCCAF 包含以下步驟:
- 初步聚類:基于(高可變)基因或主成分空間扰藕,利用諸如 k-means、louvain芳撒、leiden 等聚類算法邓深,得到實際聚類(actual clusters)的結果。
- 自映射:將每個聚類的細胞隨機分割成訓練集和測試集笔刹,訓練一個分類器作用于測試集芥备,得到預測聚類(predicted clusters)。對于給定的聚類舌菜,理想的分類器應該能恰好準確地從測試集中識別出來自相同聚類的細胞萌壳。如果發(fā)生了“過度聚類”(over-clustering),分類器就無法將這些衍生出的聚類區(qū)分開。如果發(fā)生“聚類不足”(under-clustering)袱瓮,由于該結果代表了混合的細胞類型缤骨,分類器的表現(xiàn)也應該變差。
- 混淆矩陣:評估 predicted clusters 和 actual clusters 的一致性可以得到混淆矩陣(confusion matrix)尺借。如上圖 j绊起,聚類 B 的自映射一致性很好,而 A燎斩、C 均互相存在錯誤分類的情況虱歪。
- 混淆矩陣歸一化:計算錯誤分類和正確分類的細胞比例來歸一化不同大小的聚類。
- 混淆矩陣離散化:基于整個數(shù)據(jù)中的最大混淆率
- 聚類合并:假設發(fā)生了 over-clustering栅表,離散化的混淆矩陣可以代表聚類聯(lián)結圖(cluster connection graph)实蔽,直觀理解就是聚類之間的相似性,相連的聚類被合并谨读。
- 迭代上述過程局装,整體的自映射準確度將逐漸提高,直到達到閾值劳殖。
- 關于分類器:默認使用 logistic regression 模型铐尚,其他包括支持向量機(support vector machine)、決策樹(decision tree)哆姻、隨機森林(random forest)和貝葉斯模型(Gaussian naive Bayes)
上圖是 SCCAF 用于模擬數(shù)據(jù)集的情況宣增,非常直觀地表示了 SCCAF 的計算流程。
SCCAF 應用于真實數(shù)據(jù)
作者首先利用已經(jīng)發(fā)表的公共數(shù)據(jù)測試 SCCAF 的性能矛缨。從圖 a 可以看到爹脾,如果采用常規(guī)的聚類分群,調高分辨率能發(fā)現(xiàn)一些占比較小的細胞類型箕昭,但會使得占比大的亞群被過度聚類灵妨;減小分辨率,盡管準確區(qū)分了占比大的亞群落竹,卻無法找出占比小的亞群泌霍。而 SCCAF 通過迭代地自映射和聚類合并,成功解決了上述問題述召。
接下來朱转,作者評估了迭代次數(shù)對分群準確性的影響。隨著迭代次數(shù)增加积暖,準確性的增加呈現(xiàn)類似菌落生長的 S 型曲線藤为。當達到趨近于 100% 的準確度時,繼續(xù)增加迭代次數(shù)將面臨過度合并聚類的風險夺刑,準確性反而會下降缅疟。
最后琼梆,作者將 SCCAF 應用于小鼠造血干細胞的數(shù)據(jù)集,鑒定出紅細胞發(fā)育過程中的不同細胞狀態(tài)及其轉錄動態(tài)變化窿吩。一系列真實數(shù)據(jù)的測試說明,SCCAF 不但在諸如胰腺错览、神經(jīng)系統(tǒng)等異質性離散的樣本中效果拔群纫雁,在造血、分化等異質性呈連續(xù)特征的數(shù)據(jù)集中的表現(xiàn)也不錯倾哺。
在使用上轧邪,SCCAF 基于 AnnData 對象,可以無縫銜接到 Scanpy羞海。目前忌愚,源碼已上傳至 github:https://github.com/SCCAF/sccaf,作者另外提供了多個示例教程:https://github.com/SCCAF/sccaf_example却邓。SCCAF 還作為 Human Cell Atlas(https://humancellatlas.usegalaxy.eu/) 的 Galaxy 在線工具之一硕糊。
總結
之所以選這篇文章,當然是因為我最近在體驗它的工具啦腊徙!效果確實不是吹的简十,按照教程的步驟,在初始聚類時選一個較高的分辨率(比如 leiden 算法下選 1.5)撬腾,盡量把罕見細胞亞群給分出來螟蝙,再借助 SCCAF 強大的聚類合并功能,很容易就能得到恰當?shù)募毎秩航Y果了民傻。去年 2 月發(fā)表在 Science 上的人類胸腺細胞圖譜文章【A cell atlas of human thymic development defines T cell repertoire formation(http://dx.doi.org/10.1126/science.aay3224)】中的分析思想也是用無監(jiān)督聚類結合 logistic regression 分類器得到更準確的細胞分群(兩篇文章的通訊作者都是 Sarah A. Teichmann……)胰默。
以前,單細胞測序的分析流程通常是先找大聚類漓踢,再取子集做亞聚類牵署。面對占比較小的細胞類型時,也曾有先過度聚類喧半,再手動合并的做法碟刺,我自己就這么干過。然而薯酝,現(xiàn)在的單細胞文章動不動就給你幾十萬半沽、上百萬細胞,即使這樣吴菠,還是會發(fā)現(xiàn)某些類型的細胞只捕獲了幾十個者填,要是還像原先那樣,不但步驟繁瑣做葵,而且那分群圖還看得人眼花占哟。SCCAF 相當于把這些中間步驟自動化了,確實是很大的便利。
當然榨乎,任何方法和工具都要經(jīng)歷時間的考驗怎燥,每年新開發(fā)的生信工具那么多,大浪淘沙剩下的來來去去都是那幾個蜜暑。此外铐姚,工具類文章做測試時,總是偏愛那么幾個代表性數(shù)據(jù)集(PBMC肛捍、CBMC隐绵、胰腺、神經(jīng)系統(tǒng)等)拙毫,但人體在時間和空間的維度上都具有相當?shù)膭討B(tài)復雜性依许,同樣的方法,用于不同課題缀蹄、不同設計產(chǎn)生的單細胞數(shù)據(jù)峭跳,效果的差別可能超出我們的想象。一個典型的例子就是數(shù)據(jù)整合缺前,自從 2018 年 Seurat 團隊提出 CCA 整合分析以來坦康,直到今天,單細胞數(shù)據(jù)整合工具仍然在野蠻生長之中诡延。SCCAF 也不例外滞欠,相信這種為大樣本單細胞分析提供的便利,會使其在未來接受各種奇葩數(shù)據(jù)的檢驗肆良,也許哪天它也會在某個新工具文章中作為襯托紅花的綠葉……
最后筛璧,我大致看了作者在 github 上的源碼,中間有一個隨機抽樣劃分訓練集和測試集的步驟惹恃,作者似乎沒有加隨機數(shù)種子:
這就使得同一套數(shù)據(jù)集每次分析時都會產(chǎn)生略微不同的訓練集和測試集夭谤。根據(jù) SCCAF 的算法原理,我大致猜測它可能會影響某些復雜情況下自映射得到的混淆矩陣巫糙,進而影響最后的聚類合并結果朗儒。由于時間有限,我還沒評估過這個小缺陷對數(shù)據(jù)分析可重復性的影響到底有多少参淹。個人認為醉锄,它至少應該加上隨機種子參數(shù),給用戶一個重復分析的機會浙值,這一點 Seurat 就做得相當好恳不,幾乎每一個常用分析函數(shù)都設置了隨機種子。
生活很好开呐,有你更好