ixxmu / mp_duty

抓取网络文章到github issues保存
https://archives.duty-machine.now.sh/
116 stars 30 forks source link

基因集分析的前世今生(附进行通路富集分析的9个tips) #3455

Closed ixxmu closed 1 year ago

ixxmu commented 1 year ago

https://mp.weixin.qq.com/s/iwG3Gor6f9s400LamBQ8Rw

ixxmu commented 1 year ago

基因集分析的前世今生(附进行通路富集分析的9个tips) by 生信菜鸟团

我们通过差异分析得到基因的FC和Pvalue后,基本上都会走GO/KEGG富集分析和GSEA基因集富集分析流程,这似乎已经成为了我们转录组分析中的固定流程,但实际上关于基因集的分析(GSA),科学家们经历了很长时间的探索,目前常用的GSA方法也都有自己的不足,新的方法和工具正在不断被开发,GSA的分析对于科学问题的阐述仍有很多缺陷并面临挑战。这周,我们通过两篇文献,一起来看看GSA的前世今生,目前有哪些主流的算法、方法,这些方法又是基于什么样的前提假设?我们常用的工具使用的又是什么方法,在解释科学问题时这些方法有哪些局限性和不足?我们在选择方法、工具进行GSA时需要注意哪些问题?


Gene Set Analysis: Challenges, Opportunities, and Future Research

引言:

早期分析基因表达数据的方法是单基因分析,其中使用t检验或Wilcoxon秩和检验等统计检验对病例和对照样本的每个基因的表达量进行比较,并计算p值。然后,为了减少多重比较产生的假阳性数量,对多重比较进行了调整。接下来,调整后的p值小于给定阈值的基因被预测为差异表达。最后,我们尝试利用这些基因进行生物学解释。

这种方法有几个缺点:

①过分的多重检验矫正可能会导致假阴性,特别是像比较保守的方法,如Bonferroni

②主观上,研究人员采取任意的cut-off截止值来选择合理数量的基因来进行进一步的研究和解释(有cherry pick的嫌疑)。客观上,对阈值的不同选择可能会导致不同的生物学解释,保守阈值可能导致假阴性,放宽阈值可能导致假阳性。

③细胞过程通常与具有共同生物学功能或属性的基因组的表达模式的变化有关,这一组基因中有意义的变化比单个基因的变化在生物学上更可靠和可解释(关于这些基因集的先验知识可以通过公共在线数据库获得,如GO、KEGG和OMIM)

④高通量技术虽然使在单一实验中监测数千个基因的表达成为可能,但也引入了处理高维数据的挑战。为了处理高维数据,降维方法被用于下游分析和可视化中(潜在偏差)。在高通量基因表达研究中,依赖于生物学相关的基因集是最直观和生物学相关的降维方法(考验大家的生物学背景知识)。

⑤当不同处理中单基因的测量值差异细微时,单基因方法很难将基因表达的真正差异与样本的生物学差异区分开来。另一方面,基因集分析可能能够检测到一个基因集内的基因表达模式的这种微妙但一致的变化。

⑥多功能基因,即参与多种生物活动的基因,是很常见的。例如,Pritykin等人报道,果蝇、智人和酿酒酵母的多功能基因分别占注释基因的24、26和19%。如此多的多功能基因的存在意味着单基因分析可能会导致错误或不明确的结论。

⑦单基因方法可能报告几百到几千个基因的差异表达,解释一长串差异表达的基因是一项繁琐的任务,容易使研究者倾向于一个感兴趣的假设(先入为主)

基因集分析(GEA),也称为富集分析,试图解决这些缺点,并从基因表达数据中获得见解。基因集分析的主要目的是确定一组特定的感兴趣的基因的表达水平的富集或缺失,称为一个基因集

基因集是基于各种标准定义的,例如作为某些生物途径的成员或在特定条件下共同表达。这些基因集被收集到称为基因集数据库的集合中,如MSigDB、GeneSigDB和GeneSetDB是三个专门为基因集分析开发的集合。

这些基因集的收集使研究人员能够对生物学相关基因而非单个基因进行分析,以确定基因中哪些与表型相关

目前已经有有大量的基因集可用的分析方法,这些方法的不同之处在于

  • 基本假设
  • 富集理念
  • 零假设
  • 显著性评估

本文提供了100多种基因集分析方法/工具的列表(推文中将对具有代表的工具使用方法对应列表截图在推文中进行展示,有兴趣的同学可以自己检索文章下载附表),但本综述的目的不是讨论所有可用于基因集分析的工具。相反,作者仅使用一组有代表性的方法,根据基因集分析方法的不同,提供基因集分析法的模块化概述,并强调了每一类方法的缺点及其面临的挑战。

接下来我们将先来系统地看看这些方法的不同之处:

思维导图部分截图

为了更好的展现这些方法,我们制作了一个详细的思维导图,下面的内容(1-3)属于基于思维导图提纲挈领的介绍,我们过滤掉了大部分数理部分便于读者流畅阅读,对数理部分有兴趣的同学可以下载思维导图并阅读原文献,在公众号后台回复“GSA思维导图”即可获得完整清晰思维导图。

1.基因集分析(GENE SET ANALYSIS, GSA)

GSA方法可以大致分为三类:

  • Over representation analysis(ORA)
  • functional class scoring(FCS)
  • pathway topology-based methods

①ORA

ORA其实是单基因分析的自然延伸,ORA使用一个基因列表L,该列表包含由单基因分析方法预测为差异表达的基因。这些基因可以是在两个不同条件下的表达量差异显著的基因,或者是与某种生物学过程相关联的基因。比如我们常见的GO/KEGG富集分析。

其基本假设为:基因独立性和等效性。具体来说,ORA假设基因在生物过程中是相互独立的,并且对于生物过程的影响是相等的。

其零假设为:基因列表L中属于某个先验基因集(如来自GO、KEGG)中的基因集Gi在两个或多个表型之间没有差异表达

计算:在Gi中存在n'i个差异表达基因的概率通过超几何分布计算

显著性评估:

  • Fisher精确检验
  • 虽然Fisher精确检验可以在Table 1中计算小样本和大样本情况下的精确p值,但是当样本计数很大时,计算可能会变得不稳定
  • 方法1:对于n值较大时,超几何分布趋向于二项分布。因此,二项分布可以用来估计Fisher精确检验的p值
  • 方法2:χ2检验,通常用于比较两个或多个分类变量之间的比例是否相等。在这里,我们可以使用χ2检验来比较两组基因中不同类别的基因数量是否存在显著差异,并计算其p值。

其优点在于:简单、完善的底层逻辑以及易于实现

其缺点在于:基本假设在生物学上并不总是成立的,事实上,已经证明基因、蛋白质和其他生物分子通常会协同作用;并且ORA只利用差异表达基因,而忽略了其余基因的所有定量测量。然而,即使那些p值略高于截止值的基因也可能对通路活动的检测有所贡献。

②FCS

与ORA相比,FCS方法的主要目标是使用来自表达式矩阵的所有信息来解决富集问题,而不依赖于ORA在生物学上无效的假设

FCS方法常见步骤:

  • (基因分数)基因集分数
  • 显著性评估
  • 多重比较的矫正

FCS可以根据是否计算基因分数进一步分为单变量和多变量方法

univariate FCS

GSEA是使用最广泛的单变量FCS方法之一,以GSEA方法为代表对 univariate FCS进行阐述

计算:使用对照组和实验组样本中的基因表达测量值之间的信噪比(SNR)差异来计算基因得分;对基因根据其分数进行降序排序,累加求和计算基因集得分(又称富集得分,ES)

其零假设为:没有任何基因集与分组表型相关

显著性评估:ES逐步累计求和(random walk)的最大值为MES,使用permutation test对MES进行显著性评估

具体地说,GSEA会对样本标签进行1000次随机置换,并计算每次置换下的MES值,为ES生成一个"null distribution"。最后,GSEA会根据实际数据的MES值与这1000个随机置换下的MES值产生的零分布,计算观察到的ES的p值,以确定实际数据的MES值是否显著

发展:

  • (Damian and Gorfine (2004) raised concerns)GSEA可能会仅仅因为基因集的大小而忽略高度富集的基因集。为了解决这些问题,Tian等人(2005)认为,t-test或Wilcoxon秩和检验统计量可以检测到背景分布中的适度但协调的变化,并使用gene sampling和phenotype permutation来产生背景分布。这种变化指的是基因集中的基因在表型之间存在一定程度的相关性,但是这种相关性不足以导致显著的偏移。缺点:事实上,他们并没有测试不同分组中基因得分分布的差异,而是测试了一个位置的变化,即平均值或中位数的变化,这就导致了对部分上调部分下调基因集的不敏感
  • PAGE参数化方法,统计学上更敏感,计算资源消耗更少。零假设为:给定微阵列数据集中的所有基因都是相互独立且相同分布的,即它们不是共同调控的。使用样本组之间的fold change,来计算z-score,使用正态分布进行显著性评估(根据中心极限定理,大样本量的自随机变量的平均值的抽样分布是正态分布,而不管基础总体的分布。因此,基因集的平均倍数变化值(fold change)的分布应该是正态的)。该方法具有较高的灵敏度,但特异性较低。
  • adjusted GSEA。使用weighted Kolmogorov–Smirnov statistic & FDR,如今GSEA一般默认认为就是adjusted后。
  • SEA。GSEA基于Kolmogorov–Smirnov test,缺乏灵敏度,为了避免使用Kolmogorov–Smirnov统计量和对计算资源要求很高的permutation test,Irizarry等人建议使用一种参数方法,使用标准正态分布来评估每个富集分数的显著性。基于观察到的Q-Q图,他们认为在实际应用中假设基因值分布的标准正态分布是有效的。其基本假设为:假设t-test统计量服从标准正态分布,并且忽略了基因集合成员之间的相关性。使用two-sample t-test Z-score计算基因分数,使用正态分布进行显著性评估。Irizarry等人承认,所提出的z分数的一个局限性是,它可能无法检测到近一半的基因上调,其余的基因下调的基因集,进而建议采用标准化的χ2-test score。但是,Tamayo等人关注SEA忽略基因-基因相关性的基本假设,质疑其实用性和是否现实,对Irizarry等人的说法进行了反驳,通过比较SEA和GSEA的结果,他们报道了SEA一致地产生了更显著的基因集,例如,他们报告说,对于一个胰腺数据集,SEA预测42%的基因集具有显著差异富集,几乎是GSEA的5倍。在设计的基因表达谱和表型之间几乎没有显著的相关的实验中,GSEA预测近0%的基因集为差异富集,而SEA预测许多基因集为差异富集。
  • Jiang和Gentleman提出了基因和基因集分数计算线性模型作为GSEA的扩展。sign test被用来评估一个基因集合内的基因的上调或下调的流行率,而不管这种调控的大小,但发现缺乏敏感性。此外,他们还提出,与使用平均值作为基因集得分相比,中位数不太容易受到离群值效应的影响
multivariate FCS

多变量方法跳过计算基因分数的步骤,直接从表达矩阵中计算基因集分数。

方法:

  • Globaltest

该方法基于广义线性模型,旨在回答一个问题:给定基因集Gi中的基因的全局表达模式是否与感兴趣的生物学结果显著相关。

零假设:线性模型中(各基因表达量回归系数)β1 = β2 = · · · = βm = 0

由于样本数量通常少于变量数量(即基因集大小||Gi||),因此无法以传统的方式测试这个零假设。

针对问题提出基本假设:回归系数均来自相同的分布,均值为零,方差未知为τ^2。零假设:τ^2 = 0

  • Hotelling’s T^2-test

该检验是用来检验两个分组的多元均值之间的差异的t检验的自然推广

零假设:对照和处理样本的基因集Gi中基因的平均表达向量相等

显著性评估:

当n(总样本数)>m(Gi基因集中基因数)+1时,服从F分布的统计量

m>n时,使用单值分解(Singular Value Decomposition,SVD)降维

但是多变量方法严格的基本要求(①数据正态性、②样本大小的充分性和③方差齐性)在测试每个基因集的差异富集时,几乎不可能完全被满足。因此,对这些假设不具有鲁棒性的方法往往会导致不可重复的结果。这是为什么与单变量方法相比,多元基因集分析方法没有被广泛使用的原因之一。

③pathway topology-based methods

并不是通路中的所有基因在其活性中发挥同样重要的作用。通路拓扑结构的知识,如基因产物的相互作用,可以帮助量化基因对通路活性的重要性。拓扑信息可能会提高富集分析的准确性

这些方法也可以分为基于ORA的、单变量的和多变量的方法,以及类似于对应基因集分析方法的零假设

方法工具表现举例:

  • Rahmatallah et al.报道GSNCA在大基因集和通路成员表达发生不均匀变化的情况下的表现优于GSCA。
  • Bayerlová et al.比较了3种单变量FCS和3种基于通路拓扑结构的方法,报道称没有一种基于拓扑的方法优于单变量方法。
  • Ihnatova et al.报道一些基于通路拓扑结构的方法中,与较小的路径相比,较大的路径获得了较低的p值。

clusterProfiler

以上,我们介绍了三种进行GSA的基本方法,大家肯定想知道我们经常用的是什么方法,一般来说大家都是拿Y叔的clusterprofiler包进行GSA分析,我们也将简要介绍一下该包所使用的方法:

The clusterProfiler library was first published in 2012 and designed to perform over-representation analysis (ORA) using GO and KEGG for several model organisms and to compare functional profiles of various conditions on one level (e.g., different treatment groups). Since then, clusterProfiler has matured substantially and currently supports several ontology and pathway annotations, thousands of species with up-to-date gene annotation, users’ annotation data for novel species, and emerging new annotations. Both ORA and gene set enrichment analysis (GSEA) are supported.

可以发现ORA和GSEA在不同的函数方法中使用

clusterProfiler: universal enrichment tool for functional and comparative study

2.基因集评分的显著性评估

在第一部分GSA分析中已经部分谈到,可以联系着看,在这里进行细致分类

①参数方法

在零假设下,通过接受一些简化假设,提出了基因集统计量的参数分布。而后,利用参数分布来评估基因集统计量的意义。

参数化方法是建立基于一些知识或关于基因集分数的潜在分布的假设。例如,PAGE假设一个基因集合内的基因的平均倍数变化值遵循正态分布。SEA,另一种参数方法,假设它的基因集得分——即基因集中每个基因的t检验得分的加权平均值——遵循正态分布。(优点)尽管参数化方法对计算要求不高,但(缺点)它们被批评为过于简单,无法检测真正差异富集的基因集

②非参数方法

非参数方法通常不会对基因集得分的基础分布做出任何强假设,而是采用经验分布

gene sampling

原理:在基因采样中,通过将给定基因集Gi的基因集得分S(Gi)与来自参考集U的随机组装的||Gi||基因集(即所有研究中的基因)的得分进行比较来评估其重要性。在基因抽样方法中,大量的随机基因集被组装起来,并计算它们的得分。然后,Gi的基因集得分的显著性值被计算为导致比Gi得分更强的得分的组装基因集的分数,其中,如果一个得分更倾向于拒绝感兴趣的零假设,则与另一个得分相比,该得分被认为更强。

优点:基因采样不取决于样本数量,它已被广泛用于小样本量数据集的基因集分析

缺点:

  • 依赖于一个基因集内基因之间独立性的不切实际的基本假设
  • 计算资源要求很高
  • 基因采样可能导致大型基因集显著性值缺乏统计可靠性
Phenotype permutation

原理:表型排列,也称为样本排列,通过排列样本标签来评估给定基因集Gi的基因集得分的重要性。首先,计算Gi的基因集得分。SGi表示根据实际基因表达谱的Gi的基因集得分。然后,通过排列样本标签,来合成大量的表达谱。对于合成的表达谱,我们预计Gi中基因的表达模式与表型之间没有关联。接下来,对于每个合成的表达谱,计算Gi的基因集得分。最后,SGi的显著性被计算为导致比SGi更强的分数的合成表达谱的分数,其中,如果一个分数与另一个分数相比更倾向于拒绝感兴趣的零假设,则该分数被认为更强。

优点:表型排列不同于基因抽样,它并不依赖于不现实的基因独立假设

缺点:每个表型都需要大量的样本。这个条件通常并不被满足。

关于phenotype permutation,在我们上一期推文明明PCA区分非常好,但是差异基因数量很少?中ANOSIM部分也有提到,是比较常见的方法

这篇帖子使用例子很形象地介绍了Permutation test的原理,感兴趣的同学可以去看看:

聊一聊置换检验Permutation test的原理

https://zhuanlan.zhihu.com/p/328940140

动态规划

原理:动态规划方法评估了来自 unweighted Kolmogorov–Smirnov统计量的基因集得分的显著性。对于一个包含n个基因的给定数组和一个给定的基因集Gi,首先,他们计算了基因集得分RSGi。然后,他们计算其p值为获得等于或大于RSGi的基因集得分的概率,假设Gi中的基因分布与表型之间没有关联

优点:比排列方法更有效,而且当排列的数量不够大时,他们的方法不会遭受排列方法产生的统计上不可靠的结果。

缺点:与排列方法不同,它不能扩展到其他基因集分数,如GSEA中的weighted Kolmogorov–Smirnov统计量。

3.零假设

在第一部分GSA分析中已经部分谈到,可以联系着看,在这里进行细致分类

①competitive null hypothesis

零假设:与其他被研究的基因相比,Gi中的基因并没有不同的表达模式

显著性评估:在计算一个基因集Gi的基因集得分f(Gi)后,通过gene sampling方法以经验的方式评估f(Gi)的显著性

缺点:

  • 被批评使用基因作为抽样单位,而实验的目的是检测不同表型的变化
  • 忽略了一个基因集合内的基因之间的相关性
  • 据报道被基因集中包含的无关基因 严重影响

②self-contained null hypothesis

零假设:Gi中的基因在不同的表型中没有不同的表达模式。

显著性评估:phenotype permutation

缺点:需要样本量足够大

③hybrid null hypothesis

关注基因相对表达模式的变化。基于hybrid null hypothesis的方法计算给定基因集的Gi的基因集得分,使用所有基因的表达测量,即Gi的基因和¯Gi的基因;然后,使用基因抽样或表型排列方法来评估这个分数的重要性。

GSEA及其基于Kolmogorov–Smirnov统计量的变体,使用的就是hybrid null hypothesis。例如,当前版本的GSEA(版本4.0.3)提供了基因抽样,用于竞争性杂交零假设的显著性评估,表型排列用于自包含杂交零假设的显著性评估。

self-contained null hypothesis根据基因在Gi中的表达值来定义一个基因集Gi的计算基因集得分f(Gi)。其余的基因,即¯Gi中的基因,对这个计算没有贡献。然而,在hybrid方法中,¯Gi中的基因也有助于f(Gi)的值。

可进一步分为:competitive hybrid null hypothesis和self-contained hybrid null hypothesis

GSA分析面临的挑战

  • 缺乏金标准表达式数据集用于评估基因集分析方法
  • 尽管有一个完善的基础统计模型,ORA也有几个缺点。ORA依赖于基因基因独立性假设,该假设在生物学上是无效的。此外,ORA使用一组差异表达的基因作为输入,并平等地对待所有的基因,而不管它们的差异表达的大小。并且,差异表达的基因是通过单基因分析方法来确定的,其中使用任意的阈值通常是一种常见的做法。研究表明,这些阈值的选择可能会影响下游分析的结果。其次,ORA也不能从一个基因集合内的基因中检测到低但一致的信号,即低于所使用的阈值。这些一致的信号被认为在生物学上是重要的。
  • FCS方法旨在解决ORA的一些问题。FCS方法众多,但研究人员对给定实验的选择方法意见不一致。Maleki等人(2019b)提出了一种使用真实表达数据集评估13种基因集分析方法的系统方法。他们表明,这些方法的结果之间几乎没有重叠。此外,一些方法报告了大量的基因集差异富集,一些方法报道的很少。这表明,大多数方法要么缺乏特异性(大量的假阳性),要么缺乏敏感性(大量的假阴性)。
  • 自包含(self-contained)零假设方法的一个局限性是,它们每组需要大量的样本,因为他们使用表型排列来进行显著性评估。这意味着许多可用的高通量数据集不适合用于这些类型的方法。另外,对小样本量的数据集使用竞争性(competitive)零假设基因集分析方法。竞争性基因集分析方法依赖于基因抽样来进行显著性评估。基因抽样是基于基因是独立的假设。这一假设在生物学上是无效的,并可能导致某些基因集仅由于其基因之间的相关性而被预测为差异富集。这个问题引入了假阳性,并降低了特异性。因此,在设计和评价基因集分析方法时应考虑基因-基因相关性。
  • 研究表明,对于许多基因集分析方法,无论是竞争性的还是自包含性的零假设,分析结果在小样本量下都是不可重复的。然而,尽管存在这个问题,小样本量(每组n<5)的研究仍在继续使用这些方法进行分析。因此,需要强调的是,在决定一种合适的基因集分析方法或是否适合使用基因集分析时,数据集的大小是一个重要的考虑因素。此外,在开发新的基因集分析方法时,它们对样本量的敏感性应作为评估过程的一部分进行调查。
  • (其他,参考上述介绍的方法、显著性评估、零假设谈到的优缺点)

GSA分析的未来方向

  • 由于缺乏金标准数据集,使用具有零或恒定基因-基因相关性的正态分布值的模拟数据集已被广泛用于评估基因集分析方法。生物和技术变化以及复杂的基因-基因相关性模式无法使用这种过于简单化的方法进行建模。综合保持基因表达数据和基因集数据库真实性质的数据集是评估新的和现有的基因集分析方法的重要步骤。更具体地说,开发反映真实数据集真实性质的基准数据集对于评估当前和新的基因集分析方法具有重要价值。目前还没有这样的基准,我们建议开发这样的公共基准数据集作为未来的研究。这些基准数据集如果公开,可以促进评估可用的基因集分析方法,并促进开发新方法。
  • Tripathi等人(2013)表明,一些竞争性基因集分析方法对不相关基因的存在很敏感。在应用竞争性基因集分析方法时,我们建议遵循Tripathi等人提供的指南。(2013). 此外,基因集分析的新程序应设计为对由于不相关基因的存在而引起的背景分布变化具有鲁棒性。
  • 上调和下调基因在基因集中的不同分布、不同的基因集大小、不同的差异表达水平、不同的样本量以及每组样本数量的不平衡可能会影响基因集分析方法的结果。因此,我们建议任何评估或开发基因集分析方法的尝试都要考虑这些因素。
  • 对几个成熟的基因集数据库进行的定量研究表明,基因集数据库的选择可能会对基因集分析的结果产生深远影响,这些数据库被用作基因集分析方法的输入。此外,与某些已知表型相关的基因即使有,也没有很好的代表性。因此,无论选择何种基因集分析方法,对这类表型的基因集分析都会错过那些已知的关联。在进行基因集分析之前选择合适的基因集数据库的系统研究是未来研究的另一条途径。
  • (其他,参考上述介绍的方法、显著性评估、零假设谈到的优缺点)

通过这篇2020年的文献,我们对GSA的不同方法已经有了大致的了解(值得一提的是这篇文献附表1中提供了非常多进行GSA分析所使用的方法和工具)


但是这些问题好像都离我们比较远,因为我们绝大多数不是开发人员,而是想要利用好工具,下面这篇2022年的文章为我们进行通路富集分析(Pathway enrichment analysis, PEA)提供了9个建议,适合小白阅读,规范化分析流程,进行更好的PEA分析,并最终有助于更好地理解当前的生物学故事

2022-Nine quick tips for pathway enrichment analysis

tip1:在开始分析之前,弄清楚你想要执行哪种分析

这部分作者主要谈论了不同数据类型和不同GSA方法选择的不同,详细可以参考我们在上面2020年的这篇综述里提到了不同工具的区别,根据自己的科学问题和掌握的数据类型选择合适的分析方法。

需要注意的是作者还提到了一种类pathway topology-based methods

研究人员将染色体区域富集分析或基因组富集分析称为PEA工具,该工具将基因组区域列表作为输入,而不是基因列表

tip2:确保你输入的基因或基因组区域的质量

在开始功能分析之前,仔细检查基因或基因组区域的输入列表:

  • 研究该列表是如何生成的,使用哪些工具和何时生成的。
  • 在选择这些基因或染色体区域时采用了什么标准?
  • 最近发表了一篇与该列表有关的科学文章吗?如果是,最好仔细读一下。

如果注意到输入列表是以一种模糊、奇怪、不合逻辑的方式生成的,那么就舍弃它,并将注意力集中在另一个基因列表上。

假设你想研究一个乳腺癌的诊断基因特征,来自微阵列基因表达。您阅读了与此相关的文章,并注意到作者使用了在三个不同的微阵列平台(例如Affymetrix、Illumina和安捷伦)上生成的3个数据集,而没有做任何批次效应校正。很明显,本研究包含了一个预处理错误,其结果应该被丢弃或至少要谨慎处理。

另一个危险信号是缺乏对外部数据队列的验证。如果在一项只涉及一个数据集的研究中提出了一个基因列表,那么它对于预后或诊断范围可能还不够可靠。

此外,gene identifiers/symbols也需要得到有效转换和确认。

tip3:多使用几个工具,而不是只有一个

建议执行功能富集分析阶段使用至少两种不同的PEA工具。获得来自不同来源和方法的结果是关键的:有些结果将是验证性的,有些将是互补的,有些甚至可能是不一致的。看到PEA分析的两面性肯定可以让用户有可能更多地了解与输入基因相关的途径。

比较不同工具富集结果的一个快速、直接的方法是验证它们是否包含同名的路径。

这种解决方案可能是不够的,因为属于各种数据库的路径可能有不同的名称,并且可能在其他一些数据库中以冗余的、部分重叠的方式进行结构化。由于缺乏一个独特的标准来表示和存储生物途径数据,这方面是PEA中一个众所周知的问题。

因此,许多可用的软件工具只能处理单个路径数据库。为了通过使用多个数据库来实现路径富集,用户可以使用cPEA,这是一种软件工具,能够使用BioPAX语言处理多个路径数据库来存储和表示路径。或者,他们可以通过选择“Whole PathwayCommon Data”选项来使用BiP ,该选项将使用用BioPAX编码的自动下载的本地路径公共数据库的整个集合来执行交叉富集。值得注意的是,评估通路之间的相似性可能有助于比较每个通路内的基因。

作者在附文1中详细讲述了如何对不同工具富集分析结果进行比较,并验证通路富集结果:

富集结果可以通过两种不同的途径来进一步验证和巩固

  • 途径1,对于新手:

使用现有的文献来寻找证据,可以阐明富集的途径在正在调查的条件下的作用。这条路径适用于新手,如没有计算技能的学生或生物学家。

可用的文献可以手动探索通过使用公共知识库如PubMed搜索证据,有助于确认浓缩结果的有效性,甚至在其他软件的帮助下如PubTor,有助于简化和加速搜索的证据,使一个乏味和长的手动搜索过程更容易。事实上,PubTator中心(PTC)是一个基于web的系统,提供了生物医学概念的自动注释,如PubMed摘要和PMC全文文章中的基因、路径和突变。PTC是免费的,可以通过web浏览器交互式访问,可以通过RESTful API编程访问,也可以通过FTP批量下载。

  • 途径2:

使用统计方法来揭示隐藏的生物功能的细微差别,这条路径特别推荐给熟练的用户。用户必须实现一个自动或手动的分析工作流来处理丰富的结果。该工作流程的第一步是识别促进富集的途径的输入基因。接下来,计算出的基因可以手动进行评估,或者通过基因本体论(GO)中的脚本进行评估,以获得更多关于它们可能的功能角色的知识。此外,PTC还可以进一步提供有关相关基因及其参与通路的注释。

此外,值得一提的是,盖斯特林格和他的同事最近发布了GSEABenchmarkeR,一个用于基准基因集富集分析结果的R包。

tip4:记录所有PEA分析结果和细节

对于使用的每个PEA软件,跟踪其版本、参数参数以及所有细节。将这些信息写在一个笔记本上,然后将其包含在PEA研究的文章的补充信息中。这一步对未来的分析比较和可重复性都很重要。

tip5:始终使用校正后的p值,而不是名义上的p值

避免多重比较带来的假阳性,现在基本上都要考虑

tip6:PEA结果可能会受到统计方法和可视化技术的严重影响

tip7:考虑使用相关基因的子组,而不是所有的输入基因

PEA中的一种常见做法是获取来自实验或先前分析的所有基因,并将它们全部用作PEA工具中的输入。当用户不知道输入基因之间的任何层次或关系时,这肯定是一件好事,但它也会产生许多基因-通路关联,最终可能会变得无关紧要,甚至具有误导性。

此外,使用许多输入基因可能会在结果中产生大量的一般途径,例如KEGG和Reactome中的“信号通路”,这并不能提高我们对受影响的生物过程和功能的理解。一些PEA工具提供了从结果中排除这些通用术语的可能性,但不是全部。

因此,我们建议生物信息学从业者检测相关基因的亚组,并单独对这些亚组中的每一个进行PEA,而不是使用所有基因作为PEA的输入。

例如,可以通过蛋白质-蛋白质相互作用网络的工具,如IID、STRING、GeneMANIA或Reac-tome功能相互作用网络(Reactome FI),找到相关基因的亚组。这些软件程序能够将数据库中可能共享共同物理交互的基因组聚集在一起。Woodward及其同事最近发布了一个通过上位交互增强的GSEA工具,这可能有所帮助。

此外,最近发布的一些R包:pathfindR和netGO,可以利用蛋白质-蛋白质相互作用网络来产生更准确的PEA结果。

个人理解:以往,在ORA中我们使用差异表达分析后得到的差异基因进行通路富集分析,这样会导致一些细微变化但真实生物学途径中有效的基因被忽略,基于这个考虑我们使用GSEA这样的方法考虑所有基因的贡献,但这样也会带来真实无效基因的影响。以往,我们也常常在获取了差异表达基因后在进行PPI看看hub genes,这条tip则是建议我们先进行PPI再进行后续分析,既考虑到真实生物学途径中有效基因又避免无效基因的影响。

tip8:使用(最近的)科学文献来检查PEA结果

有时基因列表和途径列表很大,手动查找至少一篇关于它们的文章会花费太多时间。因此,作为一个经验法则,我们建议用户至少调查文献中的前20个基因-通路关联。或者,用户可以根据已知的重要性来过滤基因:他们可以研究输入的基因列表,识别一些他们已经在文献中看到的常见基因,并调查PEA发现的通路。

tip9:让湿实验室生物学家或临床医生检查你的PEA结果


以上,就是本周我们根据两篇综述给大家带来的所有内容

参考文献&资料:

Gene Set Enrichment Analysis| GSEA algorithm

https://www.youtube.com/watch?v=Tm0LhciYxk8

聊一聊置换检验Permutation test的原理

https://zhuanlan.zhihu.com/p/328940140

使用clusterProfiler进行富集分析

https://www.jianshu.com/p/d484003dced5

明明PCA区分非常好,但是差异基因数量很少?

Gene Set Analysis Challenges,Opportunities, and Future Research

https://www.frontiersin.org/articles/10.3389/fgene.2020.00654/full

Nine quick tips for pathway enrichment analysis

https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1010348

clusterProfiler 4.0: A universal enrichment tool for interpreting omics data

https://www.sciencedirect.com/science/article/pii/S2666675821000667


ixxmu commented 1 year ago

基因集分析的前世今生(附进行通路富集分析的9个tips) by 生信菜鸟团

我们通过差异分析得到基因的FC和Pvalue后,基本上都会走GO/KEGG富集分析和GSEA基因集富集分析流程,这似乎已经成为了我们转录组分析中的固定流程,但实际上关于基因集的分析(GSA),科学家们经历了很长时间的探索,目前常用的GSA方法也都有自己的不足,新的方法和工具正在不断被开发,GSA的分析对于科学问题的阐述仍有很多缺陷并面临挑战。这周,我们通过两篇文献,一起来看看GSA的前世今生,目前有哪些主流的算法、方法,这些方法又是基于什么样的前提假设?我们常用的工具使用的又是什么方法,在解释科学问题时这些方法有哪些局限性和不足?我们在选择方法、工具进行GSA时需要注意哪些问题?


Gene Set Analysis: Challenges, Opportunities, and Future Research

引言:

早期分析基因表达数据的方法是单基因分析,其中使用t检验或Wilcoxon秩和检验等统计检验对病例和对照样本的每个基因的表达量进行比较,并计算p值。然后,为了减少多重比较产生的假阳性数量,对多重比较进行了调整。接下来,调整后的p值小于给定阈值的基因被预测为差异表达。最后,我们尝试利用这些基因进行生物学解释。

这种方法有几个缺点:

①过分的多重检验矫正可能会导致假阴性,特别是像比较保守的方法,如Bonferroni

②主观上,研究人员采取任意的cut-off截止值来选择合理数量的基因来进行进一步的研究和解释(有cherry pick的嫌疑)。客观上,对阈值的不同选择可能会导致不同的生物学解释,保守阈值可能导致假阴性,放宽阈值可能导致假阳性。

③细胞过程通常与具有共同生物学功能或属性的基因组的表达模式的变化有关,这一组基因中有意义的变化比单个基因的变化在生物学上更可靠和可解释(关于这些基因集的先验知识可以通过公共在线数据库获得,如GO、KEGG和OMIM)

④高通量技术虽然使在单一实验中监测数千个基因的表达成为可能,但也引入了处理高维数据的挑战。为了处理高维数据,降维方法被用于下游分析和可视化中(潜在偏差)。在高通量基因表达研究中,依赖于生物学相关的基因集是最直观和生物学相关的降维方法(考验大家的生物学背景知识)。

⑤当不同处理中单基因的测量值差异细微时,单基因方法很难将基因表达的真正差异与样本的生物学差异区分开来。另一方面,基因集分析可能能够检测到一个基因集内的基因表达模式的这种微妙但一致的变化。

⑥多功能基因,即参与多种生物活动的基因,是很常见的。例如,Pritykin等人报道,果蝇、智人和酿酒酵母的多功能基因分别占注释基因的24、26和19%。如此多的多功能基因的存在意味着单基因分析可能会导致错误或不明确的结论。

⑦单基因方法可能报告几百到几千个基因的差异表达,解释一长串差异表达的基因是一项繁琐的任务,容易使研究者倾向于一个感兴趣的假设(先入为主)

基因集分析(GEA),也称为富集分析,试图解决这些缺点,并从基因表达数据中获得见解。基因集分析的主要目的是确定一组特定的感兴趣的基因的表达水平的富集或缺失,称为一个基因集

基因集是基于各种标准定义的,例如作为某些生物途径的成员或在特定条件下共同表达。这些基因集被收集到称为基因集数据库的集合中,如MSigDB、GeneSigDB和GeneSetDB是三个专门为基因集分析开发的集合。

这些基因集的收集使研究人员能够对生物学相关基因而非单个基因进行分析,以确定基因中哪些与表型相关

目前已经有有大量的基因集可用的分析方法,这些方法的不同之处在于

  • 基本假设
  • 富集理念
  • 零假设
  • 显著性评估

本文提供了100多种基因集分析方法/工具的列表(推文中将对具有代表的工具使用方法对应列表截图在推文中进行展示,有兴趣的同学可以自己检索文章下载附表),但本综述的目的不是讨论所有可用于基因集分析的工具。相反,作者仅使用一组有代表性的方法,根据基因集分析方法的不同,提供基因集分析法的模块化概述,并强调了每一类方法的缺点及其面临的挑战。

接下来我们将先来系统地看看这些方法的不同之处:

思维导图部分截图

为了更好的展现这些方法,我们制作了一个详细的思维导图,下面的内容(1-3)属于基于思维导图提纲挈领的介绍,我们过滤掉了大部分数理部分便于读者流畅阅读,对数理部分有兴趣的同学可以下载思维导图并阅读原文献,在公众号后台回复“GSA思维导图”即可获得完整清晰思维导图。

1.基因集分析(GENE SET ANALYSIS, GSA)

GSA方法可以大致分为三类:

  • Over representation analysis(ORA)
  • functional class scoring(FCS)
  • pathway topology-based methods

①ORA

ORA其实是单基因分析的自然延伸,ORA使用一个基因列表L,该列表包含由单基因分析方法预测为差异表达的基因。这些基因可以是在两个不同条件下的表达量差异显著的基因,或者是与某种生物学过程相关联的基因。比如我们常见的GO/KEGG富集分析。

其基本假设为:基因独立性和等效性。具体来说,ORA假设基因在生物过程中是相互独立的,并且对于生物过程的影响是相等的。

其零假设为:基因列表L中属于某个先验基因集(如来自GO、KEGG)中的基因集Gi在两个或多个表型之间没有差异表达

计算:在Gi中存在n'i个差异表达基因的概率通过超几何分布计算

显著性评估:

  • Fisher精确检验
  • 虽然Fisher精确检验可以在Table 1中计算小样本和大样本情况下的精确p值,但是当样本计数很大时,计算可能会变得不稳定
  • 方法1:对于n值较大时,超几何分布趋向于二项分布。因此,二项分布可以用来估计Fisher精确检验的p值
  • 方法2:χ2检验,通常用于比较两个或多个分类变量之间的比例是否相等。在这里,我们可以使用χ2检验来比较两组基因中不同类别的基因数量是否存在显著差异,并计算其p值。

其优点在于:简单、完善的底层逻辑以及易于实现

其缺点在于:基本假设在生物学上并不总是成立的,事实上,已经证明基因、蛋白质和其他生物分子通常会协同作用;并且ORA只利用差异表达基因,而忽略了其余基因的所有定量测量。然而,即使那些p值略高于截止值的基因也可能对通路活动的检测有所贡献。

②FCS

与ORA相比,FCS方法的主要目标是使用来自表达式矩阵的所有信息来解决富集问题,而不依赖于ORA在生物学上无效的假设

FCS方法常见步骤:

  • (基因分数)基因集分数
  • 显著性评估
  • 多重比较的矫正

FCS可以根据是否计算基因分数进一步分为单变量和多变量方法

univariate FCS

GSEA是使用最广泛的单变量FCS方法之一,以GSEA方法为代表对 univariate FCS进行阐述

计算:使用对照组和实验组样本中的基因表达测量值之间的信噪比(SNR)差异来计算基因得分;对基因根据其分数进行降序排序,累加求和计算基因集得分(又称富集得分,ES)

其零假设为:没有任何基因集与分组表型相关

显著性评估:ES逐步累计求和(random walk)的最大值为MES,使用permutation test对MES进行显著性评估

具体地说,GSEA会对样本标签进行1000次随机置换,并计算每次置换下的MES值,为ES生成一个"null distribution"。最后,GSEA会根据实际数据的MES值与这1000个随机置换下的MES值产生的零分布,计算观察到的ES的p值,以确定实际数据的MES值是否显著

发展:

  • (Damian and Gorfine (2004) raised concerns)GSEA可能会仅仅因为基因集的大小而忽略高度富集的基因集。为了解决这些问题,Tian等人(2005)认为,t-test或Wilcoxon秩和检验统计量可以检测到背景分布中的适度但协调的变化,并使用gene sampling和phenotype permutation来产生背景分布。这种变化指的是基因集中的基因在表型之间存在一定程度的相关性,但是这种相关性不足以导致显著的偏移。缺点:事实上,他们并没有测试不同分组中基因得分分布的差异,而是测试了一个位置的变化,即平均值或中位数的变化,这就导致了对部分上调部分下调基因集的不敏感
  • PAGE参数化方法,统计学上更敏感,计算资源消耗更少。零假设为:给定微阵列数据集中的所有基因都是相互独立且相同分布的,即它们不是共同调控的。使用样本组之间的fold change,来计算z-score,使用正态分布进行显著性评估(根据中心极限定理,大样本量的自随机变量的平均值的抽样分布是正态分布,而不管基础总体的分布。因此,基因集的平均倍数变化值(fold change)的分布应该是正态的)。该方法具有较高的灵敏度,但特异性较低。
  • adjusted GSEA。使用weighted Kolmogorov–Smirnov statistic & FDR,如今GSEA一般默认认为就是adjusted后。
  • SEA。GSEA基于Kolmogorov–Smirnov test,缺乏灵敏度,为了避免使用Kolmogorov–Smirnov统计量和对计算资源要求很高的permutation test,Irizarry等人建议使用一种参数方法,使用标准正态分布来评估每个富集分数的显著性。基于观察到的Q-Q图,他们认为在实际应用中假设基因值分布的标准正态分布是有效的。其基本假设为:假设t-test统计量服从标准正态分布,并且忽略了基因集合成员之间的相关性。使用two-sample t-test Z-score计算基因分数,使用正态分布进行显著性评估。Irizarry等人承认,所提出的z分数的一个局限性是,它可能无法检测到近一半的基因上调,其余的基因下调的基因集,进而建议采用标准化的χ2-test score。但是,Tamayo等人关注SEA忽略基因-基因相关性的基本假设,质疑其实用性和是否现实,对Irizarry等人的说法进行了反驳,通过比较SEA和GSEA的结果,他们报道了SEA一致地产生了更显著的基因集,例如,他们报告说,对于一个胰腺数据集,SEA预测42%的基因集具有显著差异富集,几乎是GSEA的5倍。在设计的基因表达谱和表型之间几乎没有显著的相关的实验中,GSEA预测近0%的基因集为差异富集,而SEA预测许多基因集为差异富集。
  • Jiang和Gentleman提出了基因和基因集分数计算线性模型作为GSEA的扩展。sign test被用来评估一个基因集合内的基因的上调或下调的流行率,而不管这种调控的大小,但发现缺乏敏感性。此外,他们还提出,与使用平均值作为基因集得分相比,中位数不太容易受到离群值效应的影响
multivariate FCS

多变量方法跳过计算基因分数的步骤,直接从表达矩阵中计算基因集分数。

方法:

  • Globaltest

该方法基于广义线性模型,旨在回答一个问题:给定基因集Gi中的基因的全局表达模式是否与感兴趣的生物学结果显著相关。

零假设:线性模型中(各基因表达量回归系数)β1 = β2 = · · · = βm = 0

由于样本数量通常少于变量数量(即基因集大小||Gi||),因此无法以传统的方式测试这个零假设。

针对问题提出基本假设:回归系数均来自相同的分布,均值为零,方差未知为τ^2。零假设:τ^2 = 0

  • Hotelling’s T^2-test

该检验是用来检验两个分组的多元均值之间的差异的t检验的自然推广

零假设:对照和处理样本的基因集Gi中基因的平均表达向量相等

显著性评估:

当n(总样本数)>m(Gi基因集中基因数)+1时,服从F分布的统计量

m>n时,使用单值分解(Singular Value Decomposition,SVD)降维

但是多变量方法严格的基本要求(①数据正态性、②样本大小的充分性和③方差齐性)在测试每个基因集的差异富集时,几乎不可能完全被满足。因此,对这些假设不具有鲁棒性的方法往往会导致不可重复的结果。这是为什么与单变量方法相比,多元基因集分析方法没有被广泛使用的原因之一。

③pathway topology-based methods

并不是通路中的所有基因在其活性中发挥同样重要的作用。通路拓扑结构的知识,如基因产物的相互作用,可以帮助量化基因对通路活性的重要性。拓扑信息可能会提高富集分析的准确性

这些方法也可以分为基于ORA的、单变量的和多变量的方法,以及类似于对应基因集分析方法的零假设

方法工具表现举例:

  • Rahmatallah et al.报道GSNCA在大基因集和通路成员表达发生不均匀变化的情况下的表现优于GSCA。
  • Bayerlová et al.比较了3种单变量FCS和3种基于通路拓扑结构的方法,报道称没有一种基于拓扑的方法优于单变量方法。
  • Ihnatova et al.报道一些基于通路拓扑结构的方法中,与较小的路径相比,较大的路径获得了较低的p值。

clusterProfiler

以上,我们介绍了三种进行GSA的基本方法,大家肯定想知道我们经常用的是什么方法,一般来说大家都是拿Y叔的clusterprofiler包进行GSA分析,我们也将简要介绍一下该包所使用的方法:

The clusterProfiler library was first published in 2012 and designed to perform over-representation analysis (ORA) using GO and KEGG for several model organisms and to compare functional profiles of various conditions on one level (e.g., different treatment groups). Since then, clusterProfiler has matured substantially and currently supports several ontology and pathway annotations, thousands of species with up-to-date gene annotation, users’ annotation data for novel species, and emerging new annotations. Both ORA and gene set enrichment analysis (GSEA) are supported.

可以发现ORA和GSEA在不同的函数方法中使用

clusterProfiler: universal enrichment tool for functional and comparative study

2.基因集评分的显著性评估

在第一部分GSA分析中已经部分谈到,可以联系着看,在这里进行细致分类

①参数方法

在零假设下,通过接受一些简化假设,提出了基因集统计量的参数分布。而后,利用参数分布来评估基因集统计量的意义。

参数化方法是建立基于一些知识或关于基因集分数的潜在分布的假设。例如,PAGE假设一个基因集合内的基因的平均倍数变化值遵循正态分布。SEA,另一种参数方法,假设它的基因集得分——即基因集中每个基因的t检验得分的加权平均值——遵循正态分布。(优点)尽管参数化方法对计算要求不高,但(缺点)它们被批评为过于简单,无法检测真正差异富集的基因集

②非参数方法

非参数方法通常不会对基因集得分的基础分布做出任何强假设,而是采用经验分布

gene sampling

原理:在基因采样中,通过将给定基因集Gi的基因集得分S(Gi)与来自参考集U的随机组装的||Gi||基因集(即所有研究中的基因)的得分进行比较来评估其重要性。在基因抽样方法中,大量的随机基因集被组装起来,并计算它们的得分。然后,Gi的基因集得分的显著性值被计算为导致比Gi得分更强的得分的组装基因集的分数,其中,如果一个得分更倾向于拒绝感兴趣的零假设,则与另一个得分相比,该得分被认为更强。

优点:基因采样不取决于样本数量,它已被广泛用于小样本量数据集的基因集分析

缺点:

  • 依赖于一个基因集内基因之间独立性的不切实际的基本假设
  • 计算资源要求很高
  • 基因采样可能导致大型基因集显著性值缺乏统计可靠性
Phenotype permutation

原理:表型排列,也称为样本排列,通过排列样本标签来评估给定基因集Gi的基因集得分的重要性。首先,计算Gi的基因集得分。SGi表示根据实际基因表达谱的Gi的基因集得分。然后,通过排列样本标签,来合成大量的表达谱。对于合成的表达谱,我们预计Gi中基因的表达模式与表型之间没有关联。接下来,对于每个合成的表达谱,计算Gi的基因集得分。最后,SGi的显著性被计算为导致比SGi更强的分数的合成表达谱的分数,其中,如果一个分数与另一个分数相比更倾向于拒绝感兴趣的零假设,则该分数被认为更强。

优点:表型排列不同于基因抽样,它并不依赖于不现实的基因独立假设

缺点:每个表型都需要大量的样本。这个条件通常并不被满足。

关于phenotype permutation,在我们上一期推文明明PCA区分非常好,但是差异基因数量很少?中ANOSIM部分也有提到,是比较常见的方法

这篇帖子使用例子很形象地介绍了Permutation test的原理,感兴趣的同学可以去看看:

聊一聊置换检验Permutation test的原理

https://zhuanlan.zhihu.com/p/328940140

动态规划

原理:动态规划方法评估了来自 unweighted Kolmogorov–Smirnov统计量的基因集得分的显著性。对于一个包含n个基因的给定数组和一个给定的基因集Gi,首先,他们计算了基因集得分RSGi。然后,他们计算其p值为获得等于或大于RSGi的基因集得分的概率,假设Gi中的基因分布与表型之间没有关联

优点:比排列方法更有效,而且当排列的数量不够大时,他们的方法不会遭受排列方法产生的统计上不可靠的结果。

缺点:与排列方法不同,它不能扩展到其他基因集分数,如GSEA中的weighted Kolmogorov–Smirnov统计量。

3.零假设

在第一部分GSA分析中已经部分谈到,可以联系着看,在这里进行细致分类

①competitive null hypothesis

零假设:与其他被研究的基因相比,Gi中的基因并没有不同的表达模式

显著性评估:在计算一个基因集Gi的基因集得分f(Gi)后,通过gene sampling方法以经验的方式评估f(Gi)的显著性

缺点:

  • 被批评使用基因作为抽样单位,而实验的目的是检测不同表型的变化
  • 忽略了一个基因集合内的基因之间的相关性
  • 据报道被基因集中包含的无关基因 严重影响

②self-contained null hypothesis

零假设:Gi中的基因在不同的表型中没有不同的表达模式。

显著性评估:phenotype permutation

缺点:需要样本量足够大

③hybrid null hypothesis

关注基因相对表达模式的变化。基于hybrid null hypothesis的方法计算给定基因集的Gi的基因集得分,使用所有基因的表达测量,即Gi的基因和¯Gi的基因;然后,使用基因抽样或表型排列方法来评估这个分数的重要性。

GSEA及其基于Kolmogorov–Smirnov统计量的变体,使用的就是hybrid null hypothesis。例如,当前版本的GSEA(版本4.0.3)提供了基因抽样,用于竞争性杂交零假设的显著性评估,表型排列用于自包含杂交零假设的显著性评估。

self-contained null hypothesis根据基因在Gi中的表达值来定义一个基因集Gi的计算基因集得分f(Gi)。其余的基因,即¯Gi中的基因,对这个计算没有贡献。然而,在hybrid方法中,¯Gi中的基因也有助于f(Gi)的值。

可进一步分为:competitive hybrid null hypothesis和self-contained hybrid null hypothesis

GSA分析面临的挑战

  • 缺乏金标准表达式数据集用于评估基因集分析方法
  • 尽管有一个完善的基础统计模型,ORA也有几个缺点。ORA依赖于基因基因独立性假设,该假设在生物学上是无效的。此外,ORA使用一组差异表达的基因作为输入,并平等地对待所有的基因,而不管它们的差异表达的大小。并且,差异表达的基因是通过单基因分析方法来确定的,其中使用任意的阈值通常是一种常见的做法。研究表明,这些阈值的选择可能会影响下游分析的结果。其次,ORA也不能从一个基因集合内的基因中检测到低但一致的信号,即低于所使用的阈值。这些一致的信号被认为在生物学上是重要的。
  • FCS方法旨在解决ORA的一些问题。FCS方法众多,但研究人员对给定实验的选择方法意见不一致。Maleki等人(2019b)提出了一种使用真实表达数据集评估13种基因集分析方法的系统方法。他们表明,这些方法的结果之间几乎没有重叠。此外,一些方法报告了大量的基因集差异富集,一些方法报道的很少。这表明,大多数方法要么缺乏特异性(大量的假阳性),要么缺乏敏感性(大量的假阴性)。
  • 自包含(self-contained)零假设方法的一个局限性是,它们每组需要大量的样本,因为他们使用表型排列来进行显著性评估。这意味着许多可用的高通量数据集不适合用于这些类型的方法。另外,对小样本量的数据集使用竞争性(competitive)零假设基因集分析方法。竞争性基因集分析方法依赖于基因抽样来进行显著性评估。基因抽样是基于基因是独立的假设。这一假设在生物学上是无效的,并可能导致某些基因集仅由于其基因之间的相关性而被预测为差异富集。这个问题引入了假阳性,并降低了特异性。因此,在设计和评价基因集分析方法时应考虑基因-基因相关性。
  • 研究表明,对于许多基因集分析方法,无论是竞争性的还是自包含性的零假设,分析结果在小样本量下都是不可重复的。然而,尽管存在这个问题,小样本量(每组n<5)的研究仍在继续使用这些方法进行分析。因此,需要强调的是,在决定一种合适的基因集分析方法或是否适合使用基因集分析时,数据集的大小是一个重要的考虑因素。此外,在开发新的基因集分析方法时,它们对样本量的敏感性应作为评估过程的一部分进行调查。
  • (其他,参考上述介绍的方法、显著性评估、零假设谈到的优缺点)

GSA分析的未来方向

  • 由于缺乏金标准数据集,使用具有零或恒定基因-基因相关性的正态分布值的模拟数据集已被广泛用于评估基因集分析方法。生物和技术变化以及复杂的基因-基因相关性模式无法使用这种过于简单化的方法进行建模。综合保持基因表达数据和基因集数据库真实性质的数据集是评估新的和现有的基因集分析方法的重要步骤。更具体地说,开发反映真实数据集真实性质的基准数据集对于评估当前和新的基因集分析方法具有重要价值。目前还没有这样的基准,我们建议开发这样的公共基准数据集作为未来的研究。这些基准数据集如果公开,可以促进评估可用的基因集分析方法,并促进开发新方法。
  • Tripathi等人(2013)表明,一些竞争性基因集分析方法对不相关基因的存在很敏感。在应用竞争性基因集分析方法时,我们建议遵循Tripathi等人提供的指南。(2013). 此外,基因集分析的新程序应设计为对由于不相关基因的存在而引起的背景分布变化具有鲁棒性。
  • 上调和下调基因在基因集中的不同分布、不同的基因集大小、不同的差异表达水平、不同的样本量以及每组样本数量的不平衡可能会影响基因集分析方法的结果。因此,我们建议任何评估或开发基因集分析方法的尝试都要考虑这些因素。
  • 对几个成熟的基因集数据库进行的定量研究表明,基因集数据库的选择可能会对基因集分析的结果产生深远影响,这些数据库被用作基因集分析方法的输入。此外,与某些已知表型相关的基因即使有,也没有很好的代表性。因此,无论选择何种基因集分析方法,对这类表型的基因集分析都会错过那些已知的关联。在进行基因集分析之前选择合适的基因集数据库的系统研究是未来研究的另一条途径。
  • (其他,参考上述介绍的方法、显著性评估、零假设谈到的优缺点)

通过这篇2020年的文献,我们对GSA的不同方法已经有了大致的了解(值得一提的是这篇文献附表1中提供了非常多进行GSA分析所使用的方法和工具)


但是这些问题好像都离我们比较远,因为我们绝大多数不是开发人员,而是想要利用好工具,下面这篇2022年的文章为我们进行通路富集分析(Pathway enrichment analysis, PEA)提供了9个建议,适合小白阅读,规范化分析流程,进行更好的PEA分析,并最终有助于更好地理解当前的生物学故事

2022-Nine quick tips for pathway enrichment analysis

tip1:在开始分析之前,弄清楚你想要执行哪种分析

这部分作者主要谈论了不同数据类型和不同GSA方法选择的不同,详细可以参考我们在上面2020年的这篇综述里提到了不同工具的区别,根据自己的科学问题和掌握的数据类型选择合适的分析方法。

需要注意的是作者还提到了一种类pathway topology-based methods

研究人员将染色体区域富集分析或基因组富集分析称为PEA工具,该工具将基因组区域列表作为输入,而不是基因列表

tip2:确保你输入的基因或基因组区域的质量

在开始功能分析之前,仔细检查基因或基因组区域的输入列表:

  • 研究该列表是如何生成的,使用哪些工具和何时生成的。
  • 在选择这些基因或染色体区域时采用了什么标准?
  • 最近发表了一篇与该列表有关的科学文章吗?如果是,最好仔细读一下。

如果注意到输入列表是以一种模糊、奇怪、不合逻辑的方式生成的,那么就舍弃它,并将注意力集中在另一个基因列表上。

假设你想研究一个乳腺癌的诊断基因特征,来自微阵列基因表达。您阅读了与此相关的文章,并注意到作者使用了在三个不同的微阵列平台(例如Affymetrix、Illumina和安捷伦)上生成的3个数据集,而没有做任何批次效应校正。很明显,本研究包含了一个预处理错误,其结果应该被丢弃或至少要谨慎处理。

另一个危险信号是缺乏对外部数据队列的验证。如果在一项只涉及一个数据集的研究中提出了一个基因列表,那么它对于预后或诊断范围可能还不够可靠。

此外,gene identifiers/symbols也需要得到有效转换和确认。

tip3:多使用几个工具,而不是只有一个

建议执行功能富集分析阶段使用至少两种不同的PEA工具。获得来自不同来源和方法的结果是关键的:有些结果将是验证性的,有些将是互补的,有些甚至可能是不一致的。看到PEA分析的两面性肯定可以让用户有可能更多地了解与输入基因相关的途径。

比较不同工具富集结果的一个快速、直接的方法是验证它们是否包含同名的路径。

这种解决方案可能是不够的,因为属于各种数据库的路径可能有不同的名称,并且可能在其他一些数据库中以冗余的、部分重叠的方式进行结构化。由于缺乏一个独特的标准来表示和存储生物途径数据,这方面是PEA中一个众所周知的问题。

因此,许多可用的软件工具只能处理单个路径数据库。为了通过使用多个数据库来实现路径富集,用户可以使用cPEA,这是一种软件工具,能够使用BioPAX语言处理多个路径数据库来存储和表示路径。或者,他们可以通过选择“Whole PathwayCommon Data”选项来使用BiP ,该选项将使用用BioPAX编码的自动下载的本地路径公共数据库的整个集合来执行交叉富集。值得注意的是,评估通路之间的相似性可能有助于比较每个通路内的基因。

作者在附文1中详细讲述了如何对不同工具富集分析结果进行比较,并验证通路富集结果:

富集结果可以通过两种不同的途径来进一步验证和巩固

  • 途径1,对于新手:

使用现有的文献来寻找证据,可以阐明富集的途径在正在调查的条件下的作用。这条路径适用于新手,如没有计算技能的学生或生物学家。

可用的文献可以手动探索通过使用公共知识库如PubMed搜索证据,有助于确认浓缩结果的有效性,甚至在其他软件的帮助下如PubTor,有助于简化和加速搜索的证据,使一个乏味和长的手动搜索过程更容易。事实上,PubTator中心(PTC)是一个基于web的系统,提供了生物医学概念的自动注释,如PubMed摘要和PMC全文文章中的基因、路径和突变。PTC是免费的,可以通过web浏览器交互式访问,可以通过RESTful API编程访问,也可以通过FTP批量下载。

  • 途径2:

使用统计方法来揭示隐藏的生物功能的细微差别,这条路径特别推荐给熟练的用户。用户必须实现一个自动或手动的分析工作流来处理丰富的结果。该工作流程的第一步是识别促进富集的途径的输入基因。接下来,计算出的基因可以手动进行评估,或者通过基因本体论(GO)中的脚本进行评估,以获得更多关于它们可能的功能角色的知识。此外,PTC还可以进一步提供有关相关基因及其参与通路的注释。

此外,值得一提的是,盖斯特林格和他的同事最近发布了GSEABenchmarkeR,一个用于基准基因集富集分析结果的R包。

tip4:记录所有PEA分析结果和细节

对于使用的每个PEA软件,跟踪其版本、参数参数以及所有细节。将这些信息写在一个笔记本上,然后将其包含在PEA研究的文章的补充信息中。这一步对未来的分析比较和可重复性都很重要。

tip5:始终使用校正后的p值,而不是名义上的p值

避免多重比较带来的假阳性,现在基本上都要考虑

tip6:PEA结果可能会受到统计方法和可视化技术的严重影响

tip7:考虑使用相关基因的子组,而不是所有的输入基因

PEA中的一种常见做法是获取来自实验或先前分析的所有基因,并将它们全部用作PEA工具中的输入。当用户不知道输入基因之间的任何层次或关系时,这肯定是一件好事,但它也会产生许多基因-通路关联,最终可能会变得无关紧要,甚至具有误导性。

此外,使用许多输入基因可能会在结果中产生大量的一般途径,例如KEGG和Reactome中的“信号通路”,这并不能提高我们对受影响的生物过程和功能的理解。一些PEA工具提供了从结果中排除这些通用术语的可能性,但不是全部。

因此,我们建议生物信息学从业者检测相关基因的亚组,并单独对这些亚组中的每一个进行PEA,而不是使用所有基因作为PEA的输入。

例如,可以通过蛋白质-蛋白质相互作用网络的工具,如IID、STRING、GeneMANIA或Reac-tome功能相互作用网络(Reactome FI),找到相关基因的亚组。这些软件程序能够将数据库中可能共享共同物理交互的基因组聚集在一起。Woodward及其同事最近发布了一个通过上位交互增强的GSEA工具,这可能有所帮助。

此外,最近发布的一些R包:pathfindR和netGO,可以利用蛋白质-蛋白质相互作用网络来产生更准确的PEA结果。

个人理解:以往,在ORA中我们使用差异表达分析后得到的差异基因进行通路富集分析,这样会导致一些细微变化但真实生物学途径中有效的基因被忽略,基于这个考虑我们使用GSEA这样的方法考虑所有基因的贡献,但这样也会带来真实无效基因的影响。以往,我们也常常在获取了差异表达基因后在进行PPI看看hub genes,这条tip则是建议我们先进行PPI再进行后续分析,既考虑到真实生物学途径中有效基因又避免无效基因的影响。

tip8:使用(最近的)科学文献来检查PEA结果

有时基因列表和途径列表很大,手动查找至少一篇关于它们的文章会花费太多时间。因此,作为一个经验法则,我们建议用户至少调查文献中的前20个基因-通路关联。或者,用户可以根据已知的重要性来过滤基因:他们可以研究输入的基因列表,识别一些他们已经在文献中看到的常见基因,并调查PEA发现的通路。

tip9:让湿实验室生物学家或临床医生检查你的PEA结果


以上,就是本周我们根据两篇综述给大家带来的所有内容

参考文献&资料:

Gene Set Enrichment Analysis| GSEA algorithm

https://www.youtube.com/watch?v=Tm0LhciYxk8

聊一聊置换检验Permutation test的原理

https://zhuanlan.zhihu.com/p/328940140

使用clusterProfiler进行富集分析

https://www.jianshu.com/p/d484003dced5

明明PCA区分非常好,但是差异基因数量很少?

Gene Set Analysis Challenges,Opportunities, and Future Research

https://www.frontiersin.org/articles/10.3389/fgene.2020.00654/full

Nine quick tips for pathway enrichment analysis

https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1010348

clusterProfiler 4.0: A universal enrichment tool for interpreting omics data

https://www.sciencedirect.com/science/article/pii/S2666675821000667