摘要
为了解决传统语言难以捕捉DNA语义之间信息的问题,文章提出了一个新颖的预训练双向编码表示DNABERT,通过上下文信息对DNA序列进行全局或者迁移分析。通过实验表明,模型能够在众多下游任务上达到SOTA水平,并且,DNABERT可以直接对核苷酸分子的重要性进行排名,分析输入序列上下文之间的关系,从而获得更好的可视化信息和精确的motifs提取。
方法
输入
将序列转化成k-mer的token表示作为输入,token还包含一个CLS标记(表示整个句子含义的标记)、一个SEP标记(句子分隔符)和MASK token(在预训练中代表k-mers)。
通过直接非重叠分裂和随机抽样从人类基因组生成训练数据,序列长度在5-510之间。
网络结构
如图1。
通过将每个标记嵌入数字向量,每个序列被表示为矩阵M。随后通过在M上执行多头自关注机制捕获上下文信息,经过线性变换得到调整,从而结束一层的前向传播。经过多层这样的作用,得到用于BERT的预训练任务。
在预训练微调部分,通过删除下一句预测、调整序列长度来使模型对DNA连续多少(k)个token符合可能发生的情况进行预测。
掩码部分随机遮盖15%然后进行预测,通过交叉熵的损失函数进行反向传播。

图1 网络结构
训练
符号化
用k-mer表示法对DNA序列进行标记。
采用了3-mer,4-mer,5-mer和6-mer四种方式来对DNA序列进行编码,例如,‘ATGGCT’在3-mer的编码方式下会变为以下四个token {ATG, TGG, GGC, GCT}。<

本文提出DNABERT,一种针对DNA序列的预训练双向编码模型,能够捕捉到序列间的复杂语义关系。该模型通过上下文信息进行全局或迁移分析,实现了对核苷酸分子的重要性和序列上下文关系的有效评估。实验结果表明,DNABERT在多个下游任务中表现出色。
最低0.47元/天 解锁文章
1208

被折叠的 条评论
为什么被折叠?



