The official code for the paper "Benchmarking Antimicrobial Peptide Recognition with Sequence and Structure Representation"
Antimicrobial peptides (AMPs) serve as potent therapeutic agents against drug-resistant (DR) microbes; however, their clinical application is constrained by limitations in activity. Recently, machine learning has shown significant promise in recognizing high-activity AMPs. Nevertheless, these activity datasets about AMPs are aggregated from thousands of publications, which employ varying wet-lab experimental setups and focus on only one or a few types of DR bacteria. This heterogeneity restricts the advancement of AI methods for fair evaluation of AMP recognition. Additionally, while AlphaFold has revolutionized drug discovery through accurate protein structure predictions, the integration of these predicted structures into AMP discovery remains unexplored.
To address these challenges, we present two key contributions:
(a) DRAMPAtlas 1.0: We introduce DRAMPAtlas 1.0, comprising a training set sourced from public databases and a testing set derived from our wet-lab experiments. Each AMP sequence in the atlas is annotated with its 3D structure, activity data against six types of DR bacteria, and toxicity profiles.
(b) Comprehensive AMP recognition Experiments: We perform extensive experiments on AMP recognition by modeling the 3D structures as voxels or graphs, either in combination with sequence information or using structure or sequence data exclusively. Our experiments reveal several insightful findings that enhance our understanding of AMP activity prediction.
We anticipate that our benchmark and findings will aid the research community in designing more effective algorithms for discovering high-activity AMPs.
The full atlas is on the Harvard Dataverse. The wet-lab test set is not in that deposit yet and will be released after publication.
This repository includes only a small sample, so the loaders and released checkpoints can be inspected without the full atlas:
metadata/data_0920_i.csv: 8 training peptidesmetadata/data_qlx.csv: 4 wet-lab test peptidesmetadata/data_saap.csv: 4 SAAP peptidesmetadata/data_simi.csv: 4 sequences from the similarity-exclusion listmetadata/features.txt: amino-acid features used by the graph modelspdb/pdb_af/andpdb/pdb_dbassp/: the AlphaFold and HelixFold structure for each sample peptide
These rows are examples. They are not the training split used in the paper.
- Put the downloaded
dataverse_files.zipinAMPRecognitionBenchmark/. - Run
bash dataproc.sh. - This replaces the sample
metadata/andpdb/folders with the full tables and structures:
metadata/
├── data_simi.csv
├── data_0920_i.csv
└── ...
pdb/
├── pdb_af/ #AlphaFold predictions
│ └── (pdb files ...)
└── pdb_dbassp/ #HelixFold predictions
└── (pdb files ...)Graph models also read metadata/features.txt from the unit directory (t3.2.2, t5g, t7g, graphabl). That file is already included.
git clone https://github.com/EricwanAR/AMPRecognitionBenchmark.git
cd AMPRecognitionBenchmarkcdto any unit folder, for examplecd t3.1orcd voxabl.python main.py [args]. Arguments are inmain.py.runthro.shlists the settings used in the paper.- Checkpoints are written to
run/.model_k.pthis the epoch with the best validation score for that fold. Theqlxblock inresult.txtis selected separately and is not the score of that checkpoint. - Released checkpoints are already in each unit's
run/directory, together withconfig.jsonandresult.txt. - For inference, use
infer.pywith the same arguments, for examplepython infer.py [training args]. The sample metadata and PDB files are enough to check that a checkpoint loads. Reported numbers use the full atlas.
