[scRNA-seq]单细胞转录因子分析——SCENIC算法简析

[scRNA-seq]单细胞转录因子分析——SCENIC算法简析SCENIC 的算法概述

转录因子(transcription factors, TFs)是直接作用于转录组上,调控DNA转录的蛋白质。它通过与DNA特定区域结合,促进(activator)或阻止(repressor)DNA的转录过程。

[scRNA-seq]单细胞转录因子分析——SCENIC算法简析

了解转录因子对于了解细胞的功能及生命活动有重要作用。SCENIC就是一个常见的、基于单细胞转录组数据分析转录因子活性、基因调控网路的工具。SCENIC的分析主要分为三步,第一步通过基因之间的共表达,找到可能的转录因子。第二步是进行转录因子-motif的富集分析并找到对应的靶基因(调控组regulon)。第三步是对调控组的活跃程度进行评分。


第一步由GENIE3或GRNBoost实现。GENIE3用转录因子的表达量,通过训练随机森林(random forest)模型来预测各基因的表达量,从而得到转录因子在预测每个基因转录时的权重。这个权重反映了转录因子对于预测基因转录水平的相关性。相关性越高,则代表基因更有可能是该转录因子的靶基因。

随机森林是由多个决策树形成的分类器,它通过有放回的抽样训练出多个决策树,再以决策树结果中的众数为最终的结果。更详细的解释,可见:https://zhuanlan.zhihu.com/p/

GENIE3的输入为基因表达矩阵,可以是UMI、TPM,或者FPKM/RPKM。而GENIE3的输出为基因、可能参与该基因的转录因子,以及它们的该转录因子的重要性(importance measure, IM),即其在预测基因转录水平时的权重。只有当权重高于0.001时,该转录因子才被认为是可能参与该基因调控的转录因子。

因为随机森林需要进行多次抽样,训练出多个决策树,当数据量很大时,这一步非常花时间,因此针对较大的数据,第一步可以用GRNBoost,它使用了梯度提升算法,在训练新的决策树时,会提高上一个决策树出错的样本比例,以针对模型预测欠缺的地方进行优化。


第二步由RcisTarget实现。它的主要作用在于通过一个基因列表,找到富集的转录因子及转录因子结合模序(motif),即可能的转录因子结合位点的模板序列。

它通过两步进行。首先,它找到基因列表里基因的转录起始位点(transcript ion start site, TSS)。并找出转录起始位点周围高频出现的DNA motif。它会搜寻一个包含了跨物种基因组范围内各motif信息的数据库,筛选出和目标转录因子相关联的、标准化富集指数(normalised enrichment score, NES)高于3.0的motif。

接着,针对每一组motif和基因列表,RcisTarget会预测可能的目标基因。目标基因为基因列表中预测结果排序靠前的基因。所有motif共有的目标基因加上与之对应的转录因子,即为调控组regulon。


第三步由AUCell实现,它能找到每个细胞中一组基因的活跃程度。在这,SCENIC通过AUCell计算regulon的活跃程度。AUCell计算曲线下的面积(area under recovery curve, AUC),依据每个基因的表达水平,来计算出regular的活跃程度。各基因根据基因表达水平在x轴排序来绘制曲线。因此AUC反映了在每个细胞中给定的一组基因相对于其它基因的表达水平。

通过AUCell,我们能得到一个矩阵,包含每组regulon在每个细胞内相对于其它基因的表达水平,即它们的活跃程度。通过这一个矩阵,我们可以对细胞进行聚类,也可以看不同细胞类型中都有什么regulon是活跃的。

以上是SCENIC的算法概述,下一篇内容我们来聊聊如何用SCENIC进行转录因子分析,并把得到的结果通过图片展示出来。

祝大家吃好喝好睡好,科研快乐~

欢迎关注微信公众号 “小L的读博日常”,第一时间获得更多和生物信息学相关的小tips。

Ref:

[1] https://zhuanlan.zhihu.com/p/

图片来源:Twitter @PHDcomics

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/199026.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月26日 下午2:01
下一篇 2026年3月26日 下午2:01


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号