Zum Hauptinhalt springen

Wie man Musik mit künstlicher Intelligenz und maschinellem Lernen erstellt



Lerne Musik mit künstlicher Intelligenz zu machen! Wiederkehrende neuronale Netze für die Musikkreation!

Datendatei MAESTRO und Wave2Midi2Wave
Nachdem ich mir diese Quellen angesehen hatte, fand ich ein Forschungsdokument, in dem ein neuer Datensatz namens MAESTRO vorgestellt wird (der für MIDI und Audio Edited für Synchronous TRacks and Organization steht). Er entwirft auch die neue Wave2Midi2Wave-Architektur, die im Wesentlichen drei hochmoderne Algorithmen kombiniert und diese in einer MAESTRO-Datendatei zusammenführt.

MIDI ist im Grunde ein technischer Standard, der viele Protokolle für Computer mit verschiedenen Arten von Audiogeräten enthält. Dies ist nützlich, da die übertragenen Informationen Ton-, Tonhöhen-, Geschwindigkeits- und Tempoinformationen enthalten.

Der Hauptgrund, warum dieses neue Dataset so wichtig ist, ist, dass es viel mehr Daten enthält als jedes vorherige vorherige Dataset. Die MAESTRO-Datendatei enthält 172 Stunden Audio- und MIDI-Transkripte. Die MAPS-Datendatei enthält nur 17,9 Stunden und die MusicNet-Datendatei nur 15,3 Stunden.

Wie bereits erwähnt, ist Wave2Midi2Wave im Grunde eine Kombination aus drei verschiedenen Modellen auf dem neuesten Stand der Technik und führt jeweils eine andere Aufgabe aus. Zunächst wird Wave2Midi verwendet, um Sound in eine symbolische Darstellung (MIDI) zu übersetzen. Dann erstellt ein Teil des Midi-Netzwerks neue Inhalte. All dies wird von Midi2Wave synthetisiert, um einen realistischen Klang zu erzeugen.

Das erste Netzwerk von Wave2Midi2Wave verwendet eine hochmoderne Architektur namens Onsets and Frames, die Ihre Aufnahmen automatisch in in MIDI dargestellte Noten konvertiert. Wenn Sie also improvisieren, können Sie genau wissen, was Sie spielen!

Mithilfe von CNN und LSTM konnten Wissenschaftler "den Beginn der Tonhöhe vorhersagen und diese Vorhersagen dann verwenden, um die Frame-Tonhöhenvorhersagen anzupassen". Dies bedeutet im Wesentlichen, dass ein neuronales Netzwerk im Modell verwendet wird, um vorherzusagen, wann eine Note gespielt wird (dh Beginn). Ein anderes neuronales Netzwerk sagt voraus, wie lange eine Note gespielt wird (jedes Bild, das aktiv ist).

Midi: Musiktransformator
Für das zweite Netzwerk in Wave2Midi2Wave wird ein spezieller Transformatortyp verwendet, um brandneue Musiksequenzen mit langfristiger Kohärenz zu erzeugen. Die Netzwerkausgabe ist im Vergleich zu anderen neuronalen Netzen viel struktureller.

Bei einem herkömmlichen Transformator wird darauf geachtet, die Beziehungen zwischen Wörtern zu modellieren, da in Sätzen die Bedeutung eines Wortes nicht nur auf den vorangegangenen Wörtern basiert, sondern auch auf dem Kontext des gesamten Satzes.
Transformatoren aggregieren Informationen aus allen anderen Teilen des Netzwerks und generieren eine Darstellung für jedes Wort basierend auf dem gesamten Kontext. Dieser Vorgang wird wiederholt, sodass jedes Wort neue Darstellungen erzeugt.

Der Punkt ist, dass wir Transformatoren verwenden können, um Informationen verschiedenen Daten zuzuweisen, basierend auf dem Kontext des gesamten Netzwerks. Kehren wir zum Thema Musikgenerierung zurück.
Ein Problem mit dem ursprünglichen Transformator besteht darin, dass er für seine eigene Aufmerksamkeit auf absolute Positionen angewiesen ist. Wenn es um Musik geht, kämpfen Transformers mit Entfernungen, Ordnung und Wiederholung. Mit relativer Aufmerksamkeit kann sich das Musiktransformationsmodell auf relationale Elemente konzentrieren und Sequenzen erzeugen, die über das hinausgehen, was in den Trainingsbeispielen gezeigt wurde.

Midi2Wave: WaveNet
Der letzte Teil des Netzwerks nimmt das WaveNet-Modell und trainiert es in einem Musikgenerierungsdatensatz, der buchstäblich wie eine Aufnahme klingt. WaveNet ist eine Modellarchitektur, die auf PixelCNN basiert und auf Audiosynthese spezialisiert ist.
Architektur verwendet Faltungsschichten. Da die Threads keine wiederkehrenden Verbindungen wie in RNN verwenden, ist das Trainieren normalerweise viel einfacher als bei RNN. Ein Problem besteht jedoch darin, dass Tonnen von Schichten oder sehr großen Filtern benötigt werden, um das Wahrnehmungsfeld (die Datenmenge, die das Modell abdecken kann) zu vergrößern, was die Rechenkosten erhöht.

Erweiterungsthreads werden zum Umgehen verwendet. Dies bedeutet im Grunde, dass Filter über einen größeren Bereich angewendet werden können, wenn bestimmte Eingabewerte übersprungen werden. Sie erzielen fast den gleichen Effekt wie ein größerer Filter, wenn Sie ihn mit Nullen erweitert haben, aber er ist viel effizienter.

Das WaveNet-Training, das modernste Modell für die Sprachsynthese, im MAESTRO-Datensatz bringt einige unglaubliche Ergebnisse, mit denen ich Ihnen nach und nach konkrete Beispiele vorstellen werde.

Kommentare

Beliebte Beiträge aus diesem Blog

Rokytnice nad Jizerou, Lysa hora

Rokytnice nad Jizerou (deutsch Rochlitz an der Iser) ist ein Stadt- und Bergkurort im westlichen Riesengebirge. Es befindet sich in der Region Liberec im Bezirk Semily im langgestreckten Tal des Huťský-Baches zwischen den Massiven Stráž (782 m), Čertova hora (1022 m) und Lysá hora (1344 m) und am linken (östlichen) Ufer des Isers. Dort leben rund 2 Einwohner.

Einfacher Rechner für Python-Code

Dieses einfache Python-Programm fordert den Benutzer auf, die gewünschte Operation auszuwählen. Die Auswahloptionen 1, 2, 3 und 4 sind gültig. Zwei if ... elif ... else-Nummern werden ausgewählt und die Verzweigung wird verwendet, um einen bestimmten Abschnitt des Programms auszuführen. Benutzerdefinierte Funktionen add (), subtrahieren (), multiplizieren () und dividieren () führen die entsprechenden Operationen aus.
# Diese Funktion addiert zwei Zahlen def add (x, y): return x + y # Diese Funktion subtrahiert zwei Zahlen def subtrahiert (x, y): return x - y # Diese Funktion multipliziert zwei Zahlendef multipliziert ( x, y): return x * y # Diese Funktion teilt zwei Zahlendef divid (x, y): return x / y print ("Auswahloperation") print ("1.Add") print ("2.Subtract") print ("3.Multiply") print ("4.Divide")

Traveller Premium HTML Template kostenloser Download

Premium HTML Vorlage Traveler ist eine einzigartige Vorlage, die sich nicht nur für Reisebüros und Reisebüros als äußerst benutzerfreundlich erweist, sondern auch unerfahrenen Benutzern die Erstellung einzigartiger Originalwebsites zur sofortigen Bereitstellung ermöglicht.

Webdesigns und Vorlagenseiten werden auf jedem Gerät perfekt angezeigt, einschließlich Desktops, Laptops, Tablets und allen Arten von Smartphones. Sie sind sehr freundlich zu Such- und Indizierungsdiensten, mit denen Sie die besten Positionen in den Suchergebnissen erzielen.
Die ursprüngliche Idee bei der Schaffung eines originellen Designs ist es, eine gewisse Einzigartigkeit und Ungewöhnlichkeit jeder Anwendung zum Ausdruck zu bringen, die für den Kunden interessant und neuartig ist. Ein wichtiger Faktor ist, wie stark die Spezifikationen und Ideen des Kunden am Anfang sind und wie viel Platz für die Gestaltung einer vollständig originellen Anwendung oder Website verbleibt.

Meine Absicht ist es, originelle Software zu erstellen, damit ich mich nicht für meine Arbeit vor Kunden schämen muss und der Kunde nicht mehr ausgeben muss ...