Views
No views yet
| Property | Value |
|---|---|
| Architecture | DeBERTa-v2 masked language model |
| Transformer layers | 4 |
| Attention heads | 4 |
| Hidden size | 256 |
| Intermediate size | 1,024 |
| Vocabulary size | 3,230 |
| Parameters | 4,713,886 |
| Recommended maximum length | 256 tokens including boundary tokens |
| Training objective | Masked language modeling |
| Training domain | Chordonomicon chord sequences |
| License | Apache-2.0 |
ChordBERT + WIR checkpoint.1C G Amin F
2Cmaj7 Amin7 Dmin7 G7
3Bb F Gmin EbC;s, such as Csmin for C-sharp minor;b, such as Bb;min, 7, maj7, min7, dim, dim7, and
aug;<verse_1>, are present in the vocabulary.<unk>. Check token
coverage before embedding a new corpus:1from transformers import AutoTokenizer
2
3model_id = "YOUR_USERNAME/YOUR_MODEL_NAME"
4tokenizer = AutoTokenizer.from_pretrained(model_id)
5
6tokens = "C G Amin F".split()
7unknown = [token for token in tokens if token not in tokenizer.get_vocab()]
8print("Unknown tokens:", unknown)1from transformers import pipeline
2
3model_id = "YOUR_USERNAME/YOUR_MODEL_NAME"
4fill_mask = pipeline("fill-mask", model=model_id, tokenizer=model_id)
5
6predictions = fill_mask("C G <mask> F", top_k=5)
7for prediction in predictions:
8 print(prediction["token_str"], prediction["score"])1import torch
2from transformers import AutoModel, AutoTokenizer
3
4model_id = "YOUR_USERNAME/YOUR_MODEL_NAME"
5tokenizer = AutoTokenizer.from_pretrained(model_id)
6model = AutoModel.from_pretrained(model_id).eval()
7
8progressions = [
9 "C G Amin F",
10 "Dmin7 G7 Cmaj7",
11]
12
13batch = tokenizer(
14 progressions,
15 padding=True,
16 truncation=True,
17 max_length=256,
18 return_tensors="pt",
19)
20
21with torch.inference_mode():
22 hidden = model(**batch).last_hidden_state
23
24pool_mask = batch["attention_mask"].bool()
25for special_id in tokenizer.all_special_ids:
26 pool_mask &= batch["input_ids"] != special_id
27
28weights = pool_mask.unsqueeze(-1).to(hidden.dtype)
29embeddings = (hidden * weights).sum(dim=1) / weights.sum(dim=1).clamp(min=1)
30
31print(embeddings.shape) # torch.Size([2, 256])embeddings = torch.nn.functional.normalize(embeddings, p=2, dim=1)DebertaV2ForMaskedLM. Weights are stored in safetensors format.1torch
2transformers
3safetensors1@misc{he2026modelingstylisticcoevolutionsymbolic,
2 title={Modeling Stylistic Co-evolution in Symbolic Music Heritage Collections},
3 author={Yulong He and Ivan Smirnov and Yanming Li},
4 year={2026},
5 eprint={2607.23957},
6 archivePrefix={arXiv},
7 primaryClass={cs.SD},
8 url={https://arxiv.org/abs/2607.23957},
9}