DOI: 10.5281/zenodo.18234017
title: AMR-Fold

description: Overview

This record contains the AMR-Fold protein sequence dataset, a curated collection of antibiotic resistance genes (ARGs) and non-ARG bacterial proteins designed for training and benchmarking machine-learning models for antibiotic resistance prediction. The dataset underpins the AMR-Fold architecture, which combines protein language model (PLM) embeddings and inferred structural tokens (3Di + confidence) with a Transformer encoder and attention regularisation.

In total, the dataset comprises 54,044 unique protein sequences with per-sequence labels for:





Binary ARG vs non-ARG (bin ∈ {0, 1})




Antibiotic class / mechanism, including multiple ARG classes (e.g. β-lactam, tetracycline, aminoglycoside, etc.) and a dedicated non_ARG class for negatives.



Protein lengths range from 31 to 2,890 amino acids (mean ≈ 351 aa).

Data construction

Positive (ARG) sequences





Positives are derived from the MCT-ARG collection [1] (~27k proteins), which aggregates curated ARG sequences from multiple sources (e.g. Arg-annot, CARD, MEGARes, DeepARG, NCBI RefSeq ARG annotations).




Sequences were unified, deduplicated, and assigned:





An internal identifier Seq_x (e.g. Seq_1 … Seq_27022)




An antibiotic class label (e.g. beta_lactam, tetracycline, etc.). 13 antibiotic classes + others (rare, e.g. tunicamycin, nucleoside, etc ) were considered.




A binary label bin = 1 for ARG.





Negative (non-ARG) sequences





Negatives were sampled from UniProtKB/Swiss-Prot bacterial proteins.




A multi-step filtering pipeline was applied to obtain high-confidence non-ARGs:





Keyword filtering – sequences with annotations containing “resistance” (and similar ARG-related cues) were removed.




Homology-based filtering – remaining sequences were queried against the ARG database using DIAMOND BLASTP [2], and any sequence with significant similarity to known ARGs (e.g. identity and coverage thresholds) was excluded.




Redundancy reduction – CD-HIT [3] clustering at 90 % identity was used to remove redundant negatives.




A subset was selected to yield ~27k non-ARG sequences with bin = 0 and class = non_ARG.





Label construction

The antibiotic class labels were derived from the source metadata. We retained 14 specific ARG classes  and grouped very rare categories into an “others” class, yielding 15 ARG classes in total. Specifycally: 





Kept as-is:aminoglycoside, bacitracin, beta_lactam, chloramphenicol, fosfomycin, glycopeptide, MLS, multidrug, peptide, quinolone, rifamycin, sulfonamide, tetracycline.




Merged “mechanistic subclasses” into parent classes:





carbapenem, cephalosporin → beta_lactam




fluoroquinolone → quinolone




rifampin → rifamycin




phenicol → chloramphenicol




lincosamide → MLS


polimixin → peptide





Rare categories pooled into others:





aminocoumarin, bleomycin, elfamycin, ethambutol, fosmidomycin, fusidic_acid, isoniazid, kasugamycin, mupirocin, nitrofurantoin, nitroimidazole, nucleoside, oxazolidinone, pleuromutilin, puromycin, pyrazinamide, qa_compound, streptothricin, tetracenomycin, thiostrepton, triclosan, trimethoprim, tunicamycin, and any residual “class” or odd labels.


Force any record whose annotation indicates qacH to class others




Final merged dataset

Positives and negatives were combined into a single balanced dataset:









27,022 ARG sequences




27,022 non-ARG sequences




54,044 sequences in total (DB.faa.gz)





All sequences were renamed to a canonical ID scheme (Seq_x), while preserving the original source header in a companion TSV file.

Train/validation/test splits

To avoid train–test leakage via very close homologs, splitting was performed at the cluster level:





The full dataset (DB.faa.gz) was clustered with CD-HIT at 90% sequence identity to define sequence families (clusters).




Cluster labels were defined at the cluster level (ARG vs non-ARG), based on whether the cluster contains ARG-labelled sequences.




Clusters were then assigned to splits using stratified sampling by cluster label, so that each split contains a similar proportion of ARG and non-ARG clusters/sequences.



Clusters were assigned to splits with an 80/10/10 proportion:





Training: DB_train.*




Validation: DB_val.*




Test: DB_test.*



All sequences from a given CD-HIT cluster reside entirely in one split, so no cluster is shared across train/val/test (no leakage across partitions).

As a result, splits are approximately balanced between ARG and non-ARG labels in each partition, while maintaining strict cluster-level separation.

Files and formats

Typical contents of this record include:





FASTA files





DB.faa.gz – full dataset (54,044 proteins) with headers as Seq_x.




DB_train.faa.gz, DB_val.faa.gz, DB_test.faa.gz – split FASTA files.






Annotation tables (TSV)





DB.tsv – master annotation for all sequences with columns:





ids – original protein header (source database + functional annotation)




Ids – canonical ID (Seq_x)




class – antibiotic class label (e.g. beta_lactam, tetracycline, non_ARG, …)




bin – binary label (1 = ARG, 0 = non_ARG)






DB_train.tsv, DB_val.tsv, DB_test.tsv – annotations for each split (same columns as above).




Features 


            Feature matrices are provided in this record at  features.tar.gz and  follow the convention:







{Seq_x}.plm.npy – ProstT5 [4] per-residue embeddings, shape (L, 1024).

{Seq_x}.3di_tokens.npy – per-residue 3Di token indices [5], shape (L,).

{Seq_x}.3di_conf.npy – per-residue confidence scores, shape (L,).




 

Intended use and limitations

This dataset is intended for:

Training and evaluating sequence-based and structure-informed models for antibiotic resistance prediction.

Benchmarking binary ARG vs non-ARG classification and multi-class antibiotic class assignment.

Exploring attention mechanisms and interpretability (e.g. attention-based localisation of resistance determinants).

The sequences are compiled and derived from publicly available resources (e.g. curated ARG databases and UniProtKB/Swiss-Prot). Users should consult and cite the original databases and publications where appropriate, in addition to citing this dataset record.

The dataset is not exhaustive for all possible ARGs or bacterial proteins and should be used as a curated benchmark rather than a complete catalogue.

 

REFERENCES

[1] He, L., Li, H., Qi, R., Zou, Q., & Wang, Y. (2025). MCT-ARG: Identification and classification of antibiotic resistance genes based on a multi-channel Transformer model. Science of the Total Environment, 1006, 180848. https://doi.org/10.1016/j.scitotenv.2025.180848. GitHub: https://github.com/nanbei45/MCT-ARG/tree/master.

[2] Buchfink, B., Xie, C., & Huson, D. H. (2015). Fast and sensitive protein alignment using DIAMOND. Nature Methods, 12(1), 59–60. https://doi.org/10.1038/nmeth.3176. GitHub: https://github.com/bbuchfink/diamond.

[3] Li, W., & Godzik, A. (2006). Cd-hit: a fast program for clustering and comparing large sets of protein or nucleotide sequences. Bioinformatics, 22(13), 1658–1659. CD-HIT package and documentation: http://www.bioinformatics.org/cd-hit/.

[4] Bernhofer, M., Heinzinger, M., Teufel, A. I., Reeb, J., & Rost, B. (2024). Bilingual language model for protein sequence and structure. NAR Genomics and Bioinformatics, 6(4), lqae150. https://doi.org/10.1093/nargab/lqae150. Model page: https://huggingface.co/Rostlab/ProstT5..

[5]  van Kempen, M., Kim, S. S., Tumescheit, C., Mirdita, M., Söding, J., & Steinegger, M. (2023). Fast and accurate protein structure search with Foldseek. Nature Biotechnology, 41, 496–502. https://doi.org/10.1038/s41587-023-01773-0.. GitHub: https://github.com/steineggerlab/foldseek.