Deep5mC: 使用深度学习Transformer方法预测5甲基胞嘧啶位点.
0. TL; DR
Deep5mC 是一个基于深度学习 Transformer 的方法,旨在预测 5mC 甲基化。Deep5mC 使用长达2561 bp的序列作为输入,核心是一个包含16层 Transformer 和16个注意力头的深度学习模型。它利用相对位置嵌入和多头自注意力机制有效地捕捉 DNA 序列中的长程依赖关系。
通过跨染色体的评估,Deep5mC 取得了超过0.86的马修斯相关系数 (MCC) 和超过0.93的 F1-score,显著优于现有的先进方法(如 iPromoter-5mC 和 5mC_Pred)。通过对模型内部权重和注意力分数的分析,作者不仅证实了长程序列上下文对 5mC 预测的影响,还为进一步研究跨物种和人类疾病中 5mC 与序列的依赖关系铺平了道路。
1. 背景介绍
DNA 甲基化在多种生物学功能中扮演着不可或缺的角色。在哺乳动物中,最常见的 DNA 甲基化形式是 5-甲基胞嘧啶 (5mC)。它对于基因沉默、维持基因组稳定性以及基因的亲本来源印记等过程至关重要。DNA 甲基化的异常改变已被发现是多种疾病(如自身免疫性风湿病和各种癌症)的诱因。因此,识别甲基化位点对于全面理解 DNA 甲基化在人类疾病中的多方面作用至关重要。
尽管存在多种高通量测序技术(如亚硫酸氢盐测序和纳米孔测序)来检测全基因组的 5mC,但这些方法通常成本高昂且耗时。因此,开发高效的计算方法来识别 5mC 位点显得尤为迫切。
现有的计算方法大致可分为三类:
- 经典机器学习方法:如 Methylator 和 iDNA-Methyl,它们使用 SVM 等算法和手工设计的特征进行预测,通常处理较短的 DNA 序列。
- 针对特定细胞类型的深度学习方法:如 iPromoter-5mC 和 BiLSTM-5mC,它们在特定细胞类型的数据集上训练深度学习模型,以提高特异性。
- 基于语言模型的方法:如 5mC_Pred 和 iDNA-ABF,它们利用自然语言处理 (NLP) 模型(如 fastText 或 BERT)来提取高级特征。
尽管这些研究取得了有希望的结果,但对 5mC 与基因组序列依赖性的全面研究仍然有限。大多数方法都集中在特定的基因组区域(如启动子),并且其训练好的模型通常不可用。
为此,作者引入了 Deep5mC,一个旨在利用 Transformer 框架识别 DNA 序列中 5mC 甲基化位点的新型深度学习方法。Deep5mC 通过对长程依赖关系的建模,证实了 5mC 的发生与基因组序列密切相关,并为未来的相关研究提供了新的工具。
2. Deep5mC方法
Deep5mC 是一个基于 Transformer 框架的深度学习算法,其整体架构如图所示。它通过特征提取、Transformer 编码和全连接层分类三个步骤,来预测目标位置的甲基化状态。

2.1 数据集
作者从 NIH roadmap epigenomics consortium 下载了覆盖37种不同人类表观基因组的 5mC 甲基化数据。
移除了覆盖度低(≤ 3)以及来自 X, Y, M 染色体的位点。为了减轻异常值的影响,作者计算了每个位点在不同表观基因组中的甲基化百分比的截尾均值。丢弃了标准差 > 0.1 的位点,以确保甲基化状态在不同表观基因组中的一致性。以每个筛选后的位点为中心,提取长度为2561 bp的 DNA 序列作为模型的输入。
2.2 深度学习框架
2.2.1 特征生成
输入的 DNA 序列首先需要被转换为 Transformer 模型可以处理的向量。这一过程通过令牌嵌入 (token embedding) 和位置嵌入 (position embedding) 来实现。
将每个核苷酸(A, C, T, G, N)以及一些特殊令牌([CLS], [SEP], [PAD])通过独热编码 (one-hot) 表示为向量。为了解决 DNA 序列中令牌种类有限(只有四种)的问题,作者在嵌入层之后加入了一个 CNN 层,其卷积核大小为 $3 \times 1024$。该层通过结合当前令牌及其相邻碱基的向量,来捕捉更高层次的上下文信息。
与使用绝对位置编码不同,Deep5mC 采用了相对位置嵌入。这种方法不关注碱基的绝对位置,而是关注两个碱基之间的相对距离,这对于捕捉序列中的结构信息更为关键。
2.2.2 Transformer 框架
Deep5mC 的核心是一个包含16层 Transformer 编码器和16个多头注意力 (multi-heads) 的模型。
Transformer 的核心是自注意力机制。它通过计算输入序列中每个元素(在这里是每个碱基或 k-mer)与其他所有元素之间的相关性(“注意力”),来动态地调整和更新每个元素的表示。其计算公式为:
\[\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V\]其中,$Q, K, V$ 分别是由输入矩阵乘以不同可学习权重矩阵得到的查询 (Query)、键 (Key) 和值 (Value) 矩阵。
通过并行地运行多个独立的自注意力头,模型能够从不同的表示子空间中学习信息,从而增强学习能力。
Transformer 模型学习到的表示向量,最终被送入两个全连接层,并通过一个 sigmoid 激活函数,输出最终的甲基化百分比预测值。
2.3 模型训练
作者采用了跨染色体的测试策略,即在一个或多个染色体上进行训练,在其他染色体上进行测试。使用 Adam 优化器,学习率为 $5 \times 10^{-6}$,损失函数为平均绝对误差 (Mean Absolute Error, MAE)。
由于基因组中的甲基化水平分布极不平衡(大部分位点要么是高度甲基化,要么是低度甲基化),作者在训练时采用了欠采样 (undersampling) 策略,即随机选择部分高度甲基化的位点进行训练。

3. 实验分析
作者对 Deep5mC 的性能进行了全面的评估,并与现有的先进方法进行了比较。
3.1 与现有先进方法的预测性能比较
作者将 Deep5mC 与两个公开可用的先进预测器(iPromoter-5mC 和 5mC_Pred)在三个不同的测试数据集(根据不同的甲基化/非甲基化阈值定义)上进行了性能比较。
在所有三个数据集上Deep5mC 的性能始终显著优于其他两个模型。其 MCC 值约为0.87,远高于 iPromoter-5mC (约-0.09) 和 5mC_Pred (约-0.06)。其 F1-score 平均比 iPromoter-5mC 高0.59,比 5mC_Pred 高0.94。尽管 5mC_Pred 在特异性 (specificity) 上略高,但 Deep5mC 在敏感性 (sensitivity) 和其他综合指标上表现出了压倒性的优势,实现了更均衡的性能。

Deep5mC 在准确区分甲基化和非甲基化位点方面的能力明显优于现有方法,这揭示了核苷酸上下文与甲基化状态之间的强大联系。
3.2 Deep5mC 的染色体级别性能评估
为了评估模型在全基因组区域的性能,作者在染色体1-20上训练模型,然后在染色体21和22上进行测试。
结果显示,模型取得了0.87的准确率 (accuracy) 和0.93的 AUC。预测的甲基化百分比与实验测量的甲基化百分比之间表现出强烈的相关性(皮尔逊相关系数 (Pearson correlation) = 0.71)。Deep5mC 在预测整个染色体的甲基化状态方面表现出色。

3.3 序列长度对甲基化预测的影响
为了评估长程上下文信息的重要性,作者测试了不同输入序列长度(从11 bp到1281 bp)对模型性能的影响。
结果显示,更长的序列通常能带来更好的性能。例如,使用161 bp序列训练的模型,其 AUC (0.74) 远高于使用11 bp序列的模型 (0.63)。最佳性能在序列长度为321 bp时达到。
与现有工作普遍使用的41 bp短序列相比,更长的序列使得 Deep5mC 能够捕捉到更多的长程上下文信息,从而提高预测的准确性。这支持了 5mC 与长程上下文之间存在强关联的结论。

3.4 5mC 的长程序列依赖性
作者通过可视化 Deep5mC 的 Transformer 模型中训练好的位置注意力 (positional attention) 权重,来探究 5mC 对长程序列上下文的依赖性。
热图清晰地显示,模型不仅关注中心位置周围的碱基,还捕捉到了距离中心位置很远的碱基的信息。这直观地证明了 5mC 的状态确实依赖于长程的序列上下文。

3.5 生成的向量与 5mC 甲基化的关联
作者使用 UMAP 对 Transformer 层输出的表示向量和第一个全连接层输出的向量进行了二维可视化。Transformer 层已经能够有效地根据基因组序列,为甲基化和非甲基化位点生成有意义的表示。经过第一个全连接层处理后,甲基化和非甲基化位点形成了两个清晰的簇,尽管仍有少量位点被错分。
由于 Deep5mC 仅使用基因组序列作为输入,这种清晰的分离表明,5mC 甲基化在很大程度上受到基因组序列上下文的影响,而非随机发生。

3.6 Transformer 大小对甲基化预测的影响
作者比较了不同大小的 Transformer 模型(6层/8头 vs. 16层/16头)对性能的影响。较大的 Transformer 模型(16层/16头)取得了显著更优的性能(AUC 为0.93),而较小的模型 AUC 仅为0.86。
更大、更复杂的 Transformer 模型能够捕捉到隐藏在基因组序列中更复杂的模式,从而提高 5mC 的预测准确率。
