Views
No views yet
BacteriaTIS-DNABERT-K6-89M, is a DNA sequence classifier based on DNABERT trained for Translation Initiation Site (TIS) classification in bacterial genomes. It operates on 6-mer tokenized sequences derived from a 60 bp window (30 bp upstream + 30 bp downstream) around the TIS. The model was fine-tuned using 89M trainable parameters.transformers and torch installed:pip install torch transformers1import torch
2from transformers import AutoModelForSequenceClassification, AutoTokenizer
3
4# Load Model
5model_checkpoint = "Genereux-akotenou/BacteriaTIS-DNABERT-K6-89M"
6model = AutoModelForSequenceClassification.from_pretrained(model_checkpoint)
7tokenizer = AutoTokenizer.from_pretrained(model_checkpoint)1def generate_kmer(sequence: str, k: int, overlap: int = 1):
2 """Generate k-mer encoding from DNA sequence."""
3 return " ".join([sequence[j:j+k] for j in range(0, len(sequence) - k + 1, overlap)])
4
5# Example TIS-centered sequence (60 bp window)
6sequence = "AGAACCAGCCGGAGACCTCCTGCTCGTACATGAAAGGCTCGAGCAGCCGGGCGAGGGCGG"
7seq_kmer = generate_kmer(sequence, k=6)1# Tokenize input
2inputs = tokenizer(
3 seq_kmer,
4 return_tensors="pt",
5 max_length=tokenizer.model_max_length,
6 padding="max_length",
7 truncation=True
8)
9
10# Run inference
11with torch.no_grad():
12 outputs = model(**inputs)
13 logits = outputs.logits
14 predicted_class = torch.argmax(logits, dim=-1).item()