{"url":"/dataset/niko-chord-progression-dataset","name":"Niko Chord Progression Dataset","full_name":null,"description_markdown":"### Introduction\r\n\r\nThe Niko Chord Progression Dataset is used in [AccoMontage2](https://github.com/billyblu2000/AccoMontage2). It contains 5k+ chord progression pieces, labeled with styles. There are four styles in total: Pop Standard, Pop Complex, Dark and R&B. Some progressions have an 'Unknown' style. Some statistics are provided below.\r\n\r\n|                            | Mean  | Variance |\r\n| -------------------------- | ----- | -------- |\r\n| Note Pitch                 | 57    | 167.70   |\r\n| Note Velocity              | 79.05 | 457.89   |\r\n| Note Duration (in seconds) | 1.38  | 1.62     |\r\n\r\n### Data Formats\r\n\r\nYou can access the Niko Chord Progression Dataset in two formats: MIDI format and the quantized note matrix format. \r\n\r\n##### MIDI (dataset.zip)\r\n\r\nEach chord progression piece is stored as a single MIDI file.\r\n\r\n##### Quantized Note Matrix (dataset.pkl)\r\n\r\nA python dictionary with format like the following. `nmat`is an 2-d matrix, each row represent a quantized note: `[start, end, pitch, velocity]`. <u>Each note is quantized at the eighth note level. eg., `start=2` means the note begins at the third eighth note.</u> `root` is also an 2-d matrix. It labels the roots of the chords using an eighth note sample rate. Each row of the `root` represents a bar. Each element is an integer ranged from 0 (C note) to 11 (B note).\r\n\r\n```python\r\n{'piece name': \r\n \t{'nmat': [[0, 3, 60, 60], ...],    # 2-d matrix: note matrix\r\n     'root': [[0,0,0,0,0,0,0,0], ...], # 2-d matrix: root label\r\n     'style': 'some style',            # pop_standard, pop_complex, dark, r&b, unknown\r\n     'mode': 'some mode',              # M, m\r\n     'tonic': 'some tonic'\t\t\t   # C, Db, ... B\r\n    }, \r\n ...\r\n}\r\n\r\n# load the dataset using pickle\r\nimport pickle\r\nwith open('dataset_path_and_name.pkl', 'rb') as file:\r\n    dataset = pickle.load(file)\r\n```\r\n\r\n### Supplementary description\r\n\r\n##### Original Dataset\r\n\r\nThe Niko Chord Progression Dataset is a re-organized version of the original Niko Dataset. The original Niko Dataset have duplicate progressions and unnecessary labels, it was thus processed and converted to this version.\r\n\r\n##### Style Mapping\r\n\r\nThe style label was mapped from the original dataset to the new dataset. The style label in the original dataset is stored as folder names, and thus the style can be obtained from the file path. The following shows a detailed description of the style mapping function.\r\n\r\n```\r\n// Structure of the original dataset\r\n.\r\n├─A Major - F# Minor  \t\t---> progressions are sorted based on tonics and modes\r\n│  ├─1 - Best Melodies      ---> eliminated\r\n│  │  ├─Catchy\r\n│  │  ├─Dark_HipHop_Trap\r\n│  │  ├─EDM\r\n│  │  ├─Emotional\r\n│  │  ├─Pop\r\n│  │  └─R&B_Neosoul\r\n│  ├─2 - Best Chords\r\n│  │  ├─Dark_HipHop_Trap\t---> New style: Dark\r\n│  │  ├─EDM\r\n│  │  │  ├─Classy_7th_9th\t---> New style: Pop Complex\r\n│  │  │  ├─Emotional\t\t---> New style: Pop Complex\r\n│  │  │  └─Standard\t\t\t---> New style: Pop Standard\r\n│  │  ├─Emotional\t\t\t---> New style: Pop Complex\r\n│  │  ├─Pop\r\n│  │  │  ├─Classy_7th_9th\t---> New style: Pop Complex\r\n│  │  │  ├─Emotional\t\t---> New style: Pop Complex\r\n│  │  │  └─Standard\t\t\t---> New style: Pop Standard\r\n│  │  └─R&B_Neosoul\t\t\t---> New style: R&B\r\n│  └─3 - Rest Of Pack\r\n│      ├─A-Bm-D (I-ii-IV)   ---> progressions sorted based on root pattern\r\n│      │  ├─Arps\t\t\t---> eliminated\r\n│      │  ├─Basslines\t\t---> eliminated\r\n│      │  ├─Chord Breakdown\t---> New style: Unknown\r\n│      │  ├─Chord Progression -> New style: Unknown\r\n│      │  ├─Epic Endings\t---> eliminated\r\n│      │  ├─Fast Chord Rhythm -> eliminated\r\n│      │  │  ├─Back & Forth\t\r\n│      │  │  └─Same Time\t\r\n│      │  ├─Melodies\t\t---> eliminated\r\n│      │  │  ├─115-130bpm\r\n│      │  │  ├─130-160bpm\r\n│      │  │  ├─160-180bpm\r\n│      │  │  └─90-115bpm\r\n│      │  └─Slow Chord Rhythm -> New style: Unknown\r\n...\r\n```\r\n\r\n### Cite\r\n\r\n```\r\nL. Yi, H. Hu, J. Zhao, and G. Xia, “AccoMontage2: A Complete Harmonization and Accompaniment Arrangement System”, in Proceedings of the 23rd International Society for Music Information Retrieval Conference, Bengaluru, India, 2022.\r\n```\r\n\r\n### License\r\n\r\nMIT Licensed. Copyright © 2022 New York University Shanghai Music X Lab. All rights reserved.","description_withheld":null,"homepage":"https://github.com/billyblu2000/accomontage2","introduced_date":"2022-09-01","introduced_date_note":null,"introduced_by":{"paper":"/paper/accomontage2-a-complete-harmonization-and","title":"AccoMontage2: A Complete Harmonization and Accompaniment Arrangement System","first_author":"Li Yi","url":null},"license":{"name":"MIT","url":null},"modalities":[{"name":"Midi","url":"/datasets/modality/midi"}],"tasks":[{"name":"Music Generation","url":"/task/music-generation","datasets_with_task":"/datasets/task/music-generation"},{"name":"Music Information Retrieval","url":"/task/music-information-retrieval","datasets_with_task":"/datasets/task/music-information-retrieval"},{"name":"Piano Music Modeling","url":"/task/piano-music-modeling","datasets_with_task":"/datasets/task/piano-music-modeling"},{"name":"Music Style Transfer","url":"/task/music-style-transfer","datasets_with_task":"/datasets/task/music-style-transfer"}],"languages":[{"name":"English","url":"/datasets/language/english"}],"variants":["Niko Chord Progression Dataset"],"data_loaders":[],"num_papers_in_archive":1,"source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28"},"benchmarks":[],"papers_with_a_benchmark_row":[],"syntology_totals":{"read_at":"2026-09-25T09:33:49+00:00","papers_with_samples":0,"samples_harvested":0,"samples_ran":0,"samples_unverified":0,"pointer_only_for_licence":0,"papers_with_no_sample_that_ran":0,"note":"the per-paper counts above, summed; not a rate"},"papers_note":"The archive never published its papers-using-dataset list; these are papers with a leaderboard row on this dataset's benchmarks."}