Conectează-te cu noi

Inteligența artificială

OpenVoice: Clonarea vocală instantanee versatilă

mm

În sinteza text-to-speech (TTS), Instant Voice Cloning (IVC) permite modelului TTS să cloneze vocea oricărui difuzor de referință folosind o scurtă mostră audio, fără a necesita instruire suplimentară pentru difuzorul de referință. Această tehnică este cunoscută și sub denumirea de Sinteză Text-to-Speech Zero-Shot. Abordarea Instant Voice Cloning permite personalizarea flexibilă a vocii generate și demonstrează o valoare semnificativă într-o gamă largă de situații din lumea reală, inclusiv chatbot-uri personalizate, crearea de conținut și interacțiunile dintre oameni și modele de limbaj mari (LLM).

Deși cadrele actuale de clonare a vocii își fac bine treaba, acestea sunt pline de câteva provocări în domeniu, inclusiv Control flexibil al stilului vocal adică modelele nu au capacitatea de a manipula stilurile de voce în mod flexibil după clonarea vocii. Un alt obstacol major întâlnit de cadrele actuale de clonare instantanee este Clonarea vocii interlingvistice Zero-Shot adică, în scopuri de instruire, modelele actuale necesită acces la un set de date extins, multilingv sau MSML, cu vorbitori masivi, indiferent de limbă. 

Pentru a rezolva aceste probleme și pentru a contribui la îmbunătățirea modelelor de clonare instantanee a vocii, dezvoltatorii au lucrat la OpenVoice, un cadru versatil de clonare instantanee a vocii care reproduce vocea oricărui utilizator și generează vorbire în mai multe limbi folosind un scurt clip audio de la difuzorul de referință. . OpenVoice demonstrează că modelele Instant Voice Cloning pot reproduce culoarea tonului difuzorului de referință și pot obține un control granular asupra stilurilor de voce, inclusiv accent, ritm, intonație, pauze și chiar emoții. Ceea ce este mai impresionant este că cadrul OpenVoice demonstrează, de asemenea, capacități remarcabile în realizarea clonării vocii interlingvistice zero-shot pentru limbi externe setului de date MSML, permițând OpenVoice să cloneze voci în limbi noi fără o pregătire prealabilă extinsă pentru limba respectivă. OpenVoice reușește să ofere rezultate superioare de clonare instantanee a vocii, fiind în același timp viabil din punct de vedere computațional, cu costuri de operare de până la 10 ori mai mici decât API-urile actuale disponibile cu performanțe inferioare. 

În acest articol, vom vorbi despre cadrul OpenVoice în profunzime și vom descoperi arhitectura acestuia care îi permite să ofere performanțe superioare în sarcinile de clonare instantanee a vocii. Asadar, haideti sa începem. 

OpenVoice: Activarea clonării vocale instantanee versatile

După cum am menționat mai devreme, Instant Voice Cloning, denumită și Sinteză text în vorbire Zero-Shot, permite modelului TTS să cloneze vocea oricărui difuzor de referință folosind un scurt eșantion audio fără a fi nevoie de vreo pregătire suplimentară pentru difuzorul de referință. Clonarea instantanee a vocii a fost întotdeauna un subiect fierbinte de cercetare cu lucrările existente, inclusiv cadrele XTTS și VALLE care extrag încorporarea difuzorului și/sau simbolurile acustice din sunetul de referință care servește ca o condiție pentru modelul auto-regresiv. Modelul auto-regresiv generează apoi jetoane acustice secvenţial, apoi decodifică aceste jetoane într-o formă de undă audio brută. 

Deși modelele auto-regresive de clonare instantanee a vocii clonează culoarea tonului în mod remarcabil, nu manipulează alți parametri de stil, inclusiv accentul, emoția, pauzele și ritmul. În plus, modelele auto-regresive înregistrează, de asemenea, viteze de inferență scăzute, iar costurile lor operaționale sunt destul de mari. Abordările existente, cum ar fi cadrul YourTTS, folosesc o abordare non-autoregresivă care demonstrează un discurs de inferență semnificativ mai rapid față de cadrele de abordare autoregresivă, dar încă nu pot oferi utilizatorilor lor control flexibil asupra parametrilor de stil. Mai mult decât atât, atât cadrele de clonare instantanee a vocii bazate pe autoregresiv cât și cele neautoregresive au nevoie de acces la un MSML mare sau la un set de date multilingv cu vorbitori masivi pentru clonarea vocii interlingve. 

Pentru a face față provocărilor cu care se confruntă cadrele actuale de clonare instantanee a vocii, dezvoltatorii au lucrat la OpenVoice, o bibliotecă open source de clonare instantanee a vocii care își propune să rezolve următoarele provocări cu care se confruntă cadrele IVC actuale. 

  1. Prima provocare este de a permite cadrelor IVC să aibă control flexibil asupra parametrilor stilului, pe lângă culoarea tonului, inclusiv accent, ritm, intonație și pauze. Parametrii de stil sunt cruciali pentru a genera conversații și vorbire naturale în context, mai degrabă decât pentru a nara monoton textul introdus. 
  2. A doua provocare este de a permite cadrelor IVC să cloneze voci interlingvistice într-un cadru zero-shot. 
  3. Provocarea finală este de a obține viteze mari de inferență în timp real fără a deteriora calitatea. 

Pentru a face față primelor două obstacole, arhitectura cadrului OpenVoice este concepută astfel încât să decupleze componentele din voce la maximum posibilitățile sale. În plus, OpenVoice generează în mod independent culoarea tonului, limbajul și alte funcții de voce, permițând cadrului să manipuleze în mod flexibil tipurile de limbă și stilurile de voce individuale. Cadrul OpenVoice abordează a treia provocare în mod implicit, deoarece structura decuplată reduce complexitatea de calcul și cerințele de dimensiune a modelului. 

OpenVoice: Metodologie și arhitectură

Cadrul tehnic al cadrului OpenVoice este eficient și surprinzător de simplu de implementat. Nu este un secret pentru nimeni că clonarea culorii tonului pentru orice difuzor, adăugarea unei limbi noi și permiterea simultană a controlului flexibil asupra parametrilor vocali poate fi o provocare. Este așa, deoarece executarea simultană a acestor trei sarcini necesită ca parametrii controlați să se intersecteze folosind o mare parte de seturi de date combinatorii. În plus, într-un singur difuzor obișnuit sinteza text în vorbire, pentru sarcinile care nu necesită clonarea vocii, este mai ușor să adăugați control asupra altor parametri de stil. Bazându-se pe acestea, cadrul OpenVoice își propune să decupleze sarcinile de clonare instantă a vocii în subsarcini. Modelul propune utilizarea unui model de difuzor de bază Text to Speech pentru a controla parametrii de limbă și stil și folosește un convertor de culoare a tonurilor pentru a include culoarea tonului de referință în vocea generată. Figura următoare demonstrează arhitectura cadrului. 

În esență, cadrul OpenVoice folosește două componente: un convertor de tonuri de culoare și un difuzor de bază text în vorbire sau model TTS. Modelul difuzorului de bază text în vorbire este fie un singur difuzor, fie un model cu mai multe difuzoare, permițând control precis asupra parametrilor de stil, limbă și accent. Modelul generează o voce care este apoi transmisă convertorului de culoare a tonurilor, care schimbă culoarea tonului difuzorului de bază în culoarea tonului difuzorului de referință. 

Cadrul OpenVoice oferă multă flexibilitate atunci când vine vorba de modelul de bază text la vorbire, deoarece poate folosi modelul VITS cu modificări ușoare, permițându-i să accepte încorporarea de limbă și stil în predictorul de durată și codificatorul de text. Cadrul poate folosi, de asemenea, modele precum Microsoft TTS care sunt ieftine din punct de vedere comercial sau poate implementa modele precum InstructTTS care sunt capabile să accepte solicitări de stil. Deocamdată, cadrul OpenVoice folosește modelul VITS, deși celelalte modele sunt, de asemenea, o opțiune fezabilă. 

Venind la a doua componentă, Tone Color Converter este o componentă de codificator-decodor care găzduiește un flux de normalizare inversabil în centru. Componenta codificatorului din convertorul de tonuri de culoare este un CNN unidimensional care acceptă ca intrare spectrul transformat Fourier de scurtă durată al modelului de bază text în vorbire. Codificatorul generează apoi hărți de caracteristici ca ieșire. Extractorul de culori pentru tonuri este un simplu CNN bidimensional care operează pe spectrograma mel a vocii de intrare și generează un singur vector caracteristic ca ieșire care codifică informațiile culorii tonului. Straturile de flux de normalizare acceptă hărțile de caracteristici generate de codificator ca intrare și generează o reprezentare a caracteristicilor care păstrează toate proprietățile stilului, dar elimină informațiile de culoare de ton. Cadrul OpenVoice aplică apoi straturile de flux de normalizare în direcția inversă și ia reprezentările caracteristicilor ca intrare și scoate la ieșire straturile de flux de normalizare. Cadrul decodifică apoi straturile de flux de normalizare în forme de undă brute folosind o stivă de convoluții unidimensionale transpuse. 

Întreaga arhitectură a cadrului OpenVoice este alimentată fără utilizarea vreunei componente auto-regresive. Componenta convertorului de tonuri de culoare este similară cu conversia vocii la nivel conceptual, dar diferă în ceea ce privește funcționalitatea, obiectivele de antrenament și o părtinire inductivă în structura modelului. Straturile de flux de normalizare împărtășesc aceeași structură ca modelele text în vorbire bazate pe flux, dar diferă în ceea ce privește funcționalitatea și obiectivele de instruire. 

În plus, există o abordare diferită pentru extragerea reprezentărilor caracteristicilor, metoda implementată de cadrul OpenVoice oferă o calitate audio mai bună. De asemenea, este de remarcat faptul că framework-ul OpenVoice nu are intenția de a inventa componente în arhitectura modelului, mai degrabă atât componentele principale, adică convertorul de culori de ton, cât și modelul de difuzor de bază TTS, sunt ambele provenite din lucrări existente. Scopul principal al cadrului OpenVoice este de a forma un cadru decuplat care separă controlul limbajului și stilul vocii de clonarea culorii tonului. Deși abordarea este destul de simplă, este destul de eficientă mai ales în sarcinile care controlează stilurile și accentele, sau sarcinile de generalizare a limbii noi. Obținerea aceluiași control atunci când se utilizează un cadru cuplat necesită o cantitate mare de calcul și date și nu se generalizează bine la noile limbaje. 

În esență, filozofia principală a cadrului OpenVoice este de a decupla generarea de limbaj și stiluri de voce de generarea de culoare a tonurilor. Unul dintre punctele forte majore ale cadrului OpenVoice este că vocea clonă este fluentă și de înaltă calitate, atâta timp cât TTS cu un singur difuzor vorbește fluent. 

OpenVoice: Experiment și rezultate

Evaluarea sarcinilor de clonare a vocii este un obiectiv dificil din numeroase motive. Pentru început, lucrările existente folosesc adesea diferite date de instruire și testare, ceea ce face ca compararea acestor lucrări să fie intrinsec nedreaptă. Deși crowd-sourcing-ul poate fi folosit pentru a evalua valori precum Scorul mediu de opinie, dificultatea și diversitatea datelor testului vor influența în mod semnificativ rezultatul general. În al doilea rând, diferitele metode de clonare a vocii au date de antrenament diferite, iar diversitatea și scara acestor date influențează în mod semnificativ rezultatele. În cele din urmă, obiectivul principal al lucrărilor existente diferă adesea unul de celălalt, prin urmare diferă prin funcționalitatea lor. 

Din cauza celor trei motive menționate mai sus, este nedrept să compari numeric cadrele existente de clonare a vocii. În schimb, este mult mai logic să comparăm aceste metode calitativ. 

Clonarea corectă a culorii tonurilor

Pentru a-i analiza performanța, dezvoltatorii construiesc un set de testare cu indivizi anonimi, personaje din joc și celebrități care formează baza de difuzoare de referință și are o distribuție largă a vocii, incluzând atât mostre neutre, cât și voci expresive unice. Cadrul OpenVoice este capabil să cloneze culoarea tonului de referință și să genereze vorbire în mai multe limbi și accente pentru oricare dintre difuzoarele de referință și cele 4 difuzoare de bază. 

Control flexibil asupra stilurilor de voce

Unul dintre obiectivele cadrului OpenVoice este de a controla stilurile de vorbire în mod flexibil utilizând convertorul de culoare a tonurilor care poate modifica tonul de culoare, păstrând în același timp toate celelalte caracteristici și proprietăți ale vocii. 

Experimentele indică faptul că modelul păstrează stilurile de voce după conversia la culoarea tonului de referință. În unele cazuri însă, modelul neutralizează ușor emoțiile, o problemă care poate fi rezolvată prin transmiterea mai puține informații straturilor de flux, astfel încât acestea să nu poată scăpa de emoție. Cadrul OpenVoice este capabil să păstreze stilurile din vocea de bază datorită utilizării unui convertor de culoare a tonurilor. Permite cadrului OpenVoice să manipuleze modelul de bază text în vorbire pentru a controla cu ușurință stilurile de voce. 

Clonarea vocii interlingvistice

Cadrul OpenVoice nu include date de vorbitor masiv pentru o limbă nevăzută, dar este capabil să realizeze clonarea vocii aproape interlingvistice într-o setare zero-shot. Capacitățile de clonare a vocii interlingvistice ale cadrului OpenVoice sunt de două ori:

  1. Modelul poate clona cu acuratețe culoarea tonului difuzorului de referință atunci când limba vorbitorului de referință nu este văzută în setul de date cu mai multe limbi sau MSML. 
  2. Mai mult, în același caz în care limba vorbitorului de referință rămâne nevăzută, cadrul OpenVoice este capabil să cloneze vocea vorbitorului de referință și să vorbească în limba respectivă, cu condiția ca modelul de bază text la vorbire să accepte limba. 

Gânduri finale

În acest articol am vorbit despre OpenVoice, un cadru versatil de clonare instantanee a vocii care reproduce vocea oricărui utilizator și generează vorbire în mai multe limbi folosind un scurt clip audio de la difuzorul de referință. Intuiția principală din spatele OpenVoice este că atâta timp cât un model nu trebuie să efectueze clonarea tonului de culoare a difuzorului de referință, un cadru poate folosi un model de difuzor de bază TTS pentru a controla limba și stilurile de voce. 

OpenVoice demonstrează că modelele Instant Voice Cloning pot reproduce culoarea tonului difuzorului de referință și pot obține un control granular asupra stilurilor de voce, inclusiv accent, ritm, intonație, pauze și chiar emoții. OpenVoice reușește să ofere rezultate superioare de clonare instantanee a vocii, fiind în același timp viabil din punct de vedere computațional, cu costuri de operare de până la 10 ori mai mici decât API-urile actuale disponibile cu performanțe inferioare. 

„Un inginer de profesie, un scriitor pe de rost”. Kunal este un scriitor tehnic cu o dragoste și o înțelegere profundă a AI și ML, dedicat simplificării conceptelor complexe din aceste domenii prin documentația sa captivantă și informativă.