MidiTok Visualizer: a tool for visualization and analysis of tokenized MIDI symbolic music

TL;DR

MidiTok Visualizer simplifies symbolic music research by visualizing tokenized MIDI data.

cs.SD 🟡 Intermediate 2024-10-28 2 views
Michał Wiszenko Kacper Stefański Piotr Malesa Łukasz Pokorzyński Mateusz Modrzejewski
music visualization MIDI tokenization machine learning interactive tool music information retrieval

Key Findings

Methodology

MidiTok Visualizer is a web application designed to visualize and analyze MIDI tokenization techniques from the MidiTok Python package. Users can upload MIDI files to view graphical representations of tokenized data. The tool provides an intuitive interface for exploring the structure and content of MIDI data, supporting experiments with different tokenization settings and displaying notes alongside token streams in a piano roll.

Key Results

  • The tool supports CPWord, MIDI-Like, Octuple, REMI, and other tokenizers, allowing flexible configuration of each tokenizer's parameters.
  • Users can view specific tokens corresponding to notes in the piano roll, enhancing understanding of tokenization results.
  • A built-in player allows users to listen to the MIDI file, further enhancing the interactive experience.

Significance

MidiTok Visualizer holds significant importance in the field of music information retrieval. It lowers the entry barrier for non-experts in symbolic music research, facilitating the development of AI models in music generation and analysis. By providing an intuitive visualization tool, it offers researchers a convenient way to explore different tokenization methods.

Technical Contribution

Technically, the tool offers a modular structure using FastAPI and React for front-end and back-end development. MusPy processes MIDI files and extracts key information, simplifying dependency installation and back-end operation. Docker containerization further enhances application portability and usability.

Novelty

MidiTok Visualizer is the first to integrate multiple MIDI tokenization methods into a single visualization tool, offering an interactive piano roll and flexible tokenizer configuration options, significantly enhancing user experience.

Limitations

  • Currently supports limited tokenizers; future work should expand support for more tokenization methods.
  • Handling complex tokenization scenarios is limited; further optimization is needed.
  • User interface and interaction design need improvement to enhance user-friendliness.

Future Work

Future work will focus on adding support for more tokenizers, handling more complex tokenization scenarios, and introducing additional visualization and editing features to further enhance user experience.

AI Executive Summary

MidiTok Visualizer is a tool for visualizing and analyzing tokenized MIDI symbolic music. The application aims to simplify the understanding of complex MIDI data for non-experts. By providing an interactive piano roll and support for multiple tokenization methods, users can intuitively explore and analyze the structure and content of MIDI files.

The tool is developed using FastAPI and React, ensuring its modular structure and user-friendly interface. MusPy is used to process MIDI files and extract key information such as tempo and time signatures. With Docker containerization, users can easily install and run the application.

MidiTok Visualizer not only lowers the barrier to entry for symbolic music research but also provides practical utility for experienced researchers. Future work will focus on expanding tokenizer support and introducing more visualization features to further enhance user experience and research value.

Deep Analysis

Background

Symbolic music research plays a crucial role in music-related machine learning. The complexity of MIDI data often challenges AI researchers lacking musical expertise. MidiTok Visualizer helps users understand and analyze MIDI tokenization methods by providing an intuitive visualization tool.

Core Problem

The structure of MIDI data is complex, often requiring deep musical theory and performance knowledge. Systematic comparisons of existing tokenization methods have not been fully addressed, hindering the development of more effective AI models. MidiTok Visualizer aims to lower this entry barrier.

Innovation

MidiTok Visualizer integrates multiple tokenization methods and provides an interactive piano roll to display notes and token streams. Users can flexibly configure tokenizer parameters to explore the impact of different settings on tokenization results.

Methodology

  • �� Developed using FastAPI and React for modular structure
  • �� Processes MIDI files and extracts key information using MusPy
  • �� Provides interactive piano roll to visualize notes and token streams
  • �� Supports multiple tokenization methods with flexible configuration

Experiments

Experimental design includes support for CPWord, MIDI-Like, Octuple, and other tokenizers. Users can upload MIDI files to view graphical representations of tokenized data and explore the relationship between notes and token streams via the piano roll.

Results

Users can view specific tokens corresponding to notes in the piano roll, enhancing understanding of tokenization results. A built-in player allows users to listen to the MIDI file, further enhancing the interactive experience.

Applications

MidiTok Visualizer can be used in music information retrieval and symbolic music analysis, suitable for academic research and music generation applications.

Limitations & Outlook

Currently supports limited tokenizers; handling complex tokenization scenarios is limited. User interface and interaction design need improvement to enhance user-friendliness.

Plain Language Accessible to non-experts

Imagine you're preparing a lavish dinner in the kitchen. MidiTok Visualizer is like a smart assistant helping you break down complex ingredients (MIDI data) into simple, understandable steps (tokenization methods). Through an interactive display (piano roll), you can see the effects of each step and adjust the recipe (tokenizer parameters) as needed. This way, even if you're not a professional chef (music expert), you can easily create delicious dishes (symbolic music).

ELI14 Explained like you're 14

Imagine you're playing a music game, and MidiTok Visualizer is your game assistant. It helps you turn complex music data into simple game levels. You can upload music files and see a cool piano roll showing each note and rhythm. You can also tweak settings to see how different music tokenization methods change the game experience. Isn't that fun? It makes music research as easy as playing a game!

Glossary

MIDI Tokenization

Converting MIDI data into token sequences that machine learning models can process.

Used for analyzing and generating symbolic music.

Piano Roll

A visualization tool displaying the timing and pitch of musical notes.

Used to show notes and token streams of MIDI files.

FastAPI

A modern Python framework for building APIs.

Used for developing the back-end of MidiTok Visualizer.

MusPy

A Python toolkit for processing symbolic music.

Used for extracting key information from MIDI files.

Docker Containerization

A software packaging technology ensuring application portability and usability.

Used to simplify the installation and running of MidiTok Visualizer.

Open Questions Unanswered questions from this research

  • 1 How to support more tokenization methods to handle complex music data?
  • 2 Limitations of existing tokenization methods in handling multi-track music?
  • 3 How to optimize the user interface to enhance interaction experience?

Applications

Immediate Applications

Music Education

Teachers can use MidiTok Visualizer to help students understand music structure and tokenization methods.

Music Composition

Composers can explore the impact of different tokenization methods on music creation.

Long-term Vision

Music Generation

Improving tokenization methods to drive AI-generated music works that are more complex and diverse.

Abstract

Symbolic music research plays a crucial role in music-related machine learning, but MIDI data can be complex for those without musical expertise. To address this issue, we present MidiTok Visualizer, a web application designed to facilitate the exploration and visualization of various MIDI tokenization methods from the MidiTok Python package. MidiTok Visualizer offers numerous customizable parameters, enabling users to upload MIDI files to visualize tokenized data alongside an interactive piano roll.

cs.SD cs.AI cs.MM eess.AS