Zing 论坛

正文

DPVT:基于树遍历神经网络的系统发育推断新方法

一个将深度学习与系统发育学结合的PyTorch项目,通过神经网络遍历树结构来预测最大简约树中的边,为生物信息学中的系统发育推断提供了创新思路。

深度学习系统发育学生物信息学PyTorch神经网络进化树最大简约法计算生物学图神经网络Transformer
发布时间 2026/05/19 11:43最近活动 2026/05/19 11:53预计阅读 2 分钟
DPVT:基于树遍历神经网络的系统发育推断新方法
1

章节 01

【导读】DPVT:深度学习赋能系统发育推断的创新方法

DPVT(Deep Phylogenetics Via Traversals)是一个结合深度学习与系统发育学的PyTorch项目,通过TraverseNN神经网络遍历树结构预测最大简约树中的边,旨在解决传统最大简约法处理大规模数据时的计算复杂度问题,为生物信息学中的系统发育推断提供新路径。

2

章节 02

研究背景与问题定义

系统发育推断的核心任务是通过DNA序列重建物种进化树,最大简约法假设进化遵循最简原则,但搜索空间随物种数量指数增长(n个物种对应(2n-5)!!个无根二叉树),传统算法遍历候选树成本高昂。DPVT提出核心问题:能否训练神经网络判断哪些边可能出现在最大简约树中,从而缩小搜索空间?

3

章节 03

技术架构:TraverseNN模型设计

DPVT实现TraverseNN模块,利用树结构层次特性:

  1. 数据表示:支持两种数据集格式——TraversalDataset(将树遍历序列化为张量,支持GPU加速,含上下遍历方向,节点特征通过RNN学习)和TreeDataset(用ete3库保留树拓扑与属性);
  2. 前向传播流程
    • 遍历学习:信息从叶节点到根再返回(类似消息传递);
    • 位点聚合:用Transformer编码器聚合跨位点信息,取平均得节点最终特征;
    • 分类输出:线性层+Sigmoid输出边在最大简约树中的概率(接近0为存在,1为不存在)。
4

章节 04

关键机制与训练策略

  • 突变编码:DNA碱基突变用四维向量编码(如A→T为[-1,1,0,0]),保留方向性;
  • 对称性处理:子节点顺序不影响父节点特征,确保交换子节点输出一致;
  • 训练策略:训练/验证划分0.8/0.2,正负样本(MP边vs非MP边)比例平衡,保障分类任务效果。
5

章节 05

技术实现细节

  • 环境配置:用conda/mamba管理依赖,通过environment.yml创建环境,执行mamba env create -f environment.ymlpip install -e .
  • 数据格式:训练数据为pickle格式,字典键是树对象,值为标签列表(0=MP边,1=非MP边,按先序遍历排序);
  • GPU加速:TraversalDataset基于torch.tensor,支持GPU高效运行,适用于大规模数据集。
6

章节 06

应用价值与未来展望

DPVT的潜在应用包括:

  1. 加速系统发育推断:优先搜索高概率边,减少计算时间;
  2. 指导启发式搜索:为RAxML/IQ-TREE等传统方法提供启发式指导;
  3. 理解进化模式:神经网络特征可能揭示隐含进化规律;
  4. 扩展方向:从最大简约法扩展到最大似然法或贝叶斯推断等复杂模型。
7

章节 07

总结

DPVT展示了深度学习与传统生物信息学融合的创新方向,通过树遍历机制和突变编码,TraverseNN能预测系统发育树中的重要边,兼具计算效率优势与生物学分析价值,为生物信息学、计算生物学或图神经网络研究者提供参考案例。