加载中…
加载中…
GENATATOR-ModernGENA is a DNA language model fine-tuned for transcript boundary detection directly from genomic DNA sequences.
The model performs token-level multilabel classification to identify strand-aware transcript boundaries, enabling reconstruction of transcript intervals for both:
This model focuses on transcript position discovery, namely:
Model name on Hugging Face:
genatator-moderngena-base-multispecies-edge-model
Architecture properties:
The model predicts four classes.
The correct order of output classes is:
["TSS+", "TSS-", "PolyA+", "PolyA-"]
Where:
TSS+ — transcription start site on the forward strandTSS- — transcription start site on the reverse strandPolyA+ — transcript termination site on the forward strandPolyA- — transcript termination site on the reverse strandThis model was fine-tuned on full genomic sequences, including intergenic regions.
Training data includes annotations for:
Dataset characteristics:
The model is therefore trained to distinguish transcript boundaries from genomic background sequence across full chromosomes.
This model is the edge model in the ModernGENA transcript discovery pipeline.
It predicts boundary probability tracks for:
The full pipeline consists of:
Edge model predicts strand-specific transcript boundary tracks
Region model predicts strand-specific intragenic coverage
Post-processing
This design allows recovery of full transcript intervals and multiple transcript boundary isoforms for the same gene.
The model outputs boundary logits, which are intended to be converted into probability tracks and further processed into transcript intervals.
from transformers import AutoTokenizer, AutoModelForTokenClassification
repo_id = "AIRI-Institute/genatator-moderngena-base-multispecies-edge-model"
tokenizer = AutoTokenizer.from_pretrained(
repo_id,
trust_remote_code=True,
)
model = AutoModelForTokenClassification.from_pretrained(
repo_id,
trust_remote_code=True,
)
model.eval()
import torch
from transformers import AutoTokenizer, AutoModelForTokenClassification
repo_id = "AIRI-Institute/genatator-moderngena-base-multispecies-edge-model"
tokenizer = AutoTokenizer.from_pretrained(repo_id, trust_remote_code=True)
model = AutoModelForTokenClassification.from_pretrained(repo_id, trust_remote_code=True)
sequence = "ACGTACGTACGTACGTACGTACGTACGTACGT"
enc = tokenizer(sequence, return_tensors="pt")
with torch.no_grad():
outputs = model(**enc)
logits = outputs.logits
print("Input shape:", enc["input_ids"].shape)
print("Logits shape:", logits.shape)
Example output:
Input shape: torch.Size([1, sequence_length])
Logits shape: torch.Size([1, sequence_length, 4])
Each token receives 4 logits corresponding to the four boundary classes.
To obtain transcript intervals from this model:
GENATATOR-ModernGENA edge model is a ModernBERT-based DNA language model for strand-aware transcript boundary detection.
It is intended as the first stage of a transcript discovery pipeline and supports: