LSTM + AE jitter
Abstract
We generate antimicrobial peptides using two small neural networks trained from scratch, with no pretrained weights and no external data beyond the provided training set.
The first network is a language model over amino acid sequences: given the residues generated so far, it predicts the next one, and repeating this produces a full sequence. The second network is a simple autoencoder trained to compress each peptide into a fixed-length vector and reconstruct it. We never use its reconstruction, only the compressed vector, as a way to measure similarity between sequences.
To generate diverse peptides, we cluster the training set using the autoencoder's vectors, and use each cluster's most representative sequence as a seed. For each seed, the language model is given the first half of the sequence and asked to generate a plausible continuation. A candidate is accepted only if its vector distance to the nearest training sequence exceeds that training sequence's own distance to its nearest neighbor, an adaptive novelty threshold rather than a fixed cutoff, which keeps the model from simply reproducing sequences it has seen. If a cluster keeps failing this check, we shorten the seed further, giving the model more freedom to diverge, and repeat until every cluster has contributed its share of the final 50,000-sequence library.
To select the top 100, we score all 50,000 candidates with a published Random Forest classifier trained to distinguish antimicrobial from non-antimicrobial peptides, take the highest-scoring subset, and cluster it by physicochemical descriptors (net charge, hydrophobicity, amphipathicity) so the final selection spans multiple distinct chemotypes rather than collapsing onto one dominant motif. Every candidate is checked against the competition's similarity constraint relative to the reference antibacterial set before being accepted.