DNAGPT: 多功能DNA序列分析任务的通用预训练工具.

0. TL; DR

本文介绍了DNAGPT,这是一个用于DNA序列分析的通用预训练模型。DNAGPT基于GPT架构,通过在超过2000亿个碱基对的哺乳动物基因组数据上进行预训练,能够处理多种DNA分析任务,包括序列和数值数据的处理。通过引入二元分类任务(DNA序列顺序预测)和数值回归任务(鸟嘌呤-胞嘧啶含量预测),DNAGPT在多种下游任务中表现出色,优于现有的特定任务模型。此外,DNAGPT还支持多物种数据和多种任务格式,为DNA序列分析提供了一个强大的基础模型。

1. 背景介绍

DNA作为生命的蓝图,包含了生物体生长、发育、生存和繁殖的全面指导信息。人类基因组计划通过解码DNA序列,推动了生命科学的发展,使得研究人员能够深入研究DNA解释、生物过程、疾病检测以及通过合成生物技术(如CRISPR-Cas系统)进行生命的设计。

DNA序列中包含丰富的生物学信息,尤其是大量的非编码区域,这些区域尚未被充分探索,值得深入研究。DNA序列的多样性、庞大数量和复杂关系给数据分析和理解带来了挑战。例如,人类基因组中估计存在的100,000个基因,每个基因都可以从不同方面进行表征:它可以由核苷酸序列表示,其在不同细胞中的表达水平可能因非编码区域、细胞类型或环境等因素的影响而有很大差异,此外,它还可以在不同情况下翻译成不同丰度水平的蛋白质。因此,DNA序列研究需要整合序列数据(以DNA序列表示)和表达数据(以丰度的数值表示)。

最近,基础模型的出现通过在大规模数据集上预训练通用模型,彻底改变了自然语言理解,这些模型可以针对各种下游任务进行微调。受此启发,预训练模型已被用于揭示DNA序列中的隐藏信息。然而,如上所述,DNA分析任务有多种形式,涉及序列和数值数据作为输入和输出,这些数据难以用单一的语言模型处理。

之前的尝试,如DNABERT和核苷酸变换器(NT),涉及在基因组数据上进行预训练,然后根据任务特定的头部在下游数据集上进行微调,分别处理属性预测任务(如基因组信号和区域(GSR)任务)和生成任务(如重建人类遗传变异)。此外,在预训练期间,上述预训练模型仅使用DNA序列,没有考虑数值数据,使其不适合涉及数值输入或输出的任务,例如从DNA序列回归mRNA丰度。这些弱点严重限制了各种任务的泛化能力,并未能提出一个能够无缝整合DNA序列相关任务的通用模型。此外,统一这些复杂多样的数据类型和任务范式可以减少不必要的算法设计工作,同时让更多的任务从预训练中受益,为进一步的发现和见解铺平道路。

2. DNAGPT 模型

DNAGPT的核心是一个基于Transformer的自回归解码器,带有掩码自注意力模块。为了更好地处理数值信息,作者在单个模型中端到端地预训练DNA序列和数值属性。

DNAGPT使用序列token来表示编码的DNA序列,使用数字token来表示编码的数值属性。采样的DNA序列首先被处理成一系列非重叠的k-mer token输入,然后送入序列嵌入层进行编码。数字则直接送入数值嵌入层进行编码。

然后作者将两种嵌入连接起来,并将它们送入GPTGPT的输出被分为两种类型的嵌入,并分别送入分类头以对不同token进行分类和回归头以生成数字。

为了整合来自多个物种的DNA序列信息,并使下游任务能够从跨物种信息中受益,作者提出了四种DNAGPT变体,分别命名为DNAGPT-H、DNAGPT-M、DNAGPT-S-512DNAGPT-B-512。这些变体在预训练数据和模型参数数量上有所不同。

作者为DNAGPT设计了三个预训练任务,以充分表征DNA序列及其相关的数值属性:

  1. 下一个token预测:这是NLP中的经典预训练任务,GPT利用此技术根据之前的token预测下一个可能的token
  2. 鸟嘌呤-胞嘧啶含量预测GC含量在转录组分析中起着关键作用,它提供了关于基因组结构的重要信息,如结构变异和转录活性。在这个任务中,作者将GC含量编码为数字token,允许模型联合训练数值和序列数据,并使DNAGPT能够适应涉及数值数据输入和输出的下游任务。
  3. 序列顺序预测DNA序列的顺序在基因表达和转录中起着重要作用。作者设计了一个自监督的序列顺序预测任务,随机反转一个序列,并让模型预测该序列是否被反转。

DNAGPT的预训练中,作者使用了交叉熵损失和均方误差(MSE)损失。对于下一个token预测和序列顺序预测任务,使用交叉熵损失;对于GC含量预测任务,使用MSE损失。最终损失可以表示为:

\[\text{Loss} = \lambda \times \text{MSE loss} + \text{Cross entropy loss}\]

其中,$\lambda$ 是一个权重因子,用于平衡两种损失。在预训练中,$\lambda$ 被设置为0.01。

3. 实验分析

基因组信号和区域(GSR)识别

作者对DNAGPT进行了微调和评估,以识别不同物种(人类、小鼠、牛和果蝇)的聚腺苷酸信号(PAS)和翻译起始位点(TIS)。

实验结果表明,DNAGPT不仅能够与最先进的方法竞争,还能够准确识别输入序列中的关键区域。具体来说,DNAGPT在人类PASAATAAA变体和所有变体)和TIS(带有ATG信号)的识别任务中,准确率(ACC)分别为93.20%、92.65%和98.02%。这些结果表明DNAGPTGSR识别任务中的优越性能。

mRNA表达水平预测

作者进一步研究了DNAGPT是否能够从DNA序列中提取更丰富的信息,尝试直接从基因组序列信息预测相应启动子的mRNA表达水平。作者使用了人类和小鼠的18,377和21,856个启动子以及mRNA半衰期数据,并在Xpresso相同的设置下使用DNAGPT进行预测。

实验结果表明,DNAGPT在人类mRNA丰度预测任务中的表现优于Xpresso,从0.59提高到0.62;在小鼠物种上,结果从0.71提高到大约0.73。这表明DNAGPT能够处理涉及序列和数值输入的任务,而无需设计更多样化和复杂的模型。

人工人类基因组生成

作者还研究了DNAGPT在生成人工人类基因组(AGs)方面的表现。AGs可以用于保护遗传隐私并降低遗传样本收集的成本。作者使用来自1000基因组计划的5008个单倍型数据对DNAGPT进行微调,并生成了5000个AGs,每个AG包含10,000个单核苷酸多态性(SNPs)区域。

作者从主成分分析(PCA)、等位基因频率(AF)、连锁不平衡(LD)和单倍型距离分析等角度对DNAGPT生成的AGs进行了评估。

结果表明,DNAGPT在所有评估指标上均优于传统的GANRBM模型。

不同版本的DNAGPT比较

作者还比较了不同版本的DNAGPTGSR预测、mRNA表达水平预测和人工人类基因组生成任务中的表现。

结果表明,随着预训练数据量的增加(从人类参考基因组到所有哺乳动物的参考基因组),下游任务的性能也有所提高。例如,在人类mRNA表达水平预测任务中,DNAGPT-MDNAGPT-H的表现相当,但在小鼠物种上,DNAGPT-M的表现优于DNAGPT-H。此外,在人工人类基因组生成任务中,DNAGPT-M在等位基因频率和连锁不平衡的相关性上略优于DNAGPT-H