Description
Jukebox, développé par OpenAI, est un réseau neuronal sophistiqué conçu pour la génération musicale assistée par l'IA. Il produit de la musique directement sous forme d'audio brut, capable d'inclure du chant rudimentaire et d'imiter une variété de genres et de styles d'artistes. Cela représente une avancée significative dans les modèles génératifs, allant au-delà de la génération musicale symbolique pour capturer les nuances de l'audio brut.
Au cœur de Jukebox se trouve un modèle VQ-VAE (Vector Quantized Variational Autoencoder) hiérarchique qui compresse l'audio brut dans un espace discret de plus faible dimension. Cette compression est cruciale pour gérer les séquences extrêmement longues inhérentes aux données audio, permettant au modèle d'apprendre des structures sémantiques de haut niveau. L'architecture VQ-VAE s'inspire de VQ-VAE-2, avec des modifications pour résoudre le problème de l'effondrement du codebook et améliorer la qualité de reconstruction, y compris l'ajout d'une perte spectrale. Le modèle utilise trois niveaux de compression, sous-échantillonnant l'audio brut à 44 kHz par 8x, 32x et 128x, tout en conservant les informations musicales essentielles telles que la hauteur, le timbre et le volume.
Après la compression audio, des modèles transformer sont entraînés comme modèles de priorité pour apprendre la distribution de ces codes audio compressés. Ces modèles de priorité génèrent de la musique dans l'espace discret, avec un modèle de priorité de haut niveau capturant la structure à longue portée et des modèles de priorité de bas niveau ajoutant des détails musicaux locaux. Les modèles sont entraînés de manière autorégressive à l'aide d'une variante simplifiée de Sparse Transformers, chaque modèle comportant 72 couches d'auto-attention factorisée. Cette approche hiérarchique permet à Jukebox de générer des morceaux de musique cohérents avec une qualité audio impressionnante.
Jukebox peut être conditionné sur diverses entrées, notamment le genre, l'artiste et les paroles. En fournissant ces éléments en entrée, les utilisateurs peuvent orienter le processus de génération pour produire de la musique dans un style désiré. Le modèle a été entraîné sur un grand ensemble de données de 1,2 million de chansons, associé à des paroles et des métadonnées de LyricWiki. Le conditionnement sur les paroles, en particulier, a nécessité des techniques d'alignement sophistiquées pour faire correspondre le contenu lyrique aux segments audio correspondants, améliorant ainsi la capacité du modèle à générer du chant.
Malgré ses capacités, Jukebox présente des limites. Les chansons générées peuvent manquer de structures musicales plus larges familières, comme des refrains répétés, et le processus de sous-échantillonnage/sur-échantillonnage peut introduire un bruit perceptible. Le processus d'échantillonnage est également lent, prenant environ 9 heures pour rendre une minute d'audio, ce qui le rend inadapté aux applications interactives. Les travaux futurs visent à améliorer la musicalité, à réduire le bruit et à augmenter la vitesse d'échantillonnage, potentiellement par distillation dans un échantillonneur parallèle. OpenAI prévoit également d'étendre la portée du modèle pour inclure des chansons d'autres langues et régions, favorisant ainsi la collaboration homme-modèle dans la création musicale.
Points forts de Jukebox
Génère de la musique sous forme d'audio brut
Inclut des capacités de chant rudimentaire
Prend en charge le conditionnement par genre, artiste et paroles
Imite une variété de genres musicaux
Imite divers styles d'artistes
Utilise un VQ-VAE hiérarchique pour la compression audio
Emploie des modèles transformer pour la génération de codes
Entraîné sur un grand ensemble de données de 1,2 million de chansons
Les poids du modèle et le code sont publiés publiquement
Inclut un outil pour explorer les échantillons générés
Produit de la musique dans plusieurs niveaux de compression
Apprend la structure musicale à longue portée
Premiers pas avec Jukebox
Accéder aux poids du modèle et au code : Téléchargez le modèle Jukebox publié et le code associé depuis le dépôt GitHub fourni.
Préparer les données d'entrée : Rassemblez les informations souhaitées sur le genre, l'artiste et les paroles pour la génération musicale.
Configurer les paramètres de génération : Définissez les paramètres pour la qualité audio, la durée et les entrées de conditionnement souhaitées.
Exécuter le processus de génération : Lancez le modèle Jukebox pour générer des échantillons de musique audio brute.
Explorer les échantillons générés : Utilisez l'outil fourni pour écouter et analyser la sortie.
Intégrer dans des projets : Adaptez le code publié pour des applications personnalisées de génération musicale.
Cas d'utilisation de Jukebox
- Génération de musique par IA
- Imitation de style musical
- Synthèse de chant rudimentaire
- Exploration musicale créative
- Composition de bandes sonores
- Recherche musicale




