jamie0315/PoultryCaduceus
1
๐ PoultryCaduceus
A Bidirectional DNA Language Model for Chicken Genome
PoultryCaduceus is the first DNA foundation model specifically pre-trained on the chicken (Gallus gallus) genome, based on the Caduceus architecture.
Model Description
Usage
from transformers import AutoModelForMaskedLM
# Load model
model = AutoModelForMaskedLM.from_pretrained(
"jamie0315/PoultryCaduceus",
subfolder="checkpoint-10000",
trust_remote_code=True
)Get Sequence Embeddings
import torch
# DNA vocabulary
DNA_VOCAB = {'A': 7, 'C': 8, 'G': 9, 'T': 10, 'N': 5, '[MASK]': 4}
# Tokenize sequence
sequence = "ATGCGATCGATCGATCG"
input_ids = torch.tensor([[DNA_VOCAB.get(c, 5) for c in sequence]])
# Get embeddings
model.eval()
with torch.no_grad():
outputs = model(input_ids, output_hidden_states=True)
embeddings = outputs.hidden_states[-1] # (batch, seq_len, 256)Training Data
Pre-training data is available in chicken_pretrain_data_GRCg6a/:
train_65k.h5- Training set (~58,000 sequences)val_65k.h5- Validation set (~1,200 sequences)
Repository Structure
PoultryCaduceus/
โโโ checkpoint-10000/ # Model weights
โ โโโ config.json
โ โโโ model.safetensors
โโโ chicken_pretrain_data_GRCg6a/ # Pre-training data
โโโ train_65k.h5
โโโ val_65k.h5Links
- ๐ฆ GitHub: chengzhimin/PoultryCaduceus
License
MIT License
