Update Readme
Browse files
README.md
CHANGED
|
@@ -1,3 +1,56 @@
|
|
| 1 |
-
---
|
| 2 |
-
license: mit
|
| 3 |
-
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: mit
|
| 3 |
+
pipeline_tag: graph-ml
|
| 4 |
+
tags:
|
| 5 |
+
- chemistry
|
| 6 |
+
- biology
|
| 7 |
+
---
|
| 8 |
+
|
| 9 |
+
# ProteinBindingGNN (44M Parameters)
|
| 10 |
+
|
| 11 |
+
**ProteinBindingGNN** is a 44-million parameter hybrid Graph Neural Network (GNN) and Transformer architecture designed for node-level protein binding site prediction. It processes both the 3D geometric structure of a protein and its biochemical sequence context (via ESM-2 embeddings) to predict the probability of each amino acid residue belonging to a binding pocket.
|
| 12 |
+
|
| 13 |
+
The model combines the local geometric awareness of **Equivariant Graph Neural Networks (EGNNs)** with the global, pairwise reasoning capabilities of **Evoformer blocks** (inspired by AlphaFold 2), executed through a multi-step recycling mechanism.
|
| 14 |
+
|
| 15 |
+
## 🧬 Model Architecture
|
| 16 |
+
|
| 17 |
+
The architecture is explicitly designed to balance rich feature preservation (high hidden dimensionality) with controlled reasoning depth to prevent over-smoothing on 3D protein graphs.
|
| 18 |
+
|
| 19 |
+
* **Parameters:** ~44.1 Million
|
| 20 |
+
* **Local Geometry:** 3 EGNN Layers (prevents message-passing over-smoothing, strictly capturing the 3-hop micro-environment).
|
| 21 |
+
* **Global Reasoning:** 8 Evoformer Blocks with Coordinate-Aware Edge Updates.
|
| 22 |
+
* **Recycling:** 5 iterations (the representations and coordinates are iteratively refined).
|
| 23 |
+
|
| 24 |
+
### Full Configuration
|
| 25 |
+
```python
|
| 26 |
+
CONFIG = {
|
| 27 |
+
"node_input_dim": 1305, # Designed for pre-trained ESM-2 embeddings
|
| 28 |
+
"edge_input_dim": 4, # e.g., distances, bond types, angles
|
| 29 |
+
"hidden_dim": 512, # Preserves rich biochemical context
|
| 30 |
+
"num_egnn_layers": 3, # Local 3D message passing
|
| 31 |
+
"num_evoformer_blocks": 8, # Global pairwise attention
|
| 32 |
+
"num_heads": 16, # Attention heads (d_k = 32)
|
| 33 |
+
"dropout": 0.3, # High regularization for generalization
|
| 34 |
+
"update_coords": True, # Dynamic coordinate refinement
|
| 35 |
+
"num_recycles": 5, # AlphaFold 2 style recycling loop
|
| 36 |
+
"alpha": 0.3, # Edge update mixing coefficient
|
| 37 |
+
}
|
| 38 |
+
```
|
| 39 |
+
|
| 40 |
+
## Performance & Training Details
|
| 41 |
+
This model was trained on a highly curated dataset of 6,700 protein complexes.
|
| 42 |
+
You can see the full run and details at [Weights and Biases](https://wandb.ai/a01700257/Graph_binding/workspace?nw=nwusera01700257)
|
| 43 |
+
|
| 44 |
+
### Class Imbalance Handling
|
| 45 |
+
Protein binding datasets suffer from extreme class imbalance (typically ~5% of residues are true binders, 95% are non-binders). The model is optimized for high ranking capability, achieving:
|
| 46 |
+
|
| 47 |
+
- Validation AUROC: 0.8898
|
| 48 |
+
|
| 49 |
+
- Validation F1 (Standard Threshold): 0.3875 (Note: F1 is highly sensitive to the massive negative class; threshold tuning is recommended for downstream applications).
|
| 50 |
+
|
| 51 |
+
- Validation Recall: ~0.50 - 0.57
|
| 52 |
+
|
| 53 |
+
|
| 54 |
+
|
| 55 |
+
## Future work
|
| 56 |
+
Due to the limitations on gpu's, the model wans't trained enough to show the expected results, in the future with a sponsorship it is planned to keep training and fine tunning.
|