KI-Modelle und Plattformen

OpenVoice: Vielseitige Instant Voice Cloning

mm
Unite.AI zu deinen bevorzugten Quellen auf Google hinzufügen

Bei der Text-to-Speech-Synthese (TTS) ermöglicht die Instant Voice Cloning (IVC) dem TTS-Modell, die Stimme eines Referenzsprechers mithilfe eines kurzen Audio-Samples zu klonen, ohne dass eine zusätzliche Schulung für den Referenzsprecher erforderlich ist. Diese Technik wird auch als Zero-Shot-Text-to-Speech-Synthese bezeichnet. Der Instant-Voice-Cloning-Ansatz ermöglicht eine flexible Anpassung der generierten Stimme und zeigt einen erheblichen Wert in einer Vielzahl von realen Situationen, einschließlich personalisierter Chatbots, Content-Erstellung und Interaktionen zwischen Menschen und großen Sprachmodellen (LLMs).

Obwohl die aktuellen Voice-Cloning-Frameworks ihre Arbeit gut erledigen, sind sie mit einigen Herausforderungen im Bereich konfrontiert, darunter Flexible Voice Style Control, d. h. Modelle fehlen die Fähigkeit, Voice-Styles flexibel nach dem Klonen der Stimme zu manipulieren. Ein weiteres großes Hindernis, das von aktuellen Instant-Cloning-Frameworks aufgerufen wird, ist Zero-Shot-Cross-Lingual-Voice-Cloning, d. h. für Schulungszwecke benötigen aktuelle Modelle Zugang zu einer umfangreichen, massiven Sprecher-Mehrsprachendatenbank (MSML), unabhängig von der Sprache.

Um diese Probleme zu lösen und zur Verbesserung von Instant-Voice-Cloning-Modellen beizutragen, haben Entwickler an OpenVoice gearbeitet, einem vielseitigen Instant-Voice-Cloning-Framework, das die Stimme eines Benutzers repliziert und Sprache in mehreren Sprachen mithilfe eines kurzen Audio-Clips des Referenzsprechers generiert. OpenVoice zeigt, dass Instant-Voice-Cloning-Modelle die Tonfarbe des Referenzsprechers replizieren und eine granulare Kontrolle über Voice-Styles einschließlich Akzent, Rhythmus, Intonation, Pausen und sogar Emotionen erreichen können. Was noch beeindruckender ist, ist, dass das OpenVoice-Framework auch bemerkenswerte Fähigkeiten bei der Erreichung von Zero-Shot-Cross-Lingual-Voice-Cloning für Sprachen außerhalb der MSML-Datenbank zeigt, was es OpenVoice ermöglicht, Stimmen in neue Sprachen zu klonen, ohne umfangreiche Vor-Schulung für diese Sprache. OpenVoice liefert überlegene Instant-Voice-Cloning-Ergebnisse, während es rechnerisch tragbar ist und Betriebskosten bis zu 10 Mal weniger als aktuell verfügbare APIs mit schlechterer Leistung aufweist.

In diesem Artikel werden wir über das OpenVoice-Framework im Detail sprechen und seine Architektur, die es ermöglicht, überlegene Leistung bei Instant-Voice-Cloning-Aufgaben zu erzielen, aufdecken. Also los geht’s.

OpenVoice: Vielseitige Instant Voice Cloning

Wie bereits erwähnt, ermöglicht Instant Voice Cloning, auch als Zero-Shot-Text-to-Speech-Synthese bezeichnet, dem TTS-Modell, die Stimme eines Referenzsprechers mithilfe eines kurzen Audio-Samples zu klonen, ohne dass eine zusätzliche Schulung für den Referenzsprecher erforderlich ist. Instant Voice Cloning war immer ein heißes Forschungsthema, mit bestehenden Arbeiten, einschließlich XTTS- und VALLE-Frameworks, die Sprecher-Embeddings und/oder akustische Token aus dem Referenz-Audio extrahieren, das als Bedingung für das auto-regressive Modell dient. Das auto-regressive Modell generiert dann akustische Token sequenziell und decodiert diese Token in ein rohes Audio-Signal.

Obwohl auto-regressive Instant-Voice-Cloning-Modelle die Tonfarbe bemerkenswert klonen, fehlt es ihnen an der Fähigkeit, andere Stilparameter wie Akzent, Emotion, Pausen und Rhythmus zu manipulieren. Darüber hinaus erleben auto-regressive Modelle eine niedrige Inferenzgeschwindigkeit, und ihre Betriebskosten sind ziemlich hoch. Bestehende Ansätze wie das YourTTS-Framework verwenden einen nicht-auto-regressiven Ansatz, der eine wesentlich schnellere Inferenzsprache über auto-regressive Ansätze zeigt, aber den Benutzern immer noch keine flexible Kontrolle über Stilparameter bietet. Darüber hinaus benötigen sowohl auto-regressive als auch nicht-auto-regressive Instant-Voice-Cloning-Frameworks Zugang zu einer großen MSML- oder massiven Sprecher-Mehrsprachendatenbank für Cross-Lingual-Voice-Cloning.

Um die Herausforderungen, denen sich die aktuellen Instant-Voice-Cloning-Frameworks gegenübersehen, zu lösen, haben Entwickler an OpenVoice gearbeitet, einer Open-Source-Instant-Voice-Cloning-Bibliothek, die darauf abzielt, die folgenden Herausforderungen zu lösen, denen sich die aktuellen IVC-Frameworks gegenübersehen.

  1. Die erste Herausforderung besteht darin, IVC-Frameworks zu ermöglichen, flexible Kontrolle über Stilparameter zu haben, einschließlich Akzent, Rhythmus, Intonation und Pausen. Stilparameter sind entscheidend, um natürliche Konversationen und Sprache zu generieren, anstatt den Eingabetext monoton zu erzählen.
  2. Die zweite Herausforderung besteht darin, IVC-Frameworks zu ermöglichen, Cross-Lingual-Stimmen in einer Zero-Shot-Umgebung zu klonen.
  3. Die dritte Herausforderung besteht darin, hohe Echtzeit-Inferenzgeschwindigkeiten zu erreichen, ohne die Qualität zu beeinträchtigen.

Um die ersten beiden Hürden zu überwinden, ist die Architektur des OpenVoice-Frameworks so konzipiert, dass es die Komponenten in der Stimme bestmöglich entkoppelt. Darüber hinaus generiert OpenVoice die Tonfarbe, die Sprache und andere Stimmeigenschaften unabhängig, was es dem Framework ermöglicht, individuelle Sprachtypen und Stimme-Stile flexibel zu manipulieren. Das OpenVoice-Framework überwindet die dritte Hürde standardmäßig, da die entkoppelte Struktur die rechnerische Komplexität und die Modellgröße reduziert.

OpenVoice: Methodik und Architektur

Das technische Framework des OpenVoice-Frameworks ist effektiv und überraschend einfach zu implementieren. Es ist kein Geheimnis, dass das Klonen der Tonfarbe für jeden Sprecher, das Hinzufügen einer neuen Sprache und die Ermöglichung flexibler Kontrolle über Stimme-Parameter gleichzeitig eine Herausforderung darstellen kann. Es liegt daran, dass die Ausführung dieser drei Aufgaben gleichzeitig die kontrollierten Parameter erfordert, die mithilfe einer großen Menge kombinierter Datensätze überschneiden. Darüber hinaus ist es in der regulären Einzelsprecher-Text-to-Speech-Synthese einfacher, Kontrolle über andere Stilparameter hinzuzufügen, wenn keine Stimmenklonierung erforderlich ist. Aufbauend auf diesen Erkenntnissen zielt das OpenVoice-Framework darauf ab, die Instant-Voice-Cloning-Aufgaben in UnterAufgaben zu unterteilen. Das Modell schlägt vor, ein Basis-Sprecher-Text-to-Speech-Modell zu verwenden, um die Sprache und die Stilparameter zu kontrollieren, und einen Tonfarben-Konverter, um die Referenz-Tonfarbe in die generierte Stimme einzubeziehen.

Im Kern verwendet das OpenVoice-Framework zwei Komponenten: einen Tonfarben-Konverter und ein Basis-Sprecher-Text-to-Speech- oder TTS-Modell. Das Basis-Sprecher-Text-to-Speech-Modell ist entweder ein Einzelsprecher- oder ein Mehrsprecher-Modell, das eine präzise Kontrolle über Stilparameter, Sprache und Akzent ermöglicht. Das Modell generiert eine Stimme, die dann an den Tonfarben-Konverter weitergeleitet wird, der die Basis-Sprecher-Tonfarbe in die Tonfarbe des Referenzsprechers ändert.

Das OpenVoice-Framework bietet eine Vielzahl von Flexibilität, wenn es um das Basis-Sprecher-Text-to-Speech-Modell geht, da es das VITS-Modell mit leichten Modifikationen verwenden kann, um Sprache- und Stil-Embeddings in seinem Dauer-Predictor und Text-Encoder zu akzeptieren. Das Framework kann auch Modelle wie Microsoft (MSFT ) TTS verwenden, die kommerziell günstig sind, oder Modelle wie InstructTTS, die in der Lage sind, Stil-Prompts zu akzeptieren. Derzeit verwendet das OpenVoice-Framework das VITS-Modell, obwohl die anderen Modelle auch eine gangbare Option sind.

Kommend auf die zweite Komponente, ist der Tonfarben-Konverter eine Encoder-Decoder-Komponente, die einen invertierbaren Normalisierungsfluss in der Mitte beherbergt. Die Encoder-Komponente im Tonfarben-Konverter ist ein eindimensionales CNN, das das kurzzeitige Fourier-Transformations-Spektrum des Basis-Sprecher-Text-to-Speech-Modells als Eingabe akzeptiert. Die Encoder-Komponente generiert dann Feature-Maps als Ausgabe. Der Tonfarben-Extraktor ist ein einfaches zweidimensionales CNN, das auf dem Mel-Spektrum der Eingabestimme operiert und einen einzelnen Feature-Vektor als Ausgabe generiert, der die Informationen der Tonfarbe codiert. Die Normalisierungsfluss-Schichten akzeptieren die Feature-Maps, die von der Encoder-Komponente generiert werden, als Eingabe und generieren eine Feature-Repräsentation, die alle Stil-Eigenschaften bewahrt, aber die Tonfarben-Informationen eliminiert. Das OpenVoice-Framework wendet dann die Normalisierungsfluss-Schichten in umgekehrter Richtung an und nimmt die Feature-Repräsentationen als Eingabe und gibt die Normalisierungsfluss-Schichten aus. Das Framework decodiert dann die Normalisierungsfluss-Schichten in rohe Wellenformen mithilfe eines Stapels transponierter eindimensionaler Konvolutionen.

Die gesamte Architektur des OpenVoice-Frameworks ist feed-forward, ohne die Verwendung von auto-regressiven Komponenten. Die Tonfarben-Konverter-Komponente ist konzeptionell ähnlich wie die Stimmenkonvertierung, aber unterscheidet sich in Bezug auf Funktionalität, Trainingsziele und induktive Voreingenommenheit in der Modellstruktur. Die Normalisierungsfluss-Schichten teilen die gleiche Struktur wie flussbasierte Text-to-Speech-Modelle, aber unterscheiden sich in Bezug auf Funktionalität und Trainingsziele.

Darüber hinaus gibt es einen anderen Ansatz, um Feature-Repräsentationen zu extrahieren, die Methode, die vom OpenVoice-Framework implementiert wird, liefert eine bessere Audioqualität. Es ist auch erwähnenswert, dass das OpenVoice-Framework keine Absicht hat, Komponenten in der Modellarchitektur zu erfinden, sondern dass beide Hauptkomponenten, nämlich der Tonfarben-Konverter und das Basis-Sprecher-TTS-Modell, aus bestehenden Arbeiten stammen. Das primäre Ziel des OpenVoice-Frameworks ist es, ein entkoppeltes Framework zu bilden, das die Sprachsteuerung und die Stimme-Stile von der Tonfarben-Klonierung trennt. Obwohl der Ansatz ziemlich einfach ist, ist er ziemlich effektiv, insbesondere bei Aufgaben, die Stile und Akzente steuern oder neue Sprachgeneralisierungsaufgaben.

Im Kern ist die Hauptphilosophie des OpenVoice-Frameworks, die Generierung von Sprache und Stimme-Stilen von der Generierung der Tonfarbe zu trennen. Eine der größten Stärken des OpenVoice-Frameworks ist, dass die geklonte Stimme flüssig und von hoher Qualität ist, solange das Einzelsprecher-TTS-Modell flüssig spricht.

OpenVoice: Experiment und Ergebnisse

Die Bewertung von Stimmenklonierungsaufgaben ist ein hartes Ziel aufgrund zahlreicher Gründe. Zunächst verwenden bestehende Arbeiten oft unterschiedliche Trainings- und Testdaten, was den Vergleich dieser Arbeiten intrinsisch unfair macht. Obwohl Crowdsourcing verwendet werden kann, um Metriken wie den Mittelwert der Meinungen zu bewerten, wird das Ergebnis erheblich von der Schwierigkeit und Vielfalt der Testdaten beeinflusst. Zweitens haben unterschiedliche Stimmenklonierungsmethoden unterschiedliche Trainingsdaten, und die Vielfalt und Größe dieser Daten beeinflussen das Ergebnis erheblich. Schließlich unterscheiden sich die primären Ziele bestehender Arbeiten voneinander, daher unterscheiden sie sich in ihrer Funktionalität.

Aufgrund der drei oben genannten Gründe ist es unfair, bestehende Stimmenklonierungsfameworks numerisch zu vergleichen. Stattdessen ist es sinnvoller, diese Methoden qualitativ zu vergleichen.

Genaue Tonfarben-Klonierung

Um seine Leistung zu analysieren, bauen Entwickler einen Testdatensatz mit anonymen Personen, Spielcharakteren und Berühmtheiten auf, der eine breite Stimmenverteilung einschließlich neutraler Proben und einzigartiger ausdrucksstarker Stimmen umfasst. Das OpenVoice-Framework kann die Referenz-Tonfarbe klonen und Sprache in mehreren Sprachen und Akzenten für jeden der Referenzsprecher und die 4 Basis-Sprecher generieren.

Flexible Kontrolle über Stimme-Stile

Eines der Ziele des OpenVoice-Frameworks ist es, die Sprechstile flexibel mithilfe des Tonfarben-Konverters zu steuern, der die Tonfarbe ändern kann, während alle anderen Stimme-Eigenschaften und -Merkmale erhalten bleiben.

Experimente zeigen, dass das Modell die Sprechstile nach der Umwandlung in die Referenz-Tonfarbe bewahrt. In einigen Fällen jedoch neutralisiert das Modell die Emotionen leicht, ein Problem, das durch das Weiterleiten weniger Informationen an die Fluss-Schichten gelöst werden kann, sodass sie nicht in der Lage sind, die Emotion zu eliminieren. Das OpenVoice-Framework kann die Stile von der Basis-Stimme dank der Verwendung eines Tonfarben-Konverters bewahren. Es ermöglicht dem OpenVoice-Framework, das Basis-Sprecher-Text-to-Speech-Modell leicht zu manipulieren, um die Sprechstile zu steuern.

Cross-Lingual-Stimmen-Klonierung

Das OpenVoice-Framework umfasst keine massiven Sprecher-Daten für eine unbekannte Sprache, kann jedoch nahezu Cross-Lingual-Stimmen-Klonierung in einer Zero-Shot-Umgebung erreichen. Die Cross-Lingual-Stimmen-Klonierungsfähigkeiten des OpenVoice-Frameworks sind zweifach:

  1. Das Modell kann die Tonfarbe des Referenzsprechers genau klonen, wenn die Sprache des Referenzsprechers in der MSML-Datenbank nicht vorhanden ist.
  2. Darüber hinaus kann das OpenVoice-Framework in derselben Situation, in der die Sprache des Referenzsprechers nicht in der MSML-Datenbank vorhanden ist, die Stimme des Referenzsprechers klonen und in der Sprache sprechen, vorausgesetzt, dass das Basis-Sprecher-Text-to-Speech-Modell die Sprache unterstützt.

Schlussgedanken

In diesem Artikel haben wir über OpenVoice gesprochen, ein vielseitiges Instant-Voice-Cloning-Framework, das die Stimme eines Benutzers repliziert und Sprache in mehreren Sprachen mithilfe eines kurzen Audio-Clips des Referenzsprechers generiert. Die primäre Intuition hinter OpenVoice ist, dass solange ein Modell nicht die Tonfarbe des Referenzsprechers klonen muss, ein Framework ein Basis-Sprecher-TTS-Modell verwenden kann, um die Sprache und die Stimme-Stile zu steuern.

OpenVoice zeigt, dass Instant-Voice-Cloning-Modelle die Tonfarbe des Referenzsprechers replizieren und eine granulare Kontrolle über Stimme-Stile einschließlich Akzent, Rhythmus, Intonation, Pausen und sogar Emotionen erreichen können. OpenVoice liefert überlegene Instant-Voice-Cloning-Ergebnisse, während es rechnerisch tragbar ist und Betriebskosten bis zu 10 Mal weniger als aktuell verfügbare APIs mit schlechterer Leistung aufweist.

Kunal Kejriwal ist Backend‑Entwickler und spezialisiert auf Python, PostgreSQL, Redis sowie Cloud‑Infrastruktur auf GCP und AWS. Mit drei Jahren Erfahrung im Aufbau und Skalieren von Produktionssystemen schreibt er über KI‑Infrastruktur, verteilte Systeme und die Architektur hinter der Bereitstellung von Machine‑Learning‑Arbeitslasten.