sc-MAVE

Deep-joint-learning analysis model of single cell transcriptome and open chromatin accessibility data单细胞转录组和开放染色质可及性数据的深度联合学习分析模型

在同一个细胞中同时分析转录组和染色质可及性信息为了解细胞状态提供了前所未有的解决方案。然而,计算有效的方法,这些固有的稀疏和异构数据的整合是缺乏的。在这里,我们提出了一个单细胞多模态变分自动编码器模型,它结合了三种类型的联合学习策略与概率高斯混合模型,以学习准确代表这些多层配置文件的联合潜在特征。对模拟数据集和真实的数据集的研究表明,该方法具有更好的能力:(i)在联合学习空间中剖析细胞异质性;(ii)去噪和估算数据;(iii)构建多层组学数据之间的关联,可用于理解转录调控机制。

介绍

基因表达是通过一组转录因子(TF)结合到其顺式调控基因组区域来调节的。

scRNA-seq表征细胞的基因表达水平,而scATAC-seq等表观基因组变化反映了附近基因中顺式调控元件的开放性。这种两组学数据的整合可以提供关于与细胞异质性相关的调控层的新见解[13]。许多集成工具都是为批量数据设计的[14]。

例如,主成分分析(PCA)的推广MOFA被提出来处理批量数据,也可以应用于单细胞数据集[15]。IntNMF是非负矩阵因子分解(NMF)的扩展,用于整合疾病亚型分类的多组学数据,并评估其处理单细胞数据集[16,17]。然而,最近的研究发现,单细胞数据有其独特的特点,不同于批量数据,因此需要开发新的方法[18]。单细胞多分析(PCA)的集成被提出来处理批量数据,也可以应用于单细胞数据集[15]。IntNMF是非负矩阵因子分解(NMF)的扩展,用于整合疾病亚型分类的多组学数据,并评估其处理单细胞数据集[16,17]。然而,最近的研究发现,单细胞数据有其独特的特点,不同于批量数据,因此需要开发新的方法[18]。

单细胞多组学数据的整合仍然是一个巨大的挑战,这是由于固有的高度稀疏性,由于测定噪声导致的巨大异质性,scATAC-seq和scRNA-seq数据之间的巨大维度差异,大约10-20倍[19],以及越来越大规模的数据集[20]。已经开发了大量用于scRNA-seq数据整合的方法,然而,只有少数方法被提出用于整合单细胞多组学数据,并且这些方法是针对从不同细胞收集但从相同细胞群体提取的组学数据开发的[21-24]。例如,提出了耦合MMF,通过构建基因和顺式调控元件的耦合非负矩阵来对scRNA-seq和scATACseq数据进行聚类[23]。MATCHER被提出来通过使用高斯过程潜变量模型来推断每个细胞的伪时间来预测scRNA-seq和scATACseq之间的相关性[24]。最近,开发了Seurat(版本3)[25]和LIGER [22]用于整合scRNA-seq和scATAC-seq数据。这两种方法都是先将scATAC-seq数据转化为类似于基因表达数据的基因活性数据,然后通过在低维空间中相互比对来识别scRNA-seq数据和基因活性数据之间的锚点。然而,两组学/两层组学数据之间的比对效率通常需要来自两种测量的相似聚类性能。由于scATAC-seq数据的极稀疏性(即sci-CAR-seq中超过99%为零),很难通过scATAC-seq数据定义细胞簇。因此,这两种方法的不正确对齐可能会影响下游分析。

深度生成模型已经成为一个强大的框架来建模高维数据[26,27]。具体地,VAE通过编码器从输入数据学习低维特征,并通过解码器恢复输入数据,这可以通过最大化恢复的数据和输入数据之间的似然性,并最小化学习的潜在特征和真实后验之间的Kullback-Leibler(KL)发散来完成。最近,提出了采用标准VAE的单细胞变分推理(scVI)来分析scRNA-seq数据[26]。然而,标准的VAE在潜在变量上使用单一的各向同性多变量高斯分布,并且通常不适合稀疏数据[28]。SCALE适配使用高斯混合模型(GMM)作为潜在变量的先验的VAE被提出来分析scATAC-seq数据,分析结果表明,集成VAE和GMM的框架可以用于处理高度稀疏的数据,并学习更分散和可解释的潜在特征[27]。深度学习多模态技术[29,30]的最近快速发展以及在整合多视图生物数据[31]方面的成功应用,证明了它们在解决当前单细胞多组学数据分析困难方面的巨大潜力。

在这里,我们提出了单细胞多模态变分自动编码器(scMVAE),用于整合来自同一单细胞的scRNAseq和scATAC-seq数据,通过使用三种类型的联合学习策略。scMVAE模型使用随机优化和多模态编码器,首先聚合两种组学数据跨相似细胞和特征,以逼近具有GMM先验的联合潜在特征位置,然后通过每种组学数据的解码器重构观察到的表达值,同时考虑每种类型数据的归一化,可用于训练非常大的数据集。

特别是,通过无监督方式联合学习两种组学数据,scMVAE模型(i)产生具有生物意义的低维特征,同时表示这两个多层剖面,允许细胞可视化和聚类;(ii)去噪和填充两种组学数据;(iii)构建两层数据之间的关联,可用于推断新的调控关系。为了证明其效率,我们将scMVAE模型和其他整合方法应用于模拟和真实数据集,结果表明scMVAE模型的性能优于当前的最先进方法。

方法

scMVAE概率模型

scMVAE通过三种联合学习策略对来自同一细胞的scRNA-seq和scATAC-seq的分布进行建模:PoE推断网络(在材料S1中详细描述)、神经网络和直接连接两种组学数据特征(图1A–C)。为了平衡scRNA-seq和scATAC-seq数据之间的大尺度差异,我们将scATAC-seq数据的峰值水平计数矩阵转换为类似于scRNA-seq数据的基因活性数据,建模每个组学数据均来自于一个零膨胀负二项(ZINB)分布。

具体而言,给定K个聚类,可以通过多组学编码器网络通过重新参数化获得联合学习特征z,其中c是一个概率离散的分类变量。p(z|c)是一个混合高斯分布,其参数是由在c条件下的均值向量μc和协方差矩阵σc参数化的。考虑到x、y和c在z条件下是独立的,那么多模态联合学习分布p(x、y、z、c、lx、ly),其中lx和ly分别是用作scRNA-seq和scATAC-seq数据的库大小因子的一维高斯变量,可以分解为:

每个因子分解变量定义如下:

此外,x或y的每个基因表达水平独立于以下生成过程:

在MVAE中,z的GMM先验被用来生成高度逼真的样本,通过学习更加解耦和可解释的潜在表示。这在先前的工作中分别应用于scRNA-seq和scATAC-seq[27, 32]。lx和ly被视为与经验日志库大小强相关的对数正态分布。fθx(f(z))和fθy(f(z))表示由变分贝叶斯推断估计的特定特征的反比例。

在推断期间,神经网络fμx和fμy通过在最后一层使用‘softmax’激活函数被约束,以编码一个细胞中所有基因的平均比例基因表达,分别用于scRNA-seq和scATAC-seq数据。神经网络fπx和fπy通过在最后一层使用‘sigmoid’函数编码每个基因是否因为捕获效率和测序深度而被删除,用于每个二组学数据。

scMVAE模型的训练旨在最大化观察到的scRNA-seq和scATAC-seq数据的对数似然,然而,由于这是不可解的,因此转而优化证据下界(ELBO):

鼓励使用与库大小因子lx和ly相关的两个重建项和KL散度的正则化项来进行数据归一化、去噪和插值。潜在变量z的KL散度用于将其调节为GMM流形,以增强与多组学数据的关联。参数qϕ、pθ1和pθ2分别是多模态编码器、scRNA-seq数据的解码器和scATAC-seq数据的解码器。

所有神经网络都使用了dropout正则化和批量归一化。每个神经网络都有一个或两个全连接层,每层有128或256个节点。隐藏层之间的激活函数是'relu'函数。使用Adam优化器和1e-6的权重衰减来最大化ELBO。scMVAE模型使用pytorch软件包实现,其中GMM是使用Python scikit-learn软件包构建的。源代码位于GitHub存储库:https://github.com/cmzuo11/scMVAE。

图1. scMVAE模型的概述,包括三种联合学习策略。

(A)scMVAE模型的总体框架。给定同一细胞i的scRNA-seq数据(具有M个变量的xi)和scATAC-seq数据(具有N个变量的yi)作为输入,scMVAE模型通过一个具有三种学习策略的多模态编码器学习了细胞的非线性联合嵌入(z),该嵌入可用于多种分析任务(例如细胞聚类和可视化),然后通过解码器对每个组学数据将其重构回原始维度作为输出。注意:两种组学数据的相同细胞顺序确保了一个细胞对应于低维空间中的一个点。

(B)三种学习策略的示意模型:

(i)‘PoE’框架用于通过每个组学数据的后验概率的乘积来估计联合后验(详见材料S1),

(ii)‘NN’用于通过使用神经网络来组合为每个层数据提取的特征来学习联合学习空间

(iii)‘Direct’策略通过直接使用两层数据的原始特征的串联作为输入一起学习。在这种学习条件下,神经网络:NN−fμy−l,NN−fσy−l,NN−fμy,NN−fθy,NN−fπy已从总网络中删除。

(C)scMVAE模型中每个变量所属的分布。每个组学数据都被建模为一个ZINB分布。有关每个变量的详细描述,请参见数据集和预处理。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/717074.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据结构——基本概念与术语2,抽象数据类型的表示与实现

目录 1.数据类型 2.抽象数据类型 1.抽象数据类型的形式定义 基本操作定义格式说明 2.抽象数据类型定义举例:circle的定义 3.抽象数据类型定义举例:复数的定义 概念小结: 3.抽象数据类型的表示与实现 1.数据类型 2.抽象数据类型 比如一…

游戏框架搭建

使用框架的目标:低耦合,高内聚,表现和数据分离 耦合:对象,类的双向引用,循环引用 内聚:相同类型的代码放在一起 表现和数据分离:需要共享的数据放在Model里 对象之间的交互一般有三…

跨平台指南:在 Windows 和 Linux 上安装 OpenSSL 的完整流程

Windows安装 一:找到安装包,双击即可 https://gitee.com/wake-up-again/installation-package.git 二:按照提示,一步一步来,就可以啦 三:此界面意思是,是否想向创作者捐款,自己视情…

2024最新搭建Mybatis配置教程【超详细】

为什么要学习mybatis 首先要弄清楚什么是mybatis?我们为什么要学mybatis 学习MyBatis可以帮助开发人员更高效地进行数据库操作,提高开发效率,并且可以使得应用程序更具可维护性和性能优势。 我们知道Java程序操作数据库是通过jdbc与数据库进…

蓝桥杯——矩形拼接

矩形拼接 题目分析 对于一个矩形而言,我可以把它横着放,而可以把它竖着放,比如下图, 3个矩形的拼接情况可以通过在纸上画图模拟出来,情况有以下三种 ​ 图1 图3是4条边,即四边形。观察一下什么时候会是四…

IO(Linux)

文件系统 前言1. 回顾关于C文件部分函数2. 一些文件知识的共识3. 相对路径4. fwrite中的\0 一、文件描述符fd1. 概念2. 系统调用① open 和 close② write③ read 和 lseek 3. 缺省打开的fd 二、重定向1. 原理2. 系统调用dup23. stdout和stderr的区别4. 进程替换和原来进程文件…

【计算机考研】408学到什么程度才能考130?

408考130要比考研数学考130难的多 我想大部分考过408的考生都是这么认为的。408的难点在于他涉及的范围太广了,首先如果你要备考408,你要准备四门课程,分别是数据结构,计算机组成原理,操作系统和计算机网络。 这四门…

企业计算机服务器中了360勒索病毒如何解密,360后缀勒索病毒处理流程

对于众多的企业来说,企业的数据是企业发展的核心,越来越多的企业开始注重企业的数据安全问题,但随着网络技术的不断发展与应用,网络黑客的攻击加密手段也在不断升级。近期,云天数据恢复中心接到多家企业的求助&#xf…

设计模式—命令模式:探索【命令模式】的奥秘与应用实践!

命令模式 命令模式是一种行为设计模式,它的主要目的是将请求封装成一个对象,从而使得请求的发送者和接收者之间进行解耦。 在命令模式中,命令被封装为一个对象,包含了需要执行的操作以及执行这些操作所需的所有参数。 命令的发送者…

OpenGuass 之 where 1 = 0 处理流程代码走读

一. 前言 在OpenGuass中,如果where 条件中包含where 1 0 等固定为否条件的查询语句,在生成执行计划的时候,执行计划是BaseResult类型,此类型的执行计划不会进行物理数据扫描,如下所示: 对于非固定为否条件&…

【论文阅读】多传感器SLAM数据集

一、M2DGR 该数据集主要针对的是地面机器人,文章正文提到,现在许多机器人在进行定位时,其视角以及移动速度与车或者无人机有着较大的差异,这一差异导致在地面机器人完成SLAM任务时并不能直接套用类似的数据集。针对这一问题该团队…

latex中\documentclass[preprint,review,12pt]{elsarticle}的详细解释

在LaTeX中,\documentclass 是一个命令,用于指定文档所使用的文档类。文档类定义了文档的总体结构、格式和样式。elsarticle 是一个常用的文档类,它主要用于在Elsevier出版的期刊上提交论文。 详细解释 \documentclass[preprint,review,12pt…

Autosar Appl介绍

AUTOSAR架构中的应用层 AUTOSAR 应用层构成AUTOSAR 架构中的最顶层,被认为对所有车辆应用至关重要。AUTOSAR 标准使用“组件”概念指定应用层实现。 在谈论应用层实现时,应该考虑的三个最重要的部分是: AUTOSAR 应用软件组件这些组件的 AUTOSAR 端口AUTOSAR 端口接口 AUTOS…

浙江大学主办!2024年第7届信息通信与信号处理国际会议( ICICSP2024)征稿开启!

会议官网 IEEE | ICICSP 2024 学术会议查询-学术会议交流服务平台-爱科会易 (uconf.com)​www.uconf.com/

OpenChat:性能高达105.7%,第一个超越ChatGPT的开源模型?

OpenChat:性能高达105.7%,第一个超越ChatGPT的开源模型? 前几天开源模型第一还是是Vicuna-33B、WizardLM,这不又换人了。对于开源模型的风起云涌,大家见怪不怪,不断更新的LLM榜单似乎也没那么吸引人了。 …

在springboot项目中调用通义千问api多轮对话并实现流式输出

官网文档 阿里灵积提供了详细的官方文档 如何实现多轮对话 官方文档中提到只需要把每轮对话中返回结果添加到消息管理器中,就可以实现多轮对话。本质上就是将历史对话再次发送给接口。 如何实现流式输出 官方文档中提出使用streamCall()方法就可以实现流式输出&…

ViT的若干细节

之前只看了ViT的大概结构,具体的模型细节和代码实现知之甚少。随着ViT逐渐成为CV领域的backbone,有必要重新审视下。 patch -> token 为了将图片处理成序列格式,很自然地想到将图片分割成一个个patch,再把patch处理成token。 …

Linux学习:初始Linux

目录 1. 引子:1.1 简述:操作系统1.2 学习工具 2. Linux操作系统中的一些基础概念与指令2.1 简单指令2.2 ls指令与文件2.3 cd指令与目录2.4 文件目录的新建与删除指令2.5 补充指令1:2.6 文件编辑与拷贝剪切2.7 文件的查看2.8 时间相关指令2.9 …

【网站项目】202物流管理系统

🙊作者简介:拥有多年开发工作经验,分享技术代码帮助学生学习,独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。🌹赠送计算机毕业设计600个选题excel文件,帮助大学选题。赠送开题报告模板&#xff…

不会代码的时候,如何使用Jmeter完成接口测试

1.接口测试简介 接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。 2.接口测试流程 接口测试的…