Modeling Protein-Ligand Binding Affinity Using Graph Neural Networks: Integrating Molecular Interactions and Physics-Based Properties
タンパク・リガンドを別グラフ化し cross-graph エッジで相互作用を陽に学習する親和性 GNN | 修士論文 (2025, Chalmers/Gothenburg × AstraZeneca)
🎯 物理ベース(FEP/MM-PBSA)の高コストと経験的スコア関数の弱い汎化の中間を埋め、cross-graph message passing で分子間相互作用を陽に学習して pK を回帰する。
① 背景と課題

タンパク-リガンド親和性予測は物理ベース(FEP/MM-PBSA/MM-GBSA)・経験的・知識ベースの3系統に分かれる。物理ベースは厳密だが高コスト、経験的は高速だが汎化が弱く、知識ベースは参照状態の曖昧さとバイアスを抱える。本研究は原子グラフから階層特徴を end-to-end 学習し、cross-graph message passing で一方の分子が他方に与える影響を明示的にモデル化する。

物理ベース(FEP/MM-PBSA/MM-GBSA)は熱力学的に厳密だがハイスループットには高コストすぎる
経験的スコア関数は高速だが汎化に乏しく非典型的相互作用に弱い
手作り特徴量(RF-Score/ID-Score)は前処理バイアスを生み VS 性能を損なう

→ タンパク・リガンドを別グラフ化し原子間に距離閾値で cross-graph エッジを張り、相互作用部位を双方向メッセージで学習

② 手法: Dual-graph cross-graph GNN
Dual-graph cross-graph GNN タンパク/リガンドを別原子グラフ化 タンパクは backbone/heavy 原子に限定 cross-graph message passing 距離閾値内ペアで双方向伝播 intra-graph 伝播 Linear/GAT/STA 切替 + attention pooling 特徴融合(global=指紋) → MLP → pK 回帰
cross-graph edge = 原子間距離 < cutoff
GAT + CyclicLR(Triangular2 2e-5↔2e-4)・batch 128・chunked dynamic dataloader

CrossDocked2020 約2,260万ポーズを均衡 downsampling(~70万)。OOM 回避に round-robin チャンク。公開実装なし。

③ 本研究で示したこと(要点)
  • タンパク・リガンドを別グラフ化し cross-graph エッジで分子間相互作用を陽にモデル化
  • Linear/STA/GAT の message-passing を切替可能にし計算効率と表現力を調整
  • GAT + CyclicLR で test R≈0.79・τ≈0.58(VS で Top10% TP 被覆 23%)
  • 22.6M ポーズを扱う chunked dynamic dataloader(round-robin)で OOM を回避
④ 主な結果 (a) 予測精度の向上
0.72 10%/ep 0.77 25%/ep 0.79 +CLR(GAT) Test Pearson R

データ量とスケジューラ改善で体系的向上。GAT+CyclicLR が最良(τ も 0.51→0.58)。

④ 主な結果 (b) 最良構成
0.79 Pearson R 0.58 Kendall τ 最良構成 (GAT+CLR)

ポーズの正誤識別に有効な順位相関(経験的スコア関数より高い)。

④ 主な結果 (c) VS カバレッジ
2.3 0.7 Top1% 23.1 5.9 Top10% TP被覆 FP被覆 VS カバレッジ (Exp>4, %)

Top10% で TP 被覆 23%・FP 5.94%。閾値6では TP 36.66%/FP 15.36% とトレードオフ顕在化。

④ 主な結果 (d) 比較・誤差
GAT > Linear > STA
message-passing 比較(STA は一貫して劣後し以降除外)
高親和性を過小予測
強い π-stacking・広域 vdW 領域(多体分散力/協同効果を捉えきれず)
22.6M → 70万に均衡化
active:inactive = 3.66:96.34 の不均衡を downsampling
⑤ テイクホームメッセージ
🔗 cross-graph
タンパク・リガンド原子間にエッジを張り相互作用を陽に学習。
🎛️ 切替可能
intra-graph を Linear/GAT/STA で差し替え(GAT が最良)。
📈 高順位相関
GAT+CyclicLR で R≈0.79/τ≈0.58、ポーズ正誤識別に有効。
⚙️ 大規模対応
chunked dynamic dataloader(round-robin)で 22.6M ポーズの OOM を回避。
構成比較 (test)
構成Pearson RKendall τ
Linear (25%)0.770.56
STA劣後
GAT (25%)0.770.56
GAT + CyclicLR0.790.58
本研究のインパクト
  • lib/docking: UniDockRunner 生成ポーズの rescoring 関数に cross-graph GNN を接続し、ProLIFCalculator の相互作用フィンガープリントを global feature に注入。経験的スコア関数より高い τ≈0.58 でポーズ正誤を判別
  • lib/fep: 論文の Top-N 二段階スクリーニング(緩い閾値で広く拾い上位のみ精緻化)を MMGBSAEngine/FEP の前段フィルタに実装し、高コスト物理計算の対象を絞ってスループット改善
  • lib/molgen: MolgenYaml scorer に GNN 親和性予測を組み込みドッキング不要で高速にポケット適合度を評価。chunked dynamic dataloader は大規模 GNN 学習の OOM 回避ユーティリティとして転用