{"id":25678401,"url":"https://github.com/a43992899/marble-benchmark","last_synced_at":"2025-04-23T16:26:41.317Z","repository":{"id":173178574,"uuid":"649907112","full_name":"a43992899/MARBLE-Benchmark","owner":"a43992899","description":"Music Audio Representation Benchmark for Universal Evaluation","archived":false,"fork":false,"pushed_at":"2024-05-16T15:15:54.000Z","size":1091,"stargazers_count":101,"open_issues_count":7,"forks_count":9,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-03-30T01:34:33.865Z","etag":null,"topics":["deep-learning","mir","music-information-retrieval","music-understanding","pretrained-models","self-supervised-learning","ssl"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/a43992899.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-06-05T22:49:55.000Z","updated_at":"2025-03-17T00:00:41.000Z","dependencies_parsed_at":"2024-05-03T12:25:10.005Z","dependency_job_id":"9cc6f40a-e09d-4556-9f55-87f454476b22","html_url":"https://github.com/a43992899/MARBLE-Benchmark","commit_stats":null,"previous_names":["a43992899/marble-benchmark"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/a43992899%2FMARBLE-Benchmark","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/a43992899%2FMARBLE-Benchmark/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/a43992899%2FMARBLE-Benchmark/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/a43992899%2FMARBLE-Benchmark/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/a43992899","download_url":"https://codeload.github.com/a43992899/MARBLE-Benchmark/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250469732,"owners_count":21435704,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["deep-learning","mir","music-information-retrieval","music-understanding","pretrained-models","self-supervised-learning","ssl"],"created_at":"2025-02-24T15:49:01.621Z","updated_at":"2025-04-23T16:26:41.297Z","avatar_url":"https://github.com/a43992899.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MARBLE: Music Audio Representation Benchmark for Universal Evaluation\n\nCurrently support:\n- Linear probing pretrained features.\n- Various MIR datasets:\n  - `MTT`: magnatagatune, multilabel cls\n  - `MTG`: MTG-jamendo, multilabel cls\n  - `GTZAN`: GTZAN, multiclass cls\n  - `GS`: giantsteps, multiclass cls \n  - `EMO`: emomusic, regression\n  - `VocalSet`: VocalSet, multiclass cls\n\nTODOs:\n- Support `GTZANBT`: GTZAN Beat Tracking, will be updated soon.\n- Support `MUSDB18`: MUSDB18, source separation, will be updated soon.\n- Support traditional handcrafted features.\n- Support `MAESTRO`: maestro, piano transcription\n- Support lyrics transcription.\n- Support few-shot inference.\n\n## Getting Start\nPlease first make sure you are already at the ${PROJECT_ROOT} and have activated your virtual environment.\n```bash\nexport PROJECT_ROOT=/path/to/this/project\ncd ${PROJECT_ROOT}\nconda activate ${YOUR_ENV}\n```\n\n## Download \u0026 Preprocess\nFirst run the following script to create data dir.\n```bash\ncd ${PROJECT_ROOT}\nmkdir data\nmkdir ./data/wandb # wandb log dir, you should create one if you don't have WANDB_LOG_DIR\nmkdir ./data/hubert_data # huggingface hubert checkpoints\n```\nThen download the datasets and preprocess them. Note that you should have `wget` installed. Not all datasets need preprocessing.\n```bash\nbash exp_scripts/download/download_emo.sh\nbash exp_scripts/preprocess/preprocess_emo.sh # You may skip this step for some datasets.\n```\n\n\n## Extract Features \nSimply do the following\n```bash\npython . extract -c configs/mert/MERT-v1-95M/EMO.yaml\n```\nIf you want to change the settings, run below to see help.\n```bash\npython . extract -h\n```\n\n## Linear Probing\nYou should do `wandb login` first. Then do\n```bash\npython . probe -c configs/mert/MERT-v1-95M/EMO.yaml\n```\nIf you want to change the settings, run below to see help.\n```bash\npython . probe -h\n```\n\n## Development Workflow\n\n### Branching Strategy\n- **`main` branch**: This branch contains the stable version of the project. All new features and fixes should be developed on separate branches and merged into `main` once they are tested and reviewed.\n  \n- **`dev` branch**: This is the primary development branch where all the features and bug fixes are merged. When the `dev` branch is stable and ready for a new version, it will be merged into the `main` branch.\n\n- **Feature Branches**: For each new feature or improvement, create a new branch from `dev`. The naming convention is `feature/descriptive-name`, e.g., `feature/add-GTZANBT-support`.\n\n- **Bugfix Branches**: If there's a bug to fix, create a branch from `dev`. Name it `bugfix/descriptive-name`, e.g., `bugfix/fix-data-loading-issue`.\n\n## Paper:\n```code\n@article{yuan2023marble,\n  title={MARBLE: Music Audio Representation Benchmark for Universal Evaluation},\n  author={Yuan, Ruibin and Ma, Yinghao and Li, Yizhi and Zhang, Ge and Chen, Xingran and Yin, Hanzhi and Zhuo, Le and Liu, Yiqi and Huang, Jiawen and Tian, Zeyue and others},\n  journal={arXiv preprint arXiv:2306.10548},\n  year={2023}\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fa43992899%2Fmarble-benchmark","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fa43992899%2Fmarble-benchmark","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fa43992899%2Fmarble-benchmark/lists"}