Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: arxiv.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.0%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Basic Info
  • Host: GitHub
  • Owner: frank-chris
  • License: mit
  • Language: Jupyter Notebook
  • Default Branch: main
  • Homepage:
  • Size: 338 KB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 1
  • Open Issues: 0
  • Releases: 0
Created over 2 years ago · Last pushed over 2 years ago
Metadata Files
Readme License Citation

README.md

Evaluating Co-Creativity using Total Information Flow

Content

Setup

Create the environment.

sh conda env create -f environment.yml

Activate the environment.

sh conda activate mtmt

Run setup script.

sh python scripts/setup.py

Experiments

Generate results

  • Make sure to place the X, Y and XY MIDI files in data/X/X/, data/Y/Y/ and data/XY/XY/ respectively. The X, Y, XY files for a sample should have the same filename.

  • Run scripts/compute_info_flow.py

sh python compute_info_flow.py OUTPUT_FILE_PATH

OUTPUTFILEPATH is the file path where the results will be stored as a .pkl file. The path should include the name of the file. You can save them in results/.

Example: sh python compute_info_flow.py results/example.pkl

Visualize experiment results

  • Open notebooks/visualize.ipynb to visualize results. The notebook has code to visualize the experiments used in the paper. The results/ directory has sample results for these experiments, so you don't have to run the compute_info_flow.py script with data.

Utility Scripts

Three utility scripts have been provided in the scripts/ directory:

  1. change_instrument.py: Script to change instrument of a track in a midi file.
  2. combine_midi.py: Script to combine 2 midi tracks into a single midi file.
  3. split_midi.py: Script to split a midi file into 2 separate midi files, each containing a single track.

Usage instructions for these scripts are documented inside the files.

Acknowledgment

This repository uses the official implementation of "Multitrack Music Transformer" (ICASSP 2023).

Multitrack Music Transformer
Hao-Wen Dong, Ke Chen, Shlomo Dubnov, Julian McAuley and Taylor Berg-Kirkpatrick
Proceedings of the IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), 2023
[homepage] [paper] [code] [reviews]

Owner

  • Name: Chris Francis
  • Login: frank-chris
  • Kind: user
  • Location: India
  • Company: IIT Gandhinagar

MSCS student at UC San Diego

Citation (CITATION.cff)

cff-version: 1.2.0
message: If you use this software, please cite it as below.
authors:
  - family-names: Dong
    given-names: Hao-Wen
title: MMT
preferred-citation:
  type: article
  authors:
    - family-names: Dong
      given-names: Hao-Wen
    - family-names: Chen
      given-names: Ke
    - family-names: Dubnov
      given-names: Shlomo
    - family-names: McAuley
      given-names: Julian
    - family-names: Berg-Kirkpatrick
      given-names: Taylor
  title: Multitrack Music Transformer
  journal: Proceedings of the IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP)
  year: 2023
date-released: 2022-04-21
license: MIT
url: https://salu133445.github.io/mmt/
repository-code: https://github.com/salu133445/mmt

GitHub Events

Total
  • Fork event: 1
Last Year
  • Fork event: 1

Dependencies

environment.yml pypi
  • gdown *
  • muspy *
  • muspy main
  • plotly *
  • x-transformers ==0.25.9
scripts/setup.py pypi