十月文献阅读记录
文献阅读一
Current best practices in single-cell RNA-seq analysis: a tutorial
Malte D Luecken & Fabian J Theis
Review
Molecular systems biology
文章摘要
随着越来越多的分析工具的出现,在这一领域生成一个最新的工作流程来分析数据变得越来越困难。这篇文献详细介绍了一个典型的单细胞RNA-seq分析的步骤,包括预处理(质量控制、标准化、数据校正、特征选择和降维)和细胞和基因水平的下游分析。基于独立的比较研究,为这些步骤制定了当前的最佳实践建议。https://www.github.com/theislab/single-cell-tutorial
介绍
目前单细胞测序分析的工具日益剧增,同时随着单细胞测序技术的发展,所产生的数据集大小也随着剧增,尽管很多工具能够保证其单独的可使用性,但是对于不熟悉这个分析领域的新人来说,缺乏标准化是一个明显的障碍。作者表示目前工具由不同语言编写(其中以R和python居多),而许多工具也限制在各自使用的语言环境中缺乏良好的整合;而整合性的平台如Seurat、Scater等又有着各自的优劣势;作者希望藉由对单细胞测序分析过程中步骤的介绍及一些工具的比较,提供一个良好的单细胞测序分析教程以供参考。
文章将整个流程分成预处理以及下游分析两个模块
预处理流程包括以下步骤:
Raw data processing
QC
Normalization
Data correction and integration
Feature selection;dimensions reduction
Visualization
下游分析包括以下:
Cluster analysis
Trajectory analysis
Differential expression analysis
Gene set analysis
Gene regulatory networks
Raw data processing
数据产生的方法不同:有plate-based、drop based等,在结果中都会存在不同的错误,如空液滴或者双液滴捕获造成的非正常的0值和异常高的表达读数都是drop-based方法中出现的,在开始处理数据之前需要对这些异常值进行处理以降低这些异常值的影响。
问题记录:是否有合理的实验方法或者数据如何处理能有效的判断空液滴的状况或者针对异常高的双细胞液滴的数据类型能有合适的分析?
QC
不同的方法通过根据设定的阈值对数据进行初步筛除掉低质量的数据使得数据量有所减少。
问题记录:文章提到QC后的数据进行下游分析时候根据下游分析结果根据需要返回进行重新QC,那么如果多次重QC得到的最后的下游分析结果是否有过度的干涉导致与实际样本的状况不一致。
数据整合,特征选择及可视化
这个章节对存在批次效应的情况下,对不同的处理批次效应的方法做了一些介绍;介绍了如何进行特征选择,降维的原理介绍。
问题记录:批次效应分析如何与真实的生物学差异区分开,如何有效去除批次效应(有没有实验设计的方法可以有效降低批次效应的例子)。批次效应去除的不同方法间如何评价(特别是对于探究性的实验结果如何证实确实为真实的生物学差异?)?
聚类
问题记录:通过聚类算法得到的聚类结果依据分辨率不同会有不同的分群结果,通过文章中提到的差异基因分析等可以结合确认细胞类型(如何进行生物学实验验证?)
总结
文章介绍了scRNA-seq中每个部分的原理,分享了代码,通过github中提供的代码,可以相对顺利地配置好所需环境,初步构建一个比较清晰的scRNA-seq分析的流程,在后续也可以根据需要对流程进行丰富或者更改。
文献阅读二
Identifying cell populations with scRNASeq
Tallulah S. Andrews, Martin Hemberg*
Review
Molecular Aspects of Medicine
文献摘要
单细胞转录组在进⾏单个细胞的表达定量检测是强有力的⼯具,但是它产出的数据噪⾳和维度都比较高,相比bulk RNA-seq增加了分析难度。⽂章讲了几种不同的实验流程和分析方法,可以识别具有重要⽣物学意义的基因,可以将数据投射到低维,可以对细胞聚类推断亚群,可以解释验证鉴定到的细胞类型和细胞状态。
介绍
⼈体中⼤约有4*10^13个细胞,形态与功能都具有多样性。传统的⽅法是根据形态学而非分子学特征将细胞分成200种。免疫荧光和流式细胞分选技术可以基于细胞表面蛋白标记物存在与否进行更精确地分类,但是这些技术还仅限于易于分离的组织(如:血细胞谱系),⽽且只能检测表⾯少量的标记物。单细胞测序的发展允许使⽤整个转录组的数千个细胞去鉴定细胞类型,⽬前scRNA-seq已经应⽤在许多发育中的或者固定时间点的组织和器官。
These studies include various regions of the brain (Darmanis et al., 2015; Karlsson and Linnarsson, 2017; Liu et al., 2016; Tasic et al., 2016; Zeisel et al., 2015), retina ((Baron et al., 2016; Jaitin et al., 2014; Macosko et al., 2015; Zheng et al., 2017)), pancreas (Baron et al., 2016; Segerstolpe et al., 2016;Wang et al., 2016), immune cells (Jaitin et al., 2014; Villani et al.,2017), early embryonic development (Biase et al., 2014; Goolam et al., 2016; Xue et al., 2013) and in hematopoiesis (Velten et al.,2017; Wilson et al., 2015).
⽂章列出了以下一些⽅法可以根据scRNA数据识别细胞群:
[图片上传失败...(image-e6127d-1572779520619)]
⽂章还讨论了设计实验时需要考虑的不同⽅案,因为实验设计的好坏直接影响下游分析结果;讨论了鉴定⽣物学相关的细胞类群对scRNA数据分析的挑战以及应对的⼀些统计方法;然后就是无监督式聚类,用来细胞分群;最后讨论了如何去验证分群的细胞是否真的有生物学意义。
scRNA-seq的应用需要根据具体实验进⾏调整。比如⼀个常用的应用就是鉴定稀有(数量小于1%)细胞群,这需要大量的供试细胞。例如:Campbell对小鼠下丘脑的20921个细胞进行测序,结果鉴定了包含少于50个细胞的神经元亚群(占比<0.2%);另⼀个scRNA-seq的应用就是确定相似的细胞类型之间有何差异,这就需要对低表达基因提高检出率,降低技术噪音。
实验方法介绍
与第一篇文献对比,这篇文献在实验方法这里做了比较详细的介绍,主要包括:
单细胞测序流程
1.单细胞分离;2.建立文库;3.测序
基于液滴和基于板的方法
主要介绍了两种方法的各自优势及适用的类型。
一些实验可能产生的情况
介绍了双细胞液滴、批次效应、多重测序发生的原因及目前一些解决的方法。
降维和特征选择
介绍了PCA、tSNE、DM各自的原理及适用条件;以及特征选择的一些方法原理。
无监督聚类鉴定细胞群
单细胞比较常用的用途是识别细胞群。从⽣物学⻆度看,细胞是有异质性的,⼀个细胞群通常包含不同的细胞亚群;还可以看同种细胞类型的不同状态。从数学角度看,对细胞群的识别是⼀个无监督聚类的问题。目前已经有⼏种成熟的⽅案应用到了单细胞中。将⼤量细胞分成k个群的可能性多到不可想象,因此我们不能考虑所有的可能分群情况,而是应该寻求最优解。聚类的质量取决于群内与群间的相似性比较,不同的指标对数据的基础分部做不同的假设。文章提到:将⼀种方法应用到和算法本身假设不同的数据上将导致错误的聚类,并且没有⼀种聚类⽅法具有普适性。
介绍了K-means、Hierarchical clustering、Density-based clustering、Graph clustering的原理及其适用性、缺点。
总结
聚类方法的⼀个关键就是要识别多少组别类型(分辨率),粗略聚类可以识别出少数非常不同的聚类,这些聚类与细胞类型可能相对应;而精细聚类可以识别大量但不明显的聚类,这些聚类可能对应不同细胞状态大多的聚类算法需要我们预先定义个数(如k值)或者与聚类粗细相关的参数(如密度参数),而选择合适的K值是比较麻烦的,因为没有⼀套标准的选择方法。同时,聚类根据不同分辨率的聚类结果也需要进行生物学验证,确保没有出现过拟合的现象。
问题记录:聚类算法即使使用均匀分布的数据,仍能够找到一些不同特征进行分类;相对的,某一聚出的类即使确定不是噪音效应而是有相关的生物学效应,也可能属于同一细胞类型(可能属于同一种细胞类型的不同时期)
针对文献阅读一的聚类如何进行生物学鉴定,在这个文章提供了一些方法参考:
数据处理方面:对同个数据集运行多个算法以比较一致性;
实验方面:找差异表达基因;比较不同物种的同一类;与特定细胞群相关的关键转录因子水平。
总结一
文献一和文献二都是关于scRNA-seq分析的综述,通过这两个综述,可以知道目前由于细胞数量和灵敏度之间的平衡、工具的多样等因素,无法找到一个最优的scRNA-seq实验平台,中间涉及到的步骤都有其适用条件,不存在一种方法在任何条件下都是最优方法;因此,需要通过更多的外部数据及生物学实验来进行验证,同时需要更加注意以后做实验时候关于合理如何设计实验产生数据,避免从数据产生的源头出错后才能继续后续的分析。
文献阅读三
Comprehensive Integration of Single-Cell Data
Tim Stuart, Andrew Butler,Paul Hoffman, ..., Marlon Stoeckius,Peter Smibert, Rahul Satija
Cell
文献摘要
单细胞转录组学已经改变了我们描述细胞状态的能力,但是进行更深入的生物学理解不仅仅需要集群的分类列表。随着测量不同细胞形态的新方法的出现,一个关键的分析挑战是整合这些数据集以更好地理解细胞的特性和功能。 工作有三个亮点:通过锚定的方法来整合不同平台,不同形态的多种数据;能同时整合scATAC-seq数据 ;进行空间基因表达模式分析 。
介绍
文章提出在分子生物学、微流体学和计算机方面的进展已经改变了单细胞测序领域的增长速度。目前为止单细胞的一些重要突破如下:
- immunophenotype (Stoeckius et al., 2017; Peterson et al., 2017)
- genome sequence (Navin et al., 2011; Vitak et al., 2017)
- lineage origins (Raj et al., 2018; Spanjaard et al., 2018; Alemany et al., 2018)
- DNA methylation landscape (Luo et al., 2018; Kelsey et al., 2017)
- chromatin accessibility (Cao et al., 2018; Lake et al., 2018; Preissl et al., 2018)
- spatial positioning (Moffit et al, 2018; Wang et al., 2018b; Codeluppi et al., 2018)
这些技术都有着各自的优缺点,各自能够特异识别细胞的某些信息,这使得对于数据的整合有了迫切的需求。
进行单细胞整合面对以下两个问题:
-
怎么协调这些跨越个体、技术和模式产生的不同单细胞数据集?
how can disparate single-cell datasets, produced across individuals, technologies,and modalities be harmonized into a single reference?
-
一旦参考数据库建立后,其数据及元数据如何提高新实验的分析?
once a reference has been constructed, how can its data and meta-data improve the analysis of new experiments?
这些问题适用于统计学习中已建立的领域。针对整合的问题,文章介绍了之前两种整合的方法,CCA和基于MNN的方法。在这篇文献中,使用的方法是综合了CCA和MNN的方法提出了更加稳健和准确率更高的方法: 利用两个或多个独立单细胞测序数据集中存在的少部分属于同一细胞类型的数据点对整个数据集进行“锚定”进而整合。
结果
整合不同数据集的目的:一个实验中呈现的信息有可能可以给另一个实验的解释提供信息。
假设:为了使不同的实验相互关联,假设数据集之间存在对应关系,并且至少有一个细胞子集代表一个共享的生物状态。
过程:
CCA降维,使用L2-标准化处典型相关向量(A/B图)(先使用CCA是因为MNN进行批次效应矫正可能会使得同种细胞差异消失,所以先进行CCA降维确保相似细胞聚类)
在这个共享的低维空间中搜索MNNs(C图)。将得到的细胞对称为锚(anchor),因为它们编码了跨数据集的细胞关系,这些数据集将构成所有后续集成分析的基础;即使存在显著的数据集差异,由于CCA可以有效地识别共享的生物标记和保守的基因相关模式 ,锚可以成功地恢复匹配的细胞状态。
如何评价锚点选择(D图):通过考察每个锚点配对在参考数据库和被测数据集中的近邻的交叠率对相应的锚点的可靠性进行评价(给出评价分数);
测量被测数据库中的非锚点单细胞与锚点单细胞的距离,乘以锚点稳健性分数后得到一个锚点权重矩阵,即被测数据库中的每一个非锚点单细胞受到每一个锚点单细胞在数据修正上的影响程度;
-
将被测数据库中的每个数据点的表达谱减去该数据点对应的锚点权重值与锚点差异值的乘积(与基于MNN方法的操作类似),即得到细胞类型特异的批次效应修正后的可直接与参考数据集进行整合的数据集(E图)。
为了检验算法的优劣,文章将新的算法与之前的CCA、MNN、scanorama等进行比较,分别测试了对一个胰岛单细胞数据集的独立子数据集进行整合的能力,结果使用UMAP进行可视化。
其中图A-D是使用不同子数据集进行颜色标记,图E-H是使用不同细胞类型进行颜色标记;可以看出新的算法Seurat.V3将不同数据集的细胞成功整合到同一聚类中,而CAA、MNN等仍存在较明显的批次效应。文章后续通过三个例子分别展示Seurat.V3在单细胞转录组、表观组、蛋白组和空间位置信息数据集之间进行信息整合及迁移的良好应用。
总结
文章介绍的Seurat.V3适用于各类单细胞测序数据集的整合算法,在消除批次效应、保留真实生物学效应方面比前述的CCA/MNN等有了更优的表现。
问题记录:在这种有效的多模态数据整合的算法帮助下,是否对细胞类型的定义有了更好的推动?对于多种数据集整合后如何对他们之间的因果关系进行描述?数据集之间关系的确定是否能作为细胞类型的一个辅助判断?
文献阅读四
A comparison of single-cell trajectory inference methods
Wouter Saelens, Robrecht Cannoodt,Helena Todorov,Yvan Saeys
nature biotechnology
(之前阅读的三篇文献涉及轨迹推断的内容较少,所以第四篇阅读了关于多种单细胞轨迹推断方法的比较)
文献摘要
轨迹推断方法分析来自数千个单细胞的全基因组组学数据,并通过计算推断这些细胞沿着发育轨迹的顺序。虽然目前已经开发了70多种轨迹推断软件,但是它们输入的数据要求和产生的输出模型相差很大,比较它们的性能存在困难。文章在110个真实数据集和229个合成数据集上对其中的45个方法进行了细胞排序、拓扑结构、可伸缩性和可用性的基准测试。结果突出了现有工具的互补性,因此对于轨迹推断方法的选择主要取决于数据集的维数和轨迹拓扑。基于这些结果,作者开发了一套指导原则来帮助用户为他们的数据集选择最佳方法。作者提供免费的数据和评估流程(https://benchmark.dynverse.org),对于开发用于分析日益庞大和复杂的单细胞数据集的改进工具会有所帮助。
介绍
单细胞组学数据包括转录组学、蛋白质组学和表观基因组学数据在,为研究细胞周期、细胞分化和细胞激活等细胞动态过程提供了新的机会。这种动态过程可以使用轨迹推断(trajectory inference,TI)方法进行计算建模,也称为伪时间分析,该方法根据细胞表达模式的相似性对其进行轨迹排序。由此得到的轨迹通常是线性的、分叉的或树形的,但是最近有方法也识别更复杂的轨迹拓扑,如cyclic或disconnected graphs。TI法提供了对动态过程的无偏倚和转录组范围的认识,从而允许客观地识别细胞的新的子集(细胞亚群),描述一个分化树和对一个或多个分支负责的调节相互作用的推断。
虽然已经开发出的TI算法很多,但是TI方法之间的两个最显著的区别是:是否修复了轨迹的拓扑;可以检测到的图形拓扑的类型。早期的TI通过在算法上或由用户提供的参数固定拓扑结构,因此主要关注在沿着确立的拓扑结构上进行细胞的排序。近期的算法还进行了拓扑推断,一方面使得难度增加,但是允许对分支内的顺序和连接这些分支的拓扑进行无偏识别。 由于以上提及的这些差异, 定量地评估它们的性能、鲁棒性和可用性很重要。 文章提到,针对这些方面进行比较的研究有了一些了,但是针对大量数据集的TI算法比较仍然缺乏。为了对于初学者方便选择以及后续方法的改进提供借鉴;本文对45种方法进行了稳定性、精确性等比较,发现不同方法其优势存在互补,针对不同数据集的不同特点,可以找到适用表现良好的TI方法。同时,针对研究者如何选择,也开发了一个交互式的指导。
结果
针对45种不同方法:从以下四个方面就行比较:
1. 准确性;2. 在细胞数量和特征方面的可伸缩性; 3. 对数据集抽样后预测的稳定性 ;4.工具在应用的可用性。
总的来说,在四个评估标准中有很大的多样性,只有少数几种方法,如PAGA、Slingshot和SCORPIUS,表现良好。每个评估详细展现在了图中。
文章后续说明了方法间存在互补,也就是说没有一种方法能够满足所有的需求,所以如何选择方法以适用于我们自己的实验是一个需要思考的问题。
总结
首先,有着这么大量的TI方法,我们在具体实验中应该选择多种作为参考比较,并且针对不同方法的适用性进行选择;其次,即使已知期望的拓扑结构,也可以尝试做出假设。当使用不同种方法输出结果时,可以给我们提供额外的信息,比如如果结果生成更复杂的拓扑时,这可能表明底层的生物学比预期的要复杂。
问题记录:TI方法间存在iuput不同的问题,那么是否有可以建立相同公共接口的方法?
问题记录:细胞存在细胞周期不同的情况,拟时间分析是否受影响,如何消除这种影响?
问题记录:在scRNA中如何利用轨迹信息识别与不同表达程序激活相关的转录因子?
总结二
文献三介绍了Seurat V3的工作方法,读的时候只是大概了解了一下CCA的MNN的基础概念,在下个月阅读2018年CCA和MNN相关的两篇文献;Seurat V3目前仅尝试了基础guide的代码,还没跑过文献中提到的数据整合的流程,后续会尝试一下;文献四提到的TI,下个月准备阅读关于monocle3的文献并尝试一下guide的代码。