题目:Strainy: phasing and assembly of strain haplotypes from long-read metagenome sequencing
doi: https://doi.org/10.1101/2023.01.31.526521
发表时间:2023.01.31
期刊:BioRxiv
原文链接:https://www.biorxiv.org/content/10.1101/2023.01.31.526521v2
通讯作者简介
通讯作者:Mikhail Kolmogorov
任职于美国国家癌症研究所
Kolmogorov教授的研究重点:计算基因组学算法、数学模型和工具,以通过分析测序数据探索生命系统相关的问题。
开发的软件:Flye,metaFlye,Ragout,AGB等
背景
宏基因组:是指从一个环境和/或样品中收集的微生物基因组。
宏基因组学的研究意义:
组装不能分离或培养的环境基因组
推测菌群进化动力学
检测病原体
发现新细菌
……
宏基因组学测序数据特有的挑战:
同时组装多个物种基因组
测序的基因组不仅有不同的物种,同一物种还有不同的菌株,
不同物种的细菌丰度不同,导致它们的reads覆盖度不均匀,
不同物种的细菌基因组存在种间重复
……
宏基因组组装算法的研究现状:
Hifiasm-meta ,MAGPhase,strainFlye只能通过HiFi数据进行宏基因组菌株水平的分型与组装。
以下软件虽然可用于ONT数据,但是不能较好地组装出菌株水平的基因组:
metaFlye-不能实现菌株水平的组装。
Strainberry - 采用配对方法(HapCUT2)可能无法解释多个菌株的杂合性分布不均匀,导致一定程度的错误组装。
iGDA - 虽然可以检测菌株的snp,但不能直接输出菌株的单倍型基因组。
方法
Overview of the Strainy approach
对于MAG中的每个contig
Strainy构建了一个connection graph
Strainy利用community detection approach,对reads进行聚类。
初始的聚类会将最不同的菌株分开,但相似的菌株可能仍然collapsed.。为了克服这一问题,Strainy通过增加对strain variants的敏感性,递归地重复聚类过程。
使用 Flye Polisher (Kolmogorov et al. 2019) 为每个 cluster 的 reads生成consensus,形成strain-resolved unitigs
Strainy 给这些单倍体构建一个overlap graph 。
Strainy 应用graph simplification algorithms来提高assembly的连续性。
图1:Overview of the StrainyMAG pipeline.
Overview of the StrainyMAG pipeline:
Strainy 不仅是一个用于菌株单倍型分型的方法,作者还扩展了Strainy,搭建了名为 StrainyMAG的流程,实现了完整的宏基因组从头组装。
以下是StrainyMAG的主要流程:
1)de novo组装:使用metaFlye生成an assembly graph with collapsed representation of strains。
2)call SNP:使用minimap2将original reads与assembly graph进行比对,比对的结果通过 Clair3 call variable positions。
3)species-level binning:使用MetaBAT2 进行分箱, CheckM2 评估分箱的完成度和污染情况。得到metagenome-assembled genomes (MAGs)。
4)Strainy phasing algorithm对每个MAG进行处理,生成MAG物种对应的strain-resolved assemblies.
Strainy算法的具体方法介绍
1)提取reads的informative SNPs
作者提出将一开始的strain-collapsed unitig作为reference unitig,将reads与其进行mapping,并提取每条reads的SNPs.
作者将可以将来自不同菌株单倍型的reads进行区分的SNPs,称为informative SNPs。
2)Connection graph 的构建
如图,read1,read2,read3在connection graph中就对应节点n1,n2,n3.
节点之间相连需要满足以下条件:
两条reads之间有一定的overlap.
overlap至少包含一个informative SNP
overlap中不可以有不匹配的informative SNP。
图中n1与n2满足3点连接条件,所以成功连上;
但是n3与其他2个节点由于不满足第三点连接要求,所以是孤立的。
3)Connection graph分群
作者在这一步使用了标签传递算法
如下图,若用肉眼观察,我们不能发现测序reads之间,互相有什么能够聚类的特征。
但是如果我们采用上述构建的connection graph,再基于informative SNP应用标签传递算法,对connection graph分群。我们就可以得到不同类别的reads,同一个类别的reads,可以认为来自一个菌株单倍型。
通过一轮标签传递算法,往往难以实现所有菌株的彻底分型。如下图,该物种中有来自三个菌株的reads,第一轮分型后,将蓝色单独分成一群,将紫色与黄色分成一群。为了实现每个群里的reads只对应一个菌株单倍型,作者采用迭代的方式进行分群,即每次分群后,再根据子群减少的informative SNP应用标签传递算法进行分群直至收敛。
对无杂合性区域的处理:
在the connection graph中,无杂合性区域的reads将对应于孤立的节点。这些reads根据其 reference unitig坐标单独进行聚类。
4)通过overlap graph组装Strain graph
使用Flye polisher为每个群的reads生成对应consensus sequence→ strain-resolved unitigs
为每个unitg生成一个overlap graph
5)Assembly graph 的膨胀与简化
经过上述步骤,已经为每个unitig生成了对应的overlap graph。经过一定程度的简化(整合非分支路径,去除嵌套节点,减少气泡),转化为最终的haplotype graph。
在这里我们用haplotype graph替换之前的reference unitig
将两个新的Unitig连接的条件:
它们在新生成的overlap graph中存在连接;
至少有minLink reads跨越两个unitigs。
对于有分叉的节点,每个分叉,如果删除其中一条连接,不会产生新的tips,则将该连接删除,实现图的简化。
结果
1)Benchmarking using Nanopore and HiFi sequencing of mock bacterial communities
以下为进行互相比较的软件:
数据来源:
Zymo 模拟群落 D6331 的公开宏基因组测序,其中包括五种不同的大肠杆菌菌株以及其他细菌物种。
benchmarking集中在五个大肠杆菌菌株上,并选择与相应大肠杆菌菌株参考基因组比对上的reads进行分析。
HiFi 数据集中大肠杆菌菌株的覆盖率很高(100x+),这在真实宏基因组样本的测序中很少能实现。因此,作者downsampled HiFi reads to ~30x read。表格中是最终所用测序数据的total length与N50。
下图的结果显示,strainy的组装结果,在菌株基因组组装的完整度(genome fraction)与准确度(Strain switch errors,intra-srain errors,QV)与其他软件相比有明显优势。但是在连续性(NGA50)上,较其他软件差。作者也认为在连续性这一方面,他们还会想办法继续完善strainy。
2)Benchmarking using simulated datasets of various species, strain composition and abundance.
具体数据来源:
五株大肠杆菌菌株(成对 ANI 范围为 98.4% 至 99.5%)、
五株金黄色葡萄球菌菌株(ANI 范围为 98.5% 至 99.9%)、
五株单核细胞增生李斯特菌(ANI从 98.6% 到 99.8%)和
五株铜绿假单胞菌(ANI 从 98.7% 到 99.5%)。
两种reads覆盖模式:
均匀覆盖模式,所有菌株的覆盖度为30x
阶梯覆盖模式 :菌株覆盖度递减分布,例如 数据集中选用3个菌株,那么他们的reads覆盖度为50x, 40x, 30x
数据集构建:
4(物种)x 4(菌株数)x 2(深度模式)x 2(技术)= 64 个数据集
模式测序数据:
使用 Badread 来模拟具有不同错误率分布的 HiFi 和 Nanopore 读取。
HiFi:mean error rate = 0.1% error rate ;read length N50 = 5 kb
Nanopore:mean error rate = 3% ;read length N50 = 5kb
根据下表的结果,我们可以看到在simulated datasets中,ONT数据strainy在菌株基因组组装完整性方面有着明显的优势。
但是HiFi数据,strainy与hifiasm相比,并未体现出明显的优势。
下图的结果中还体现了各个软件共性的特征:
所有方法随着菌株数量的增加,都存在完整性降低的趋势。
具有较高ANI的菌株更有可能出现转换错误。
uniform 与 staggered coverage modes之间的没有实质性差异,这表明这些工具在组装时,菌株的覆盖差异具有鲁棒性。
3)Assembly and phasing of a complex activated sludge bacterial community with Nanopore and HiFi.
作者将 Strainy 应用于厌氧消化池活性污泥的宏基因组数据集,并通过StrainyMAG pipeline使用ONT数据组装了菌株水平的基因组。
StrainyMAG pipeline进行分箱后,生成32个高质量MAG,其中13个MAGs的覆盖深度在30x以上,作者后续仅对这13个MAGs进行菌株分型。
根据下面的结果表格与图,可见:
使用strain对13个MAGs进行菌株分型,均有不同程度的基因组长度的增加
未出现reads的覆盖深度与基因组长度的增加幅度之间的强烈关联,这表明一开始的MAGs包含一个或几个优势菌株,而不是丰度递减的菌株的“连续体”。
如图显示,每个MAG每个预测ORF都能包含2-3个菌株单倍型,说明可以进行稳定的菌株分型。
4)Strain haplotypes assemblies provide insights into intra-species evolution
作者将MAG consensus作为参考基因组,对Strainy菌株单倍型call SNPs ,以揭示不同的突变过程。
MAG 之间的Substitution signatures大多一致,这可能反映出细菌细胞可能暴露在宏基因组内的相同环境中。然而,一些特定类型的substitutions(例如 C>G 和 G>A)的在不同 MAGs 之间的频率有所变化,这表明存在物种特定的突变过程。
为了探索不同物种的特定进化模式,作者选择关注其中的60个与抗生素抗性相关的基因.
下图的non-synonymous to synonymous substitutions rates (dS/dN)可以揭示了一些进化趋势,并体现出 MAG 特有的选择证据。例如,有 32 个基因的 dS/dN 比率大于 1,7 个基因在两个以上的 MAG 中显示出强烈正选择的迹象,2 个基因在不同 MAG 中同时显示出正选择和负选择(dS/dN < 1)的迹象。
这些selection signatures与以往文献一致。
总的来说,作者的分析强调了菌株水平组装如何揭示单个宏基因组群落内物种特异性的突变和选择模式。
5)Computational performance.
所有工具都在使用 8 个线程的单个计算节点上运行。
总体而言,Strainy 比 Strainberry 慢 2-3 倍,但运行时间仍然实用。
De novo assemblers (hifiasm-meta and metaFlye)速度更快,但不能实现Nanopore数据集的strain-level resolution。
文章总结
作者提出了一种 long-read assembly-based phasing 的细菌菌株phasing算法框架:stSainy。
stRainy 处理sequence graphs ,从而改进 de novo assemblies 或 pangenome reference graphs
stRainy 更加通用,可以应用于 PacBio HiFi 和 Oxford Nanopore
作者对stSainy算法进行pipline的完善,提供了 StrainyMAG pipline 来处理real large metagenomic datasets
mock metagenomic sequencing , simulated data 用于 stRainy测试与分析,Strainy 在完整性和准确性方面明显优势。
Strainy 使用活性污泥细菌群落的ONT数据组装菌株单倍型,了解种内基因组变异。进一步研究细菌群落动态和进化。
stSainy不仅限于细菌菌株定相,还可以应用于其他应用,例如癌症中的癌基因扩增……
但是这个软件也有待改进的地方:
在 HiFi 数据上,与 hifiasm-meta 相比,Strainy 具有相当的完整性,但单倍型连续性较低。这可能是因为 hifiasm-meta 已针对高精度 HiFi 读取进行了调整;而Strainy旨在容忍ONT的高noise。
作者发现metaFlye assembly graphs的自身缺陷通常会导致单倍型的断裂。
作者认为提高metaFlye assembly graph的连续性,并实现更好的read-graph alignment将有助于提高Strainy组装结果的连续性。
感谢阅读!
由于作者水平有限,
论文解读难免存在不准确,欢迎批评指正
作者:徐嘉潞
本课题组(湖南大学)长期招聘基因组学、生物信息学等方向的博士后研究人员,诚邀青年学者加盟!详细信息请查阅:https://mp.weixin.qq.com/s/S3Hjx7N9prXo7V9y-elkGg