DTI-MoE 是我们大创项目的开源实现,围绕 DTI(Drug-Target Interaction)任务构建可复现、可演示、可扩展的工程化方案。
融合三类核心模态:
联合优化两个任务:
| 模块 | 能力 | 说明 |
|---|---|---|
| Molecular Encoder | SMILES -> 图表征 | 基于 GNN 的分子表示学习 |
| Protein Encoder | PDB -> 残基图表征 | 引入蛋白 3D 拓扑信息 |
| Sequence Branch | ESM2 序列表征融合 | 与 3D 表征进行多模态融合 |
| DTI-MoE Core | 稀疏专家路由 | 增强跨样本表达能力 |
| Multi-task Head | 回归 + 分类联合学习 | 同时输出亲和力与相互作用概率 |
| Evaluation Suite | 指标与可视化 | 散点图、ROC/PR、路由分布、t-SNE |
| Streamlit App | 交互式预测 | 输入 SMILES + PDB + Protein ID 即可推理 |
flowchart LR
A[SMILES] --> B[Drug Graph Encoder]
C[PDB Structure] --> D[Protein 3D Encoder]
E[ESM2 Embedding] --> F[Sequence Feature]
D --> G[Protein Fusion]
F --> G
B --> H[DTI-MoE Backbone]
G --> H
H --> I[Affinity Regression Head]
H --> J[Interaction Classification Head]
pip install -r requirements.txt
python run_moe.py --mode quick_test
streamlit run app.py
# Train
python run_moe.py --mode train --dataset KIBA
python run_moe.py --mode train --dataset DAVIS
# Test
python run_moe.py --mode test --dataset KIBA --checkpoint <checkpoint_path>
python run_moe.py --mode test --dataset DAVIS --checkpoint <checkpoint_path>
# Visualization
python eval_visualize.py
| Dataset | RMSE | CI | AUC | AUPR |
|---|---|---|---|---|
| KIBA | 0.4117 | 0.8866 | 0.9341 | 0.8332 |
| DAVIS | 0.4775 | 0.8830 | 0.9329 | 0.8898 |
| KIBA Training | Joint Training |
|---|---|
![]() | ![]() |
| Expert Routing | Feature t-SNE |
|---|---|
![]() | ![]() |
MIT License. See LICENSE.
DTI-MoE 是我们大创项目的开源实现,围绕 DTI(Drug-Target Interaction)任务构建可复现、可演示、可扩展的工程化方案。
融合三类核心模态:
联合优化两个任务:
| 模块 | 能力 | 说明 |
|---|---|---|
| Molecular Encoder | SMILES -> 图表征 | 基于 GNN 的分子表示学习 |
| Protein Encoder | PDB -> 残基图表征 | 引入蛋白 3D 拓扑信息 |
| Sequence Branch | ESM2 序列表征融合 | 与 3D 表征进行多模态融合 |
| DTI-MoE Core | 稀疏专家路由 | 增强跨样本表达能力 |
| Multi-task Head | 回归 + 分类联合学习 | 同时输出亲和力与相互作用概率 |
| Evaluation Suite | 指标与可视化 | 散点图、ROC/PR、路由分布、t-SNE |
| Streamlit App | 交互式预测 | 输入 SMILES + PDB + Protein ID 即可推理 |
flowchart LR
A[SMILES] --> B[Drug Graph Encoder]
C[PDB Structure] --> D[Protein 3D Encoder]
E[ESM2 Embedding] --> F[Sequence Feature]
D --> G[Protein Fusion]
F --> G
B --> H[DTI-MoE Backbone]
G --> H
H --> I[Affinity Regression Head]
H --> J[Interaction Classification Head]
pip install -r requirements.txt
python run_moe.py --mode quick_test
streamlit run app.py
# Train
python run_moe.py --mode train --dataset KIBA
python run_moe.py --mode train --dataset DAVIS
# Test
python run_moe.py --mode test --dataset KIBA --checkpoint <checkpoint_path>
python run_moe.py --mode test --dataset DAVIS --checkpoint <checkpoint_path>
# Visualization
python eval_visualize.py
| Dataset | RMSE | CI | AUC | AUPR |
|---|---|---|---|---|
| KIBA | 0.4117 | 0.8866 | 0.9341 | 0.8332 |
| DAVIS | 0.4775 | 0.8830 | 0.9329 | 0.8898 |
| KIBA Training | Joint Training |
|---|---|
![]() | ![]() |
| Expert Routing | Feature t-SNE |
|---|---|
![]() | ![]() |
MIT License. See LICENSE.