端粒是染色体末端一段重要的重复序列,起到保护染色体的作用,并报道参与到广泛的生物调控过程,并在人类疾病(如癌症)和衰老过程中发挥关键作用。在许多生物体中,端粒是以TTAGGG为重复单元的一段重复序列,其长度在2到20kb之间。因此,早期的Illumina短读长测序很难捕获到完整的端粒序列。目前,随着PacBio和nanopore长读长测序技术的发展,并以此来进一步研究端粒在生命活动中的作用成为可能。PacBio主要通过四种不同的荧光染料来进行DNA的测序,而nanopore利用DNA通过纳米孔时的电流分布与训练好的深度神经网络进行转换进行DNA碱基的识别。测序原理的差异可以看出在nanopore测序中预训练好的深度神经网络对测序准确性的重要性。
近日,生信领域大牛级人物,哈佛大学医学院/Dana-Farber癌症研究所李恒(https://hlilab.github.io/)在Genome Biology在线发表了题为“Identifying and correcting repeat-calling errors in nanopore sequencing of telomeres”的研究论文,报道了在将nanopore序列比对到最近测序和组装的人类基因组CHM13(2020和2021年Nature发表的完整的X和8号染色体)中的端粒区域进行分析时发现,基因组端粒区域经常以链特异性的方式被错误的标记为其他类型的重复。
具体来说,人类基因组的端粒序列通常是以TTAGGG为基本重复单元重复的出现N次,但在nanopore序列中序列却是TTAAAA(图1a)。同时当在负链上进行检查时(即检查CCCTAA)发现检测到是却是CTTCTT和CCCTGG两种。重要的是在CHM13参考基因组和PacBio HiFi序列中并没有发现这种情况(图1a和1b),这说明这种错误是nanopore序列特异的,并不是正常的生物体端粒变异。同时,对CHM13基因组的所有端粒所在染色体臂上都检测到这种错误。
人类基因组不同染色体间的端粒序列存在极高的相似性,这可能会导致测序read在不同染色体臂间的错误匹配。因此,作者统计了这种不同染色体臂间的错误匹配的程度来评估其是否会影响分析结果。作者在CHM13基因组端粒所在区域的10kb,100kb和1000kb范围内模拟了平均长度为10kb的long-reads并将其重新比对到CHM13基因组来统计错误比对率。结果当比对质量值大于1时,碱基准确性达95和99.9%的reads比对错误率仅有~0.03–0.3%。甚至当把条件放宽,即比对质量值大于0时,比对错误率也仅有0.3–1.2%。因此,模拟reads结果表明reads在CHM13基因组的不同染色体臂间错误匹配的水平极低。
接下来,作者评估了 CHM13基因组中每个染色体臂的测序覆盖率,以确定是否存在由reads错误比对导致的reads覆盖率偏差的情况。结果并没有发现nanopore序列在CHM13基因组中每个染色体臂上存在明显的覆盖率偏差。为了评估是否这种错误在其他研究中也存在还是CHM13数据集特异的,作者检查了之前发表的NA12878和HG002 的nanopore基因组序列数据集,并发现了同样的端粒处碱基的错误测序(TTAGGG➔TTAAAA, CCCTAA➔CTTCTT, 和 CCCTAA➔CCCTGG)。值得注意的是,这三个数据集中40%至60%的比对到端粒区域的reads存在上述三种碱基错误测序中的至少一种,而在相同样本的PacBio HiFi数据集中没有观察到这些错误。随后作者还根据用于生成这些数据集的测序平台对这些数据集进行了划分,并注意到在所有三个纳米孔测序平台(MinION、GridION、PromethION)上都能观察到端粒处碱基的错误测序(图1d)。进一步说明这些错误在nanopore测序数据集和测序平台中是普遍存在的,且在不同的nanopore basecallers或basecalling models中都可以观察到这种端粒处的错误重复。此外,在容易出错和不易出错的reads的电流分布文件中也没有观察到端粒处错误重复比例较高(>0.9)与错误比率较低(<0.4)的reads之间存在明显的的差异。
紧接着,为了确定这些端粒处的错误发生的原因,作者检查了真正的端粒处重复序列和假的端粒处错误重复的离子电流分布。结果表明,重复序列之间电流分布的相似性可能是nanopore序列在端粒处发生碱基call产生错误的原因。
然后作者检查了端粒处错误的repeat-calling是否可能会扩展到端粒序列以外的其他重复序列。作者搜索具有与端粒处错误的repeat-calling类似的电流分布文件,并对其call碱基进行检查。结果表明,这些端粒处错误的repeat-calling可以在端粒以外的其他重复区域观察到。
除了端粒外,在人类基因组的端粒附近还经常可以发现三种主要类型的telomere-like重复序列,即 c 型重复序列 (TCAGGG)n,g 型重复序列 (TGAGGG)n和j 型重复序列(TTGGGG) n。相同的方法对CHM13基因组的这些序列进行调查,同样的也可以观察到错误的repeat-calling。
除了人类基因组,其他物种中是否也存在nanopore测序的这种端粒处repeat-calling,作者从NCBI下载了八种具有高质量基因组的模式生物的nanopore基因组序列数据集,同样在除酵母【端粒处是(TG1–3)n】外的其他物种端粒处也观察到这种错误的repeat-calling。总之,结果表明,nanopore测序中的repeat-calling错误也可以在人类端粒以外的其他一些生物的端粒上观察到。
为了解决端粒上的这些碱基calling错误,作者通过提供更多的端粒训练示例来调整nanopore碱calling程序。值得注意的是,模型的训练是以低的学习率进行的,以确保大多数模型在训练过程中不受影响,同时确保可以对模型进行细微调整,来准确地进行端粒的calling。具体来说就是通过从CHM13参考基因组中提取真实的端粒序列,以及相应的nanopore reads,以较低的学习率训练Bonito basecaller,从而调整了Bonito basecaller底层的深度神经网络模型。通过这种方法,在训练数据上可以看到在端粒和亚端粒区域的basecalls准确性显著改善,并在染色体末端的错误明显减少(图2)。作者也将训练好的模型在Github进行开源(https://github.com/ktan8/nanopore_telomere_basecall/)。
最后,作者进一步评估了他们的方法对整体的basecalls准确性的影响。结果当将该basecalls直接应用于整个数据集时,观察到整体的碱基准确度降低(~1–2%)。作者分析可能是由于将本来的 (CTTCTT)n基因组重复序列错误的calling为 (CCCTAA)n造成的。因此,将作者训练的basecalls单独的应用于端粒处的reads calling,可以避免这一问题。正如所料,当作者将训练的basecalls单独的应用于端粒处时,没有观察到整体碱基准确度的变化(图2e)。
原文链接:
https://genomebiology.biomedcentral.com/articles/10.1186/s13059-022-02751-6
转自:“植物生物技术Pbj”微信公众号
如有侵权,请联系本站删除!