CoolFace
Modelpublic

Flansma/helm-bert

sourceHugging Facemitupdated 2mo agoView on Hugging Face
1likes618downloads
Model Card

HELM-BERT

A peptide language model using HELM (Hierarchical Editing Language for Macromolecules) notation, compatible with Hugging Face Transformers.

![GitHub](https://github.com/clinfo/HELM-BERT)

Model Description

HELM-BERT is built upon the DeBERTa architecture, pre-trained on ~75k peptides from four databases (ChEMBL, CREMP, CycPeptMPDB, Propedia) using Masked Language Modeling (MLM) with a Warmup-Stable-Decay (WSD) learning rate schedule.

  • Disentangled Attention: Decomposes attention into content-content and content-position terms
  • Enhanced Mask Decoder (EMD): Injects absolute position embeddings at the decoder stage
  • Span Masking: Contiguous token masking with geometric distribution
  • nGiE: n-gram Induced Encoding layer (1D convolution, kernel size 3)

<p align="center"><img src="assets/HELM-BERT.png" width="600"></p>

Model Specifications

ParameterValue
Parameters54.8M
Hidden size768
Layers6
Attention heads12
Vocab size78
Max token length512
Pre-training data~75k peptides (ChEMBL, CREMP, CycPeptMPDB, Propedia)
Pre-training objectiveMLM (span masking, p=0.15)
LR scheduleWarmup-Stable-Decay (WSD)

How to Use

python
from transformers import AutoModel, AutoTokenizer

model = AutoModel.from_pretrained("Flansma/helm-bert", trust_remote_code=True)
tokenizer = AutoTokenizer.from_pretrained("Flansma/helm-bert", trust_remote_code=True)

# Cyclosporine A
inputs = tokenizer("PEPTIDE1{[Abu].[Sar].[meL].V.[meL].A.[dA].[meL].[meL].[meV].[Me_Bmt(E)]}$PEPTIDE1,PEPTIDE1,1:R1-11:R2$$$", return_tensors="pt")
outputs = model(**inputs)
embeddings = outputs.last_hidden_state

Training Data

Pre-trained on deduplicated peptide sequences from:

  • ChEMBL: Bioactive molecules database
  • CREMP: Cyclic peptide conformational ensemble database
  • CycPeptMPDB: Cyclic peptide membrane permeability database
  • Propedia: Protein-peptide interaction database

Downstream Performance

Permeability Regression (CycPeptMPDB)

Single-Assay (mixed PAMPA/Caco-2 target):

SplitPearsonRMSEMAE
Random0.6580.8170.4710.300
Scaffold0.5020.7230.4500.324

Per-Assay (separate models for PAMPA and Caco-2):

SplitAssayPearsonRMSEMAE
RandomPAMPA0.8000.8950.3550.253
RandomCaco-20.7470.8660.3880.289
ScaffoldPAMPA0.5290.7390.4120.295
ScaffoldCaco-20.6370.8740.4050.334

Train/test 9:1, val 10% from train. Scaffold split by Murcko scaffolds.

<p align="center"><img src="assets/tsnecycpeptmpdbpermeabilitymixrandom_scaffold.png" width="800"></p>

PPI Classification (Propedia v2)

SplitROC-AUCPR-AUCF1MCCBalanced Acc
Random0.9680.9010.8470.8080.906
aCSM0.8620.6830.5870.5220.722

Train/test 8:2, val 10% from train, 1:4 positive:negative ratio.

  • Random: random split
  • aCSM: clustering-based split on aCSM-ALL complex signatures with protein overlap pruning

<p align="center"><img src="assets/tsnepropediappirandomacsm.png" width="800"></p>

PPI Classification (ChEMBL)

SplitROC-AUCPR-AUCF1MCCBalanced Acc
Random0.9920.9750.9480.9360.969
Family0.7860.4490.2670.2220.570

Val 10% from train.

<p align="center"><img src="assets/tsnechemblppirandomfamily.png" width="800"></p>

Citation

bibtex
@article{lee2026helmbert,
  title={HELM-BERT: Topology-Aware Representations for Chemically Modified Peptides},
  author={Lee, Seungeon and Koyama, Takuto and Maeda, Itsuki and Matsumoto, Shigeyuki and Okuno, Yasushi},
  journal={Journal of Chemical Information and Modeling},
  year={2026},
  doi={10.1021/acs.jcim.6c00451},
  publisher={American Chemical Society},
  url={https://pubs.acs.org/doi/10.1021/acs.jcim.6c00451}
}

License

MIT License