SongFormer / dataset /label2id.py
ASLP-lab's picture
add one-click func
d0690fd
LABEL_TO_ID = {
"intro": 0,
"verse": 1,
"chorus": 2,
"bridge": 3,
"inst": 4,
"outro": 5,
"silence": 6,
"intchorus": 7,
"prechorus": 8,
"gtrbreak": 9,
"solo": 10,
"quietchorus": 11,
"bre": 12,
"break": 13,
"introverse": 14,
"mainriff": 15,
"chorushalf": 16,
"instintro": 17,
"gtr": 18,
"vocaloutro": 19,
"verse_slow": 20,
"fadein": 21,
"saxobeat": 22,
"transition": 23,
"verse1a": 24,
"build": 25,
"pre-chorus": 26,
"outroa": 27,
"bigoutro": 28,
"fast": 29,
"instrumentalverse": 30,
"section": 31,
"choruspart": 32,
"instbridge": 33,
"guitar": 34,
"instrumental": 35,
"breakdown": 36,
"rhythmlessintro": 37,
"intropt": 38,
"interlude": 39,
"postchorus": 40,
"postverse": 41,
"opening": 42,
"altchorus": 43,
"stutter": 44,
"oddriff": 45,
"synth": 46,
"preverse": 47,
"quiet": 48,
"raps": 49,
"verseinst": 50,
"instchorus": 51,
"chorus_instrumental": 52,
"slowverse": 53,
"slow": 54,
"worstthingever": 55,
"transition2a": 56,
"miniverse": 57,
"refrain": 58,
"introchorus": 59,
"drumroll": 60,
"guitarsolo": 61,
"versepart": 62,
"chorusinst": 63,
"ending": 64,
"no-vocal-intro": 65,
"no-vocal-interlude": 66,
"no-vocal-outro": 67,
"NO_LABEL": 68, # Only referring to cases without labels, this portion of labels will be ignored during the loss calculation process.
}
ID_TO_LABEL = {v: k for k, v in LABEL_TO_ID.items()}
# Reserve 64 embedding positions for dataset identifiers in the model.
DATASET_LABEL_TO_DATASET_ID = {
"SongForm-HX-7Class": 0, # Categories after rule mapping for HarmonixSet
"SongForm-HX-Widen": 1, # Original HarmonixSet
"SongForm-Private-Raw": 2,
"SongForm-Private": 3,
"SongForm-HX-Gemini-Relabeled": 4, # Rule-mapped HarmonixSet corrected by Gemini
"SongForm-HX-8Class": 5, # Rule-mapped (pre-chorus retained)
"SongForm-Hook": 6,
"SongForm-Gem": 7,
"SongForm-Gem-Only-Label": 8, # Use only segments with labels in SongForm-Gem
}
DATASET_ID_TO_DATASET_LABEL = {v: k for k, v in DATASET_LABEL_TO_DATASET_ID.items()}
DATASET_ID_ALLOWED_LABEL_IDS = {
0: [0, 1, 2, 3, 4, 5, 6],
1: [
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
27,
28,
29,
30,
31,
32,
33,
34,
35,
36,
37,
38,
40,
41,
42,
43,
44,
45,
46,
47,
48,
49,
50,
51,
52,
53,
54,
55,
56,
57,
58,
59,
60,
61,
62,
63,
],
2: [0, 1, 2, 3, 26, 39, 64, 65, 66, 67],
3: [0, 1, 2, 3, 4, 5, 6, 26, 39, 64, 65, 66, 67],
4: [0, 1, 2, 3, 4, 5, 6, 26],
5: [0, 1, 2, 3, 4, 5, 6, 26],
6: [0, 1, 2, 3, 4, 5, 6, 26],
7: [0, 1, 2, 3, 4, 5, 6, 26],
8: [0, 1, 2, 3, 4, 5, 6, 26],
}