Graph Neural Networks for Microbial Genome Recovery——论文阅读记录

简介: 图网络宏基因组组装论文笔记
发表年月 2022.04 期刊 Genomics 中科院分区 二区
影响因子 5.034 是否OA 阅读时间 2022.10.24
原文链接 https://arxiv.org/abs/2204.12270

背景

(1) 微生物群落对人类健康和环境有直接影响,它们在实现可持续发展目标方面发挥着至关重要的作用,特别是良好健康和福祉(SDG-3)、水下生活(SDG-14)和陆地生活(SDG 15)等。然而,要想探索微生物的潜力以造福大众,就需要从多样性和功能等方面对微生物世界有一个敏锐的理解。宏基因组学在DNA水平上研究微生物群落,理论上可以恢复样本中所有微生物的基因组。然而,这是一项复杂的任务,因为DNA测序技术只能产生全基因组的片段,而且由于当前参考数据库的不完整,环境样品中大多数微生物的全基因组仍然未知。

(2) 从碎片的测序数据中恢复宏基因组->binning.分为两步:第一步定义DNA序列之间的相似性概念;第二步进行聚类,也就是bins。大多数binner仅仅利用了局部特征,并没有充分考虑连接性信息。

(3) 介绍图神经网络的应用,其已经被用于binning,例如:[Xue et al., 2021; Lamurias et al., 2022]

(4) 本文作者提出VAEG-Bin,一种基于GNN的binning方法,结合通过VAE获得的局部特征与从组装图获得的全局特征进行融合。在真实和模拟数据集上效果较好。

(5)(Domain background: read越长越好,以完全重建基因组,但read越长也越容易出错,介绍组装图生成原理。Contigs的特征:丰度,k-mer,单拷贝基因(SCG)(两个contigs有相同的SCG一定属于不同的基因组中)

相关研究

(1) 近几年有基于kmer和丰度特征的binner,Metabat2和Maxbin2,. The SCGs associated with each contig are used to estimate the number of bins。

(2) 目前出现深度学习的方法:VAMB:学习节点kmer和丰度特征的嵌入表示。

(3) 组装图方法:Graphbin2:将装配图用于最后一步,没有应用于整个过程,可能会出现错误。存在相同物种的变体,将会产生错误的bins。

主要方法

(1) VAEG-BIN相对于基因组标签保持完全不受监督基因组标签仅用于定量评估**。与经典的图问题不同,装配图可能存在错误连接。为了解决这个问题,每个边被分配了权重,也就是边缘置信度[0,1]。

image-20221029142407278

(2)$z_l$是变分自编码器学习到的节点表示,然后GNN将img作为输入,然后生成每个节点全局表示img。最后,将img输入到聚类算法中得到最终结果。

(3)最终目的是进行聚类并为每个节点分配尽可能多的唯一单拷贝基因(SCGS)

(4)$z_l$:用VAE来编码kmer和丰度特征,VAE包括编码器,解码器,还有一些参数。对kmer特征和丰度特征进行归一化。用来训练VAE的损失函数由以下三部分组成:

img

(5)图表示学习:GNN学习依赖于节点邻域的节点特征。通过以下通用卷积来聚合节点信息

img

image-20221029142625685

对于不同的GCN,该表达式的表示方式不同。

img

用来训练GNN的损失函数定义如下:

img

聚类和评估:为了简单起见,本文用了与[Nissen and others, 2021]一致的聚类算法,修改后的 k-medoids algorithm,不需要初始化聚类的数量。

img

该算法包括三个步骤:首先通过选取与节点相关联的随机zu来找到种子质心,并计算到所有其他zv的余弦距离。如果在一个小半径内,任何节点的邻居比当前的椭球体多,则该节点将被选为新的椭球。第二步是确定簇半径。计算从所选的椭球体到所有其他节点的距离,该算法试图找到一个最佳距离阈值,该阈值包括大多数附近节点,但足够小,可以排除远处节点,这应该对应于距离直方图中的局部最小值。第三步是从要群集的节点列表中删除该阈值内的节点,并返回到第一步,直到不再剩下未群集的节点

评估:用完整性和污染度,然后用单拷贝基因作为真实标签

image-20221029142743161

image-20221029142750156

对于模拟数据集可以获得每个节点的真实标签,模拟数据集的评估标准:[Meyer and others, 2018] using the AMBER evaluation tool。如果bin中只有一个节点标签同时不包含其他的标签,那么其准确度就是1

image-20221029142812195

实验结果

与MetaBat2,Vamb,maxbin2,Graphbin方法作比较。

模拟数据集

image-20221029142841221

真实数据集

image-20221029142909898

使用到的数据集

Strong100是模拟数据集(using the badread [Wick, 2019] tool (v0.2.0), where we generated reads according to the methodology proposedin [Quince and others, 2021];),其他是真实数据集。

image-20221029143941549

当前存在的问题/发展方向

有几个有希望的方向可供进一步研究:改进聚类步骤,以更好考虑单拷贝基因在不同的聚类类别中的分布,这一步将涉及改进损失函数,促进簇的高完整性和低污染。结合表示学习和聚类的端到端方法可以进一步改进这项任务。

相关文章
|
PyTorch 算法框架/工具 计算机视觉
用thop去获得模型参数量和计算量(pytorch)
用thop去获得模型参数量和计算量(pytorch)
995 2
|
Windows
Windows常见可读写目录的探测
Windows常见可读写目录的探测
363 0
Windows常见可读写目录的探测
|
SQL 机器学习/深度学习 消息中间件
十大行业经典案例!Apache Flink 的 40 个最佳实践
如今,Apache Flink 行业应用几何?在降本增效的需求驱动下,企业如何实现数据与算力价值最大化?本文整理了 Flink 社区近一年的社区案例,并按照行业进行分类,供大家参考!
十大行业经典案例!Apache Flink 的 40 个最佳实践
|
前端开发
Grafana汉化笔记
Grafana汉化笔记 tags:网站 @[toc] 前言 本文主要记录Grafana汉化过程,以备后续查阅。Grafana中文版本基于官方源码(前端部分)进行汉化。汉化内容主要为前端UI界面文本,不涉及后端服务器内容。
6918 1
|
2月前
|
算法
【电力系统潮流】5节点系统潮流计算-牛拉法和PQ分解法(Matlab代代码实现)
【电力系统潮流】5节点系统潮流计算-牛拉法和PQ分解法(Matlab代代码实现)
342 3
|
3月前
|
存储 供应链 前端开发
如何开发供应商管理系统中的物料管理板块(附架构图+流程图+代码参考)
供应商管理系统中的物料管理板块是企业供应链管理的核心部分,涉及物料采购、库存、资质及价格管理。它通过标准化、自动化管理,降低采购成本,提高供应链透明度与合规性,确保企业物资供应稳定、高效。本文详细解析物料管理的架构设计、核心功能与业务流程,并提供代码示例与开发技巧,助力企业快速构建高效物料管理系统。
|
监控 数据可视化 测试技术
Apifox 如何进行 API 自动化测试?经验之谈
选择 Apifox 来进行 API 自动化测试能够确保每次迭代的质量,避免引入新的 bug,还要实现自动化测试、定时测试、产品监控、可视化测试、持续集成等,帮助提高效率,通过设计和执行有针对性的测试用例,来全面验证产品功能,确保软件系统能够正常运行,减少上线后的问题。
Apifox 如何进行 API 自动化测试?经验之谈
|
存储 数据采集 数据挖掘
数据仓库VS数据湖:选择正确的数据存储解决方案
【8月更文挑战第23天】企业在选择数据存储解决方案时,应综合考虑业务需求、数据特性、技术实力及成本效益等多方面因素,以做出最符合自身发展的决策。
1273 2
|
存储 缓存 NoSQL
分布式架构下 Session 共享的方案
【10月更文挑战第15天】在实际应用中,需要根据具体的业务需求、系统架构和性能要求等因素,选择合适的 Session 共享方案。同时,还需要不断地进行优化和调整,以确保系统的稳定性和可靠性。
592 55
|
数据采集 搜索推荐 安全
做谷歌独立站多少钱?
答案是:做谷歌独立站是3000元。 当你想在谷歌上创建一个独立站点,你可能会想知道这需要多少费用。 以下内容将为你详细解释与创建谷歌独立站点相关的费用。 初始建站费用 首先,你需要购买一个域名。 通常,一个域名的价格会在10元至200元之间,这取决于域名的流行度和后缀。 接下来,你可能需要一个主机来托管你的网站,这通常每月会花费你20元至200元。
877 0
做谷歌独立站多少钱?