AI Personal Learning
und praktische Anleitung

MuseGAN: ein Open-Source-Modell zur Erzeugung von Mehrspur-Musik/Soundtracks und zur einfachen Erstellung von Musikclips für mehrere Instrumente

Allgemeine Einführung

MuseGAN ist ein Musikgenerierungsprojekt, das auf generativen adversen Netzwerken (GANs) basiert und für die Generierung von Mehrspurmusik (mit mehreren Instrumenten) entwickelt wurde. MuseGAN wird mit dem Lakh Pianoroll-Datensatz trainiert, um Schnipsel beliebter Songs mit Bass, Schlagzeug, Gitarren, Klavier und Streichern zu erzeugen. Die neueste Implementierung basiert auf einer Netzwerkarchitektur aus 3D-Faltungsschichten mit einer geringeren Netzwerkgröße, aber reduzierter Kontrolle.MuseGAN bietet eine Vielzahl von Skripten, um Vorgänge wie die Verwaltung von Experimenten, das Training neuer Modelle und die Inferenz und Interpolation mit vortrainierten Modellen zu erleichtern.

MuseGAN: Ein Open-Source-Modell zur Erzeugung von Mehrspur-Musik/Soundtracks zur einfachen Erstellung von Musikclips für mehrere Instrumente-1


 

Funktionsliste

  • Erzeugen von Mehrspurmusik: Erzeugen Sie Musikclips mit mehreren Instrumenten von Grund auf neu.
  • Begleitungsgenerierung: Generieren Sie Begleitungen auf der Grundlage von vom Benutzer bereitgestellten Tracks.
  • Training neuer Modelle: Es werden Skripte und Konfigurationsdateien zur Verfügung gestellt, die es den Benutzern erleichtern, ihre eigenen Modelle zur Musikerzeugung zu trainieren.
  • Vorgefertigte Modelle verwenden: Laden Sie vorgefertigte Modelle herunter und verwenden Sie sie für die Musikerstellung.
  • Datenverarbeitung: Herunterladen und Verarbeiten von Trainingsdaten mit Unterstützung für Lakh Pianoroll Dataset.
  • Verwaltung von Experimenten: Bieten Sie eine Reihe von Skripten an, die es den Benutzern erleichtern, Experimente einzurichten und zu verwalten.
  • Ausgabeformat: Die erzeugte Musik kann in den Formaten Numpy-Array, Bilddatei und mehrspurige Pianoroll-Datei gespeichert werden.

 

Hilfe verwenden

Ablauf der Installation

  1. Stellen Sie sicher, dass pipenv (empfohlen) oder pip installiert ist.
  2. Verwenden Sie pipenv, um die Abhängigkeiten zu installieren:

bash
Pipenv-Installation
Pipenv-Shell

oder verwenden Sie pip, um Abhängigkeiten zu installieren:

bash
pip install -r anforderungen.txt

### Datenvorbereitung
1. laden Sie die Trainingsdaten herunter:

bash
. /scripts/download_data.sh

2. die Verarbeitung von Trainingsdaten:

bash
. /scripts/process_data.sh

### Training eines neuen Modells
1 Bauen Sie das neue Experiment auf:

bash
. /scripts/setupexp.sh ". /exp/meinExperiment/" "Bemerkungen zum Experiment"

2. die Konfigurationsdatei und die Modellparameterdatei ändern, um die Versuchsparameter festzulegen.
3. das Modell trainieren:

bash
. /scripts/runtrain.sh ". /exp/myexperiment/" "0"

Oder führen Sie das gesamte Experiment durch (Training + Inferenz + Interpolation):

bash
. /scripts/runexp.sh ". /exp/meinexperiment/" "0"

### Verwendung des Vortrainingsmodells
1. laden Sie das Pre-Training-Modell herunter:

bash
. /scripts/download_models.sh

2. die Inferenz mit vortrainierten Modellen:

bash
. /scripts/run_inference.sh ". /exp/default/" "0"

oder Interpolation:

bash
. /scripts/run_interpolation.sh ". /exp/default/" "0"

### Ausgabeverwaltung
Generierte Musiksamples werden standardmäßig während des Trainings generiert. Dieses Verhalten kann durch Setzen von `save_samples_steps` auf 0 in der Konfigurationsdatei deaktiviert werden. Die erzeugten Musiksamples werden in den folgenden drei Formaten gespeichert:
- `.npy`: rohes Numpy-Array
- `.png`: Bilddatei
- `.npz`: mehrspurige Pianoroll-Dateien, die über das Pypianoroll-Paket geladen werden können
Das Speichern bestimmter Formate kann durch Setzen von `save_array_samples`, `save_image_samples` und `save_pianoroll_samples` auf False in der Konfigurationsdatei deaktiviert werden. Die erzeugten Pianoroll-Dateien werden im `.npz`-Format gespeichert, um Platz und Verarbeitungszeit zu sparen. Sie können mit dem folgenden Code in eine MIDI-Datei geschrieben werden:

python
von pypianoroll importieren Multitrack
m = Multitrack('. /test.npz')
m.write('. /test.mid')

Beispielhafte Ergebnisse

Einige Beispielergebnisse finden Sie in der. /exp/Katalog gefunden werden kann. Weitere Beispiele können unter den folgenden Links heruntergeladen werden:

Darf nicht ohne Genehmigung vervielfältigt werden:Chef-KI-Austauschkreis " MuseGAN: ein Open-Source-Modell zur Erzeugung von Mehrspur-Musik/Soundtracks und zur einfachen Erstellung von Musikclips für mehrere Instrumente

Chef-KI-Austauschkreis

Der Chief AI Sharing Circle konzentriert sich auf das KI-Lernen und bietet umfassende KI-Lerninhalte, KI-Tools und praktische Anleitungen. Unser Ziel ist es, den Nutzern dabei zu helfen, die KI-Technologie zu beherrschen und gemeinsam das unbegrenzte Potenzial der KI durch hochwertige Inhalte und den Austausch praktischer Erfahrungen zu erkunden. Egal, ob Sie ein KI-Anfänger oder ein erfahrener Experte sind, dies ist der ideale Ort für Sie, um Wissen zu erwerben, Ihre Fähigkeiten zu verbessern und Innovationen zu verwirklichen.

Kontaktieren Sie uns
de_DE_formalDeutsch (Sie)