Sistema di apprendimento automatico Stable Diffusion adattato per la sintesi musicale

Il progetto Riffusion sviluppa una variante del sistema di apprendimento automatico Stable Diffusion adattato per generare musica anziché immagini. La musica può essere sintetizzata da una descrizione testuale in linguaggio naturale o basata su un modello suggerito. I componenti di sintesi musicale sono scritti in Python utilizzando il framework PyTorch e sono disponibili con licenza MIT. L'associazione con l'interfaccia è implementata nel linguaggio TypeScript ed è anch'essa distribuita con licenza MIT. I modelli addestrati vengono rilasciati con licenza permissiva Creative ML OpenRAIL-M per uso commerciale.

Il progetto è interessante in quanto continua a utilizzare i modelli "text-to-image" e "image-to-image" per la generazione di musica, ma manipola gli spettrogrammi come immagini. In altre parole, la classica diffusione stabile non si allena su fotografie e immagini, ma su immagini di spettrogrammi che riflettono il cambiamento della frequenza e dell'ampiezza dell'onda sonora nel tempo. Di conseguenza, all'uscita viene formato anche uno spettrogramma, che viene poi convertito in una rappresentazione audio.

Sistema di apprendimento automatico Stable Diffusion adattato per la sintesi musicale

Il metodo può anche essere utilizzato per modificare composizioni sonore esistenti e campionare la sintesi musicale, in modo simile alla modifica delle immagini in Stable Diffusion. Ad esempio, la generazione può impostare spettrogrammi campione con uno stile di riferimento, combinare stili diversi, eseguire una transizione graduale da uno stile all'altro o apportare modifiche a un suono esistente per risolvere problemi come aumentare il volume di singoli strumenti, modificare il ritmo e sostituire gli strumenti. I pattern vengono utilizzati anche per generare composizioni di lunga durata, composte da una serie di passaggi vicini tra loro, che variano leggermente nel tempo. I frammenti generati separatamente vengono combinati in un flusso continuo interpolando i parametri interni del modello.

Sistema di apprendimento automatico Stable Diffusion adattato per la sintesi musicale

Per creare uno spettrogramma dal suono, viene utilizzata una trasformata di Fourier con finestra. Quando si ricrea il suono da uno spettrogramma, c'è un problema con la determinazione della fase (sullo spettrogramma sono presenti solo la frequenza e l'ampiezza), per la cui ricostruzione viene utilizzato l'algoritmo di approssimazione di Griffin-Lim.



Fonte: opennet.ru

Aggiungi un commento