3 Punkte von GN⁺ 2023-11-20 | 1 Kommentare | Auf WhatsApp teilen

Text-to-Speech-Modell auf menschlichem Niveau, StyleTTS 2

  • StyleTTS 2 erreicht eine Text-to-Speech-(TTS)-Synthese auf menschlichem Niveau durch adversariales Training mit Style Diffusion und großen Speech Language Models.
  • Das Modell erzielt effiziente latente Diffusion, indem es Stil als latente Zufallsvariable über ein Diffusionsmodell modelliert, um ohne Referenzstimme den zum Text am besten passenden Stil zu erzeugen.
  • Durch die Verwendung eines großen vortrainierten Speech Language Models als Diskriminator und ein neuartiges differenzierbares Duration Modeling für End-to-End-Training wird die Natürlichkeit der Sprache verbessert.

Voraussetzungen

  • Python Version 3.7 oder höher wird benötigt.
  • Das StyleTTS-2-Repository klonen und die erforderlichen Python-Abhängigkeiten installieren.
  • Den LJSpeech-Datensatz herunterladen, auf 24 kHz hochsampeln und im Datenordner entpacken.
  • Bei Verwendung des LibriTTS-Datensatzes müssen train-clean-360 und train-clean-100 zusammengeführt und der Ordnername in train-clean-460 geändert werden.

Training

  • Das Training der ersten und zweiten Phase kann nacheinander ausgeführt werden, und das Modell wird in einem bestimmten Format gespeichert.
  • Das Datenlistenformat muss filename.wav|transcription|speaker sein; bei einem Multi-Speaker-Modell ist für das Training des Style-Diffusion-Modells das Sampling von Referenz-Audio erforderlich.

Wichtige Konfiguration

  • Die Datei config.yml enthält wichtige Einstellungen wie den OOD-(out-of-distribution)-Textpfad für SLM-adversariales Training, minimale und maximale Längen für das Training, ob ein Multi-Speaker-Modell trainiert wird sowie Batch-Prozentsätze zur Vermeidung von OOM-(out-of-memory)-Problemen.

Vortrainierte Module

  • Der Ordner ASR enthält einen vortrainierten Text-Aligner, der Ordner JDC einen vortrainierten Pitch-Extraktor und der Ordner PLBERT ein vortrainiertes PL-BERT-Modell.

Häufige Probleme

  • Als Lösungen für NaN-Verluste und Speicherprobleme werden das Anpassen der Batch-Größe oder das Verringern des max_len-Werts vorgeschlagen.

Fine-Tuning

  • Durch Anpassen des Skripts train_second.py wird ein Fine-Tuning-Skript mit DP bereitgestellt; DDP funktioniert derzeit nicht.

Inferenz

  • Für die Inferenz mit den Datensätzen LJSpeech und LibriTTS auf die Notebook-Dateien verweisen; für LibriTTS ist eine Referenz-Audiodatei erforderlich.
  • Ein vortrainiertes StyleTTS-2-Modell kann heruntergeladen werden; vor der Verwendung sollte Zuhörern mitgeteilt werden, dass die synthetisierte Sprachprobe vom StyleTTS-2-Modell erzeugt wurde, oder es sollten nur Stimmen verwendet werden, für deren Nutzung eine Erlaubnis vorliegt.

Meinung von GN⁺

Das Wichtigste an diesem Beitrag ist, dass StyleTTS 2 eine TTS-Synthese auf menschlichem Niveau erreicht hat und damit das Potenzial von adversarialem Training mit Style Diffusion und großen Speech Language Models zeigt. Diese Technologie kann die Natürlichkeit der Sprachsynthese deutlich verbessern und durch die Fähigkeit, auch ohne Referenzstimme verschiedene Stile zu erzeugen, großen Einfluss auf die Weiterentwicklung sprachbasierter Schnittstellen und digitaler Assistenten haben.

1 Kommentare

 
GN⁺ 2023-11-20
Hacker-News-Kommentare
  • Erfahrungen bei der Entwicklung eines zu 100 % lokalen Sprach-Chatbots mit StyleTTS2

    • Ein mit Open-Source-Komponenten wie StyleTTS2, Whisper und OpenHermes2-Mistral-7B gebauter Chatbot reagiert deutlich schneller als ChatGPT.
    • Anders als herkömmliche Sprachassistenten sind natürliche Gespräche möglich; insbesondere auf einem Windows-Gaming-PC mit einer 12-GB-Nvidia-GPU lässt sich alles mit einem Klick installieren und sofort nutzen.
    • Die Demo ist etwas instabil (Kopfhörer erforderlich, Ausführung als Konsolen-App usw.), zeigt aber das Potenzial einer Zukunft, in der solche Open-Source-Kombinationen auf Gaming-PCs laufen.
  • Persönliche Einschätzung zur Sprachqualität von StyleTTS2

    • Die Stimme ist sehr gut, aber vor der Nutzung wäre ein Klon mit einer persönlich bevorzugten, angenehmen Stimme wünschenswert.
  • Geteilte Erfahrungen mit Installation und Nutzung von StyleTTS2

    • Geteilt werden Testerfahrungen mit StyleTTS2 sowie schrittweise Notizen, die für die lokale Einrichtung nützlich sein können.
    • Im Vergleich von Geschwindigkeit und Qualität mit dem LJSpeech-Modell ist StyleTTS2 sehr schnell und liefert eine gute Qualität.
  • Erfahrungen mit Installation und Betrieb von StyleTTS2

    • Die Dokumentation war etwas unvollständig, sodass die Installation leicht knifflig war, aber nach etwa 20 Minuten lief es unter WSL Ubuntu 22.04 gut.
    • Die Audioqualität ist sehr gut, und besonders mit einer 4090-GPU ist es sehr schnell.
    • An die Qualität von Eleven Labs reicht es nicht heran, aber die Stärke von Eleven liegt in einer vielfältigen Bibliothek hochwertiger Stimmen und in einer sofortigen Stimmklonfunktion, die schon mit einem nur fünfminütigen Sample erstaunlich gut funktioniert.
    • Es besteht die Hoffnung, dass solche Funktionen vollständig in Open-Source-Projekten verfügbar werden.
  • Vergleich zwischen StyleTTS2-Sprachbeispielen und echter Stimme

    • Die Sprachbeispiele von TTS2 klingen natürlicher als echte Stimmen.
    • Es ist spannend, diese Technologie für ePub-Dateien ohne Hörbuch zu nutzen, insbesondere für japanische Light Novels.
  • Bewertung der Audioqualität von StyleTTS2

    • Die Audioqualität ist hervorragend und auf einem Niveau, das man sich Anfang der 2000er kaum hätte vorstellen können.
    • Es gibt interessante Perspektiven für Spiele, in denen ein LLM die Rolle eines Charakters übernimmt und TTS NPCs eine Stimme verleiht.
  • Meinung zu Titel und Inhalt von StyleTTS2

    • Der aktuelle Hacker-News-Titel lautet „StyleTTS2 – Open-Source-Text-to-Speech in Eleven-Labs-Qualität“, aber weder im eigentlichen Titel noch im arXiv-Paper wird Eleven Labs erwähnt.
    • Dazu wird Sorge über diese redaktionelle Formulierung geäußert.
  • Frage zur Inferenzzeit von StyleTTS2

    • Gefragt wird nach einer groben Schätzung der Inferenzzeit auf modernen CPUs.
  • Frage zur Lizenz von StyleTTS2

    • Gefragt wird, ob die Nutzung für kommerzielle Zwecke ausgeschlossen ist, da die Lizenz nicht MIT ist.
  • Ausblick auf einen Marketplace für Text-to-Speech-Modelle

    • Es stellt sich die Frage, ob auch für Text-to-Speech-Modelle ein LoRA-Marketplace im Stil von Civitai entstehen wird.