【算法详解】cisTopic——使用主题模型(topic model)建模单细胞表观组数据

目录

0 参考文献

1 模型特点

2 主题模型(topic model)

3 具体实现

3.1 模型概览

3.2 通过LDA的建模


0 参考文献

cisTopic原论文:cisTopic: cis-regulatory topic modeling on single-cell ATAC-seq data

1 模型特点

基因组调控程序由多种转录因子的组合驱动,这些因子结合到顺式调控控制区域,如增强子和启动子,从而调控目标基因的转录。尽管单细胞转录组学可以无偏地检测细胞多样性,但从转录组数据逆向分析基因组调控情况仍然是一个挑战(这句话是硬翻,重点是后半句,但是不影响对整个模型的理解)。相比之下,单细胞表观基因组学技术,如scATAC-seq,提供了对异质细胞群中增强子和启动子的全基因组活性的更直接预测。

这篇论文的作者们认为,对细胞和调控区域进行共同优化的聚类可以改进对细胞状态的识别。因此开发了 cisTopic,一个基于主题模型的无监督贝叶斯框架,用于从单细胞表观组数据(scATAC-seq数据)中同时发觉共可及增强子(coaccessible enhancers,指在细胞中表观基因组测序中同时显示出可及性(即染色质的开放状态)的增强子。它们暗示了这些区域在不同细胞类型或状态中可能都发挥重要的调控作用)和稳定的细胞状态。

cisTopic将区域(regions/peaks)分类为调控主题(regulatory topics),并可以根据这些调控主题对每个细胞的贡献程度(重要程度/占比)对细胞进行聚类。

2 主题模型(topic model)

既然这个方法是基于主题模型的方法,那么就先来简单说说主题模型是什么。

主题模型本身源于文本处理领域,是用于从文本数据中发现隐藏主题或话题的一种统计模型。这种模型试图识别文档中潜在的语义结构,并通过词语在不同主题上的分布来揭示文本的主题。

主题模型可能会使用到的一种方法是非负矩阵分解(non-negative matrix factorization,NMF)。

我们假设有一个每个元素都大于等于0的矩阵X,大小是n*m。NMF的任务是将X分解为L和F^T(或认为是F也可以)两个矩阵乘积的形式。其中L大小为n*K,F大小为m*K,L和F中元素也均大于等于0。

那么说回主题模型,以服从多项式分布的主题模型为例,X矩阵每一行代表一个文档,每一列代表一个单词,也就是总共n个文档,m个不重复的单词。第i行第j列元素x_{ij}是第j个词在第i个文档中出现的次数。

K代表K个主题。现在认为每一个文档可以看成是主题的一种分布(矩阵L),每一个主题,又可以看成是单词的一种分布(矩阵F)。那么就有L矩阵和F矩阵元素就有如下解释和限制。

注意,这里L(L*)和F(F*)矩阵相乘并不是X,而是矩阵\Pi,因为施加了限制的缘故。而矩阵\Pi的元素解释如下。对于服从多项式分布的主题模型有X和\Pi的关系如下。

对于cisTopic来说,n代表n个peak(region),m代表m个细胞,K代表K个调控主题(regulatory topics),希望将染色质开放性数据矩阵(可以认为是上面的X),分解为两个矩阵的乘积形式

3 具体实现

3.1 模型概览

cisTopic使用隐含狄利克雷分布(latent Dirichlet allocation,LDA)和坍缩吉布斯采样器(collapsed Gibbs sampler)进行迭代优化以得到两个概率分布:

1)区域属于某一主题的概率(区域-主题分布,类似于L矩阵)

2)细胞中某一主题的贡献(主题-细胞分布,类似于F矩阵)

坍缩吉布斯采样器:适用于LDA等具有隐变量的概率模型。在坍缩吉布斯采样过程中,对于某个特定变量,如果它的条件分布已知,就可以将该变量从条件分布中抽样得到。当模型中存在大量隐变量时,这种方法能够提高计算效率,通过条件化一部分变量并进行坍缩,从而减少计算复杂度。

cisTopic由四个主要步骤组成:

1)生成一个二进制染色质可及性矩阵(元素只包含0和1)作为LDA的输入

2)LDA和模型(参数)选择

3)使用主题-细胞分布矩阵进行细胞状态识别

4)对于区域-主题分布矩阵的使用和探索

3.2 通过LDA的建模

LDA从原始高维稀疏数据中推导出

1)数据集中每个细胞的主题概率分布(θ)

2)每个主题的每个区域的概率分布(ϕ)

这些分布分别表示一个主题对细胞的重要性(θ),以及区域对于该调控主题的重要性(ϕ)。在这里,使用坍缩吉布斯采样器,通过从一个分布中随机抽样,使得区域被分配到特定主题的概率与该区域对该主题的贡献以及该主题对细胞的贡献成比例。如下所示

其中z_i表示当前要进行的分配,z_{-i}表示其他区域的现有分配。t是分配给z_i的调控主题,r是给定的区域(要进行主题分配的区域)。

n_{-i,t}^{(r)}是在不考虑当前要做的分配的情况下,给定区域r在数据集中分配给主题t的次数,n_{-i,t}是数据集中分配给主题t的总次数,R是数据集中区域的总数。

n_{-i,t}^{(c)}是在不考虑当前要做的分配的情况下,是细胞c分配给主题t的区域总数,n_{-i}^{(c)}是细胞c总共的分配数,T是主题的总数。

\alpha, \beta是狄利克雷分布的超参数。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值