Demo Page

This is the accompanying web page for the following paper:

Interactive Arrangement of Chords and Melodies Based on a Tree-Structured Generative Model

-Submitted to ISMIR 2018

Abstract

We describe an interactive music composition system that assists a user in refining chords and melodies by generating chords for melodies (harmonization) and vice versa (melodization). Since these two tasks have been dealt with independently, it is difficult to jointly estimate chords and melodies that are optimal in both tasks. Another problem is developing an interactive GUI that enables a user to partially update chords and melodies by considering the latent tree structure of music. To solve these problems, we propose a hierarchical generative model consisting of (1) a probabilistic context-free grammar (PCFG) for chord symbols, (2) a metrical Markov model for chord boundaries, (3) a Markov model for melody pitches, and (4) a metrical Markov model for melody onsets. The harmonic functions (syntactic roles) and repetitive structure of chords are learned by the PCFG. Any variables specified by a user can be optimized or sampled in a principled manner according to a unified posterior distribution. For improved melodization, a long short-term memory (LSTM) network can also be used. The subjective experimental result showed the effectiveness of the proposed system.

Generated Example


The figure shows how the proposed method generates chord sequences and melodies.
The score (melodies and chords) at the top shows an initial state in which the chord symbols were optimized for the melody in the input file (the chord onsets were located at the bar lines).
The second score shows the state in which the two regions of the melody under the 3rd and 6th chords were updated in order.
The third chord sequence shows the state in which the 4th chord, Bb major, was split into F major and Bb major.
The fourth chord sequence shows the state in which the 7th chord, A minor, and the 8th chord, D minor, were merged into A minor.
This indicates that the proposed method can successfully help a user create a melody with a varying number of musical notes while keeping the consistency of the whole melody and that it can generate a chord sequence by considering the latent tree structure behind the chord sequence.

Web Application

The proposed system working on HTML5-based web application is available HERE.