GETMusic : Génération de n'importe quelle piste musicale avec une représentation unifiée et un cadre de diffusion
GETMusic: Generating Any Music Tracks with a Unified Representation and Diffusion Framework
May 18, 2023
Auteurs: Ang Lv, Xu Tan, Peiling Lu, Wei Ye, Shikun Zhang, Jiang Bian, Rui Yan
cs.AI
Résumé
La génération de musique symbolique vise à créer des notes musicales, ce qui peut aider les utilisateurs à composer de la musique, par exemple en générant des pistes instrumentales cibles à partir de zéro ou en se basant sur des pistes sources fournies par l'utilisateur. Compte tenu de la combinaison diverse et flexible entre les pistes sources et cibles, un modèle unifié capable de générer n'importe quelle piste arbitraire est d'une importance cruciale. Les travaux précédents n'ont pas répondu à ce besoin en raison de contraintes inhérentes aux représentations musicales et aux architectures de modèles. Pour répondre à ce besoin, nous proposons une représentation unifiée et un cadre de diffusion nommé GETMusic (`GET' signifiant GEnerate music Tracks), qui inclut une nouvelle représentation musicale nommée GETScore, et un modèle de diffusion nommé GETDiff. GETScore représente les notes sous forme de tokens et les organise dans une structure 2D, avec les pistes empilées verticalement et progressant horizontalement dans le temps. Pendant l'entraînement, les pistes sont sélectionnées aléatoirement comme cibles ou sources. Dans le processus direct, les pistes cibles sont corrompues en masquant leurs tokens, tandis que les pistes sources restent comme vérité terrain. Dans le processus de débruiement, GETDiff apprend à prédire les tokens masqués des pistes cibles, en se basant sur les pistes sources. Avec des pistes séparées dans GETScore et le comportement non-autorégressif du modèle, GETMusic peut contrôler explicitement la génération de n'importe quelle piste cible à partir de zéro ou en se basant sur des pistes sources. Nous menons des expériences sur la génération de musique impliquant six pistes instrumentales, résultant en un total de 665 combinaisons. GETMusic fournit des résultats de haute qualité à travers diverses combinaisons et surpasse les travaux précédents proposés pour certaines combinaisons spécifiques.
English
Symbolic music generation aims to create musical notes, which can help users
compose music, such as generating target instrumental tracks from scratch, or
based on user-provided source tracks. Considering the diverse and flexible
combination between source and target tracks, a unified model capable of
generating any arbitrary tracks is of crucial necessity. Previous works fail to
address this need due to inherent constraints in music representations and
model architectures. To address this need, we propose a unified representation
and diffusion framework named GETMusic (`GET' stands for GEnerate music
Tracks), which includes a novel music representation named GETScore, and a
diffusion model named GETDiff. GETScore represents notes as tokens and
organizes them in a 2D structure, with tracks stacked vertically and
progressing horizontally over time. During training, tracks are randomly
selected as either the target or source. In the forward process, target tracks
are corrupted by masking their tokens, while source tracks remain as ground
truth. In the denoising process, GETDiff learns to predict the masked target
tokens, conditioning on the source tracks. With separate tracks in GETScore and
the non-autoregressive behavior of the model, GETMusic can explicitly control
the generation of any target tracks from scratch or conditioning on source
tracks. We conduct experiments on music generation involving six instrumental
tracks, resulting in a total of 665 combinations. GETMusic provides
high-quality results across diverse combinations and surpasses prior works
proposed for some specific combinations.