GETMusic: Het Genereren van Willekeurige Muziektracks met een Uniforme Representatie en Diffusie Framework
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
Samenvatting
Symbolische muziekgeneratie heeft als doel muzieknoten te creëren, wat gebruikers kan helpen bij het componeren van muziek, zoals het genereren van doel-instrumentale tracks vanaf nul, of gebaseerd op door de gebruiker aangeleverde bron-tracks. Gezien de diverse en flexibele combinaties tussen bron- en doel-tracks, is een uniform model dat in staat is om willekeurige tracks te genereren van cruciaal belang. Eerdere werken slagen er niet in om aan deze behoefte te voldoen vanwege inherente beperkingen in muziekrepresentaties en modelarchitecturen. Om aan deze behoefte te voldoen, stellen we een uniforme representatie en diffusieframework voor genaamd GETMusic (`GET' staat voor GEnerate music Tracks), dat een nieuwe muziekrepresentatie genaamd GETScore en een diffusiemodel genaamd GETDiff omvat. GETScore vertegenwoordigt noten als tokens en organiseert ze in een 2D-structuur, waarbij tracks verticaal gestapeld zijn en horizontaal voortschrijden in de tijd. Tijdens de training worden tracks willekeurig geselecteerd als doel of bron. In het voorwaartse proces worden doel-tracks gecorrumpeerd door hun tokens te maskeren, terwijl bron-tracks als grondwaarheid blijven. In het denoisingsproces leert GETDiff de gemaskeerde doel-tokens te voorspellen, geconditioneerd op de bron-tracks. Met gescheiden tracks in GETScore en het niet-autoregressieve gedrag van het model, kan GETMusic expliciet de generatie van elke doel-track vanaf nul of geconditioneerd op bron-tracks controleren. We voeren experimenten uit op het gebied van muziekgeneratie met zes instrumentale tracks, wat resulteert in een totaal van 665 combinaties. GETMusic levert hoogwaardige resultaten op bij diverse combinaties en overtreft eerdere werken die voor specifieke combinaties zijn voorgesteld.
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.