GraphBindUwU / README.md
ManuelLabra's picture
Update README.md
058c97e verified
|
Raw
History Blame Contribute Delete
3.05 kB
---
license: mit
pipeline_tag: graph-ml
tags:
- chemistry
- biology
---
# ProteinBindingGNN (44M Parameters)
**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.
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.
## Usage
You can find everything related to this model at [GraphBind](https://github.com/Labrapuerta/GraphBind)
## 🧬 Model Architecture
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.
* **Parameters:** ~44.1 Million
* **Local Geometry:** 3 EGNN Layers (prevents message-passing over-smoothing, strictly capturing the 3-hop micro-environment).
* **Global Reasoning:** 8 Evoformer Blocks with Coordinate-Aware Edge Updates.
* **Recycling:** 5 iterations (the representations and coordinates are iteratively refined).
### Full Configuration
```python
CONFIG = {
"node_input_dim": 1305, # Designed for pre-trained ESM-2 embeddings
"edge_input_dim": 4, # e.g., distances, bond types, angles
"hidden_dim": 512, # Preserves rich biochemical context
"num_egnn_layers": 3, # Local 3D message passing
"num_evoformer_blocks": 8, # Global pairwise attention
"num_heads": 16, # Attention heads (d_k = 32)
"dropout": 0.3, # High regularization for generalization
"update_coords": True, # Dynamic coordinate refinement
"num_recycles": 5, # AlphaFold 2 style recycling loop
"alpha": 0.3, # Edge update mixing coefficient
}
```
## Performance & Training Details
This model was trained on a highly curated dataset of 6,700 protein complexes.
You can see the full run and details at [Weights and Biases](https://wandb.ai/a01700257/Graph_binding/workspace?nw=nwusera01700257)
### Class Imbalance Handling
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:
- Validation AUROC: 0.8898
- Validation F1 (Standard Threshold): 0.3875 (Note: F1 is highly sensitive to the massive negative class; threshold tuning is recommended for downstream applications).
- Validation Recall: ~0.50 - 0.57
## Future work
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.