4mCPred-MTL: 通过基于多头注意力机制的多任务深度学习准确识别多物种的DNA 4mC位点.
0. TL; DR
4mCPred-MTL 利用多任务学习 (multi-task learning) 和 Transformer 对多个物种中的 4mC 位点进行预测。
在三个物种的基准数据集上,4mCPred-MTL 的性能显著优于现有的单任务预测器(包括 Deep4mcPred),其 ACC 和 MCC 等关键指标均取得了领先。
1. 背景介绍
表观遗传学指的是在 DNA 序列不发生改变的情况下,基因功能发生的可逆、可遗传的变化。DNA 甲基化是其中最广泛的修饰之一,它通过改变染色质结构、DNA 构象等方式来控制基因表达。
DNA 4mC(N4-甲基胞嘧啶)修饰是一种有效的 DNA 修饰,能够保护自身 DNA 免受限制性内切酶的降解。然而,目前我们对 4mC 修饰的了解相对较少。为了深入研究其调控机制和生物学影响,在全基因组范围内识别 4mC 位点的分布至关重要。
尽管通过湿实验技术(如 SMRT 测序)可以有效识别 4mC 位点,但这些方法耗时且费力。因此,开发高效、准确的计算模型来预测 4mC 位点变得十分必要。
近年来,已有一系列计算方法被提出。早期的预测器(如 iDNA4mC, 4mCPred)主要基于传统的机器学习算法(如 SVM),通过手工设计的特征来进行预测。近期的研究则开始转向深度学习,例如 Deep4mC 和 Deep4mcPred,它们能够自动从序列中学习特征。
然而,尽管这些方法取得了不少进展,但其性能仍不尽如人意。更重要的是,大多数现有的预测器都是为特定物种设计的。虽然它们也提供了跨物种模型和验证测试,但其性能通常远不如原始的物种特异性模型。
为了解决这个问题,作者提出了一种通用的 4mC 预测器,名为 4mCPred-MTL。该方法创新地采用了多任务学习 (multi-task learning) 框架,并结合了强大的 Transformer 模型,旨在同时对多个物种中的 4mC 位点进行准确预测。
2. 4mCPred-MTL方法
4mCPred-MTL 的网络架构如图所示,它主要由三个模块组成:序列处理模块、共享模块和任务特定的输出模块。

2.1 数据集
作者使用了在之前工作中构建的大规模数据集,该数据集包含三个物种:拟南芥 (A. thaliana)、秀丽隐杆线虫 (C. elegans) 和黑腹果蝇 (D. melanogaster)。
为了进行更严格的评估,作者将每个物种的数据集按8:2的比例随机划分为训练集和独立的测试集。训练集和测试集内部都保持了正负样本的平衡。
2.2 4mCPred-MTL 架构
2.2.1 序列处理模块
该模块负责将原始的 DNA 序列转换为神经网络可以处理的数值矩阵。
首先,将长度为 $L$ 的 DNA 序列通过一个大小为 $n$(在本文中 $n=2$)的滑动窗口,分割成重叠的 n-gram 核苷酸序列,即“单词”。
然后,对这些“单词”进行独热编码。每个 2-gram 单词被表示为一个16维的二进制向量(因为有 $4^2 = 16$ 种可能性)。
由于 Transformer 模型本身不包含循环或卷积,无法捕捉序列的位置信息。因此,在词嵌入的基础上,作者加入了位置编码 (Position Encoding)。位置编码使用正弦和余弦函数来为序列中的每个位置生成一个独特的编码向量:
\[\begin{align*} PE(pos, 2i) &= \sin(pos / 10000^{2i/d_{model}}) \\ PE(pos, 2i+1) &= \cos(pos / 10000^{2i/d_{model}}) \end{align*}\]其中,$pos$ 是令牌的位置,$i$ 是编码的维度。
2.2.2 共享模块 (Sharing Module)
所有物种的数据都将通过这个共享的模块,从而学习到跨物种的通用特征。该模块主要由一个 Transformer 编码器和一个最大池化层组成。
Transformer 的核心是自注意力机制。它通过计算输入序列中每个“单词”与其他所有“单词”之间的相关性(或“注意力”),来动态地更新每个“单词”的表示。其计算公式为:
\[SA(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V\]其中,$Q, K, V$ 分别是由输入向量乘以不同权重矩阵得到的查询 (Query)、键 (Key) 和值 (Value) 矩阵。多头注意力是自注意力的扩展,它并行地运行多个自注意力头,每个头在不同的表示子空间中学习特征。这使得模型能够同时关注来自不同位置的不同信息。
Transformer 编码器的输出是一个特征序列。作者使用一个最大池化层来从这个序列中捕捉最重要的特征,并将其聚合成一个单一的特征向量 $y$,用于代表整个 DNA 序列。
\[y = \max_{i=1}^{n} h_i\]2.2.3 任务特定的输出模块 (Task-Specific Output Module)
该模块包含三个并行的、任务特定的全连接层网络,分别对应三个物种(A. thaliana, C. elegans, D. melanogaster)的预测任务。
从共享模块输出的特征向量 $y$,会根据其所属的物种,被送入相应的全连接层网络中,进行最终的二元分类预测。模型的全局损失函数是所有任务损失的线性组合:
\[l_{all} = \sum_{k=1}^{K} \alpha_k l_k\]其中,$l_k$ 是第 $k$ 个任务的二元交叉熵损失,$\alpha_k$ 是该任务的权重。
3. 实验分析
作者通过一系列详尽的实验,评估了 4mCPred-MTL 的性能,并与现有的单任务方法进行了比较。
3.1 与其他单任务先进方法的性能比较
作者在独立的测试集上,将 4mCPred-MTL 与三种先进的单任务预测器(4mcPred-IFL, 4mcPred_SVM, Deep4mcPred)进行了比较。
- A. thaliana: 与次优的 Deep4mcPred 相比,4mCPred-MTL 在 SN, ACC, MCC 指标上分别取得了10.33%, 4.09% 和 10.14%的相对提升。
- C. elegans: 4mCPred-MTL 在 SN, ACC, MCC 指标上比次优的 Deep4mCPred 分别高出6.06%, 4.24% 和 12.73%。
- D. melanogaster: 4mCPred-MTL 同样在 SN, ACC, MCC 上表现最佳。

尽管在 SP 指标上略有不足,但 4mCPred-MTL 在 SN, ACC, MCC 等更全面的指标上显著优于所有单任务的竞争方法。作者认为,这得益于多任务学习框架能够利用多个相关任务之间的共享信息,从而为每个任务学习到更准确的分类器。
3.2 多任务学习的效果
为了直接验证多任务学习的有效性,作者比较了使用和不使用多任务学习(即对每个物种单独训练一个单任务模型)的两种策略。
在 A. thaliana 和 D. melanogaster 两个物种上,使用多任务学习的模型在 SN, ACC, MCC 等指标上均优于单任务模型。例如,在 D. melanogaster 上,MCC 从69.8%提升到了72.2%。

ROC 曲线和 PR 曲线也直观地展示了多任务学习模型的优势。在 A. thaliana 和 D. melanogaster 上,多任务学习模型的 auROC 和 auPRC 都更高。尽管在C. elegans物种上,多任务模型的性能略有下降,但作者指出,多任务学习的整体优势在于,即使在一个任务上性能不佳,其他任务的性能也得到了提升。

采用多任务学习技术能够通过在相关任务之间共享信息来增强特征表示能力和预测性能。
3.3 多任务学习方法提取的特征分析
为了证明 4mCPred-MTL 学习到的特征比传统的手工特征更具判别力,作者将其与五种传统特征描述符(ENAC, DNC, CKSNAP, EIIP, PseEIIP)进行了比较。作者使用这六种特征分别在三种基础分类器(RF, SVM, LightGBM)上进行了10折交叉验证。
在所有三个物种和所有三种分类器上,使用 4mCPred-MTL 提取的特征(Proposed)在所有四个指标(SN, SP, ACC, MCC)上都取得了最佳性能。

ROC 曲线 和 PR 曲线: 这两张图也一致地显示,Proposed 特征的曲线始终位于其他所有特征的上方,表明其具有最优的分类性能。

4mCPred-MTL 通过其 Transformer 网络和多任务学习框架,能够学习到比传统手工特征更有效、更具判别力的特征表示,从而显著优于依赖先验知识的传统方法。