Kecerdasan buatan

OpenVoice: Mengaktifkan Kloning Suara Instan yang Serba Guna

mm

Dalam sintesis Text-to-Speech (TTS), Kloning Suara Instan (IVC) memungkinkan model TTS untuk mengkloning suara pembicara referensi menggunakan sampel audio pendek, tanpa memerlukan pelatihan tambahan untuk pembicara referensi. Teknik ini juga dikenal sebagai Sintesis Text-to-Speech Zero-Shot. Pendekatan Kloning Suara Instan memungkinkan kustomisasi yang fleksibel dari suara yang dihasilkan dan menunjukkan nilai signifikan di berbagai situasi dunia nyata, termasuk chatbot yang dikustomisasi, pembuatan konten, dan interaksi antara manusia dan Model Bahasa Besar (LLM).

Meskipun kerangka kerja kloning suara saat ini melakukan tugasnya dengan baik, mereka dipenuhi dengan beberapa tantangan di bidang termasuk Kontrol Gaya Suara yang Fleksibel yaitu model kekurangan kemampuan untuk memanipulasi gaya suara dengan fleksibel setelah mengkloning suara. Hambatan besar lainnya yang dihadapi oleh kerangka kerja kloning suara instan saat ini adalah Kloning Suara Cross-Lingual Zero-Shot yaitu untuk keperluan pelatihan, model saat ini memerlukan akses ke dataset multi-bahasa besar atau MSML yang luas, terlepas dari bahasa.

Untuk mengatasi masalah ini, dan berkontribusi pada peningkatan model kloning suara instan, pengembang telah bekerja pada OpenVoice, sebuah kerangka kerja kloning suara instan yang serba guna yang mengkloning suara pengguna mana pun dan menghasilkan ucapan dalam beberapa bahasa menggunakan klip audio pendek dari pembicara referensi. OpenVoice menunjukkan bahwa model Kloning Suara Instan dapat mengkloning warna nada dari pembicara referensi, dan mencapai kontrol granular atas gaya suara termasuk aksen, irama, intonasi, jeda, dan bahkan emosi. Yang lebih mengesankan adalah bahwa kerangka kerja OpenVoice juga menunjukkan kemampuan luar biasa dalam mencapai kloning suara cross-lingual zero-shot untuk bahasa di luar dataset MSML, memungkinkan OpenVoice untuk mengkloning suara ke bahasa baru tanpa pelatihan ekstensif untuk bahasa tersebut. OpenVoice berhasil menghasilkan hasil kloning suara instan yang unggul sambil tetap memiliki biaya operasional yang viable dengan biaya hingga 10 kali lebih rendah daripada API yang tersedia saat ini dengan kinerja yang lebih rendah.

Dalam artikel ini, kita akan membahas kerangka kerja OpenVoice secara mendalam, dan kita akan membongkar arsitektur yang memungkinkan untuk menghasilkan kinerja unggul di berbagai tugas kloning suara instan. Jadi mari kita mulai.

OpenVoice: Mengaktifkan Kloning Suara Instan yang Serba Guna

Seperti yang disebutkan sebelumnya, Kloning Suara Instan, juga dikenal sebagai Sintesis Text-to-Speech Zero-Shot, memungkinkan model TTS untuk mengkloning suara pembicara referensi menggunakan sampel audio pendek tanpa memerlukan pelatihan tambahan untuk pembicara referensi. Kloning Suara Instan selalu menjadi topik penelitian yang populer dengan karya yang ada termasuk kerangka kerja XTTS dan VALLE yang mengekstrak embedding pembicara dan/atau token akustik dari audio referensi yang berfungsi sebagai kondisi untuk model auto-regresif. Model auto-regresif kemudian menghasilkan token akustik secara berurutan, dan kemudian mendekode token tersebut menjadi gelombang audio mentah.

Meskipun model kloning suara instan auto-regresif mengkloning warna nada dengan luar biasa, mereka kekurangan kemampuan untuk memanipulasi parameter gaya lainnya termasuk aksen, emosi, jeda, dan irama. Selain itu, model auto-regresif juga mengalami kecepatan inferensi yang rendah, dan biaya operasionalnya cukup tinggi. Pendekatan yang ada seperti kerangka kerja YourTTS menggunakan pendekatan non-auto-regresif yang menunjukkan kecepatan inferensi ucapan yang jauh lebih cepat daripada kerangka kerja auto-regresif, tetapi masih tidak dapat memberikan penggunanya kontrol yang fleksibel atas parameter gaya. Selain itu, baik kerangka kerja berbasis auto-regresif maupun non-auto-regresif memerlukan akses ke dataset multi-bahasa besar atau MSML untuk kloning suara cross-lingual.

Untuk mengatasi tantangan yang dihadapi oleh kerangka kerja kloning suara instan saat ini, pengembang telah bekerja pada OpenVoice, sebuah perpustakaan kloning suara instan yang terbuka yang bertujuan untuk menyelesaikan tantangan yang dihadapi oleh kerangka kerja IVC saat ini.

  1. Tantangan pertama adalah untuk memungkinkan kerangka kerja IVC memiliki kontrol yang fleksibel atas parameter gaya termasuk aksen, irama, intonasi, dan jeda. Parameter gaya sangat penting untuk menghasilkan percakapan alami dan ucapan dalam konteks daripada membacakan teks input dengan monoton.
  2. Tantangan kedua adalah untuk memungkinkan kerangka kerja IVC untuk mengkloning suara cross-lingual dalam pengaturan zero-shot.
  3. Tantangan terakhir adalah untuk mencapai kecepatan inferensi waktu nyata yang tinggi tanpa mengurangi kualitas.

Untuk mengatasi dua hambatan pertama, arsitektur kerangka kerja OpenVoice dirancang untuk memisahkan komponen dalam suara sebaik mungkin. Selain itu, OpenVoice menghasilkan warna nada, bahasa, dan fitur suara lainnya secara independen, memungkinkan kerangka kerja untuk memanipulasi jenis bahasa dan gaya suara secara fleksibel. Kerangka kerja OpenVoice mengatasi tantangan ketiga secara default karena struktur yang dipisahkan mengurangi kompleksitas komputasi dan kebutuhan ukuran model.

OpenVoice: Metodologi dan Arsitektur

Kerangka kerja teknis OpenVoice efektif dan cukup sederhana untuk diimplementasikan. Tidak ada rahasia bahwa mengkloning warna nada untuk pembicara mana pun, menambahkan bahasa baru, dan memungkinkan kontrol yang fleksibel atas parameter suara secara bersamaan dapat menjadi tantangan. Ini karena menjalankan tiga tugas ini secara bersamaan memerlukan parameter yang dikontrol untuk berpotongan menggunakan sebagian besar dataset kombinatorial. Selain itu, dalam sintesis text-to-speech tunggal pembicara yang biasa, untuk tugas yang tidak memerlukan kloning suara, lebih mudah untuk menambahkan kontrol atas parameter gaya lainnya. Berdasarkan hal ini, kerangka kerja OpenVoice bertujuan untuk memisahkan tugas Kloning Suara Instan menjadi sub-tugas. Model ini mengusulkan untuk menggunakan model Text-to-Speech pembicara dasar untuk mengontrol bahasa dan parameter gaya, dan menggunakan konverter warna nada untuk memasukkan warna nada referensi ke dalam suara yang dihasilkan.

Pada intinya, kerangka kerja OpenVoice menggunakan dua komponen: konverter warna nada, dan model Text-to-Speech pembicara dasar. Model Text-to-Speech pembicara dasar dapat berupa model tunggal pembicara atau multi-pembicara yang memungkinkan kontrol presisi atas parameter gaya, bahasa, dan aksen. Model ini menghasilkan suara yang kemudian diteruskan ke konverter warna nada, yang mengubah warna nada pembicara dasar ke warna nada pembicara referensi.

Kerangka kerja OpenVoice menawarkan banyak fleksibilitas ketika datang ke model Text-to-Speech pembicara dasar karena dapat menggunakan model VITS dengan sedikit modifikasi yang memungkinkan untuk menerima embedding bahasa dan gaya dalam prediktor durasi dan pengkode teks. Kerangka kerja ini juga dapat menggunakan model seperti Microsoft TTS yang secara komersial murah atau dapat menggunakannya. model seperti InstructTTS yang dapat menerima prompt gaya. Untuk saat ini, kerangka kerja OpenVoice menggunakan model VITS meskipun model lain juga merupakan pilihan yang layak.

Konverter Warna Nada adalah komponen encoder-decoder yang berisi aliran normalisasi yang dapat dibalik di tengah. Komponen encoder dalam konverter warna nada adalah CNN satu dimensi yang menerima spektrum Fourier waktu pendek dari model Text-to-Speech pembicara dasar sebagai input. Encoder kemudian menghasilkan peta fitur sebagai output. Ekstraktor warna nada adalah CNN dua dimensi sederhana yang beroperasi pada mel-spectrogram suara input, dan menghasilkan vektor fitur tunggal sebagai output yang mengkodekan informasi warna nada. Lapisan aliran normalisasi menerima peta fitur yang dihasilkan oleh encoder sebagai input dan menghasilkan representasi fitur yang melestarikan semua properti gaya tetapi menghilangkan informasi warna nada. Kerangka kerja OpenVoice kemudian menerapkan lapisan aliran normalisasi dalam arah terbalik, dan mengambil representasi fitur sebagai input dan menghasilkan lapisan aliran normalisasi. Kerangka kerja ini kemudian mendekode lapisan aliran normalisasi menjadi gelombang audio mentah menggunakan tumpukan konvolusi satu dimensi yang diputarbalik.

Arsitektur keseluruhan kerangka kerja OpenVoice adalah feed forward tanpa menggunakan komponen auto-regresif. Komponen konverter warna nada serupa dengan konversi suara pada tingkat konseptual tetapi berbeda dalam hal fungsionalitas, tujuan pelatihan, dan bias induktif dalam struktur model. Lapisan aliran normalisasi memiliki struktur yang sama dengan model text-to-speech berbasis aliran tetapi berbeda dalam hal fungsionalitas dan tujuan pelatihan.

Selain itu, ada pendekatan yang berbeda untuk mengekstrak representasi fitur, metode yang diimplementasikan oleh kerangka kerja OpenVoice memberikan kualitas audio yang lebih baik. Juga perlu diperhatikan bahwa kerangka kerja OpenVoice tidak memiliki niat untuk menciptakan komponen dalam arsitektur model, tetapi kedua komponen utama, yaitu konverter warna nada dan model Text-to-Speech pembicara dasar, keduanya berasal dari karya yang ada. Tujuan utama kerangka kerja OpenVoice adalah untuk membentuk kerangka kerja yang dipisahkan yang memisahkan kontrol bahasa dan gaya suara dari kloning warna nada. Meskipun pendekatan ini cukup sederhana, itu sangat efektif terutama pada tugas yang mengontrol gaya dan aksen, atau tugas generalisasi bahasa baru. Mencapai kontrol yang sama ketika menggunakan kerangka kerja yang dipisahkan memerlukan sejumlah besar komputasi dan data, dan tidak umum untuk bahasa baru.

Pada intinya, filosofi utama kerangka kerja OpenVoice adalah untuk memisahkan generasi bahasa dan gaya suara dari generasi warna nada. Salah satu kekuatan utama kerangka kerja OpenVoice adalah bahwa suara klon yang dihasilkan lancar dan berkualitas tinggi selama model Text-to-Speech tunggal pembicara berbicara dengan lancar.

OpenVoice: Eksperimen dan Hasil

Mengevaluasi tugas kloning suara adalah tugas yang sulit karena beberapa alasan. Pertama, karya yang ada sering menggunakan data pelatihan dan pengujian yang berbeda yang membuat perbandingan karya ini secara intrinsik tidak adil. Meskipun crowdsourcing dapat digunakan untuk mengevaluasi metrik seperti Skor Opini Rata-Rata, kesulitan dan keragaman data pengujian akan sangat mempengaruhi hasilnya. Kedua, metode kloning suara yang berbeda memiliki data pelatihan yang berbeda, dan keragaman dan skala data ini sangat mempengaruhi hasilnya. Terakhir, tujuan utama karya yang ada sering berbeda satu sama lain, sehingga mereka berbeda dalam fungsionalitasnya.

Karena tiga alasan di atas, tidak adil untuk membandingkan kerangka kerja kloning suara yang ada secara numerik. Sebaliknya, lebih masuk akal untuk membandingkan metode ini secara kualitatif.

Mengkloning Warna Nada yang Akurat

Untuk menganalisis kinerjanya, pengembang membangun sebuah set pengujian dengan individu anonim, karakter game, dan selebriti yang membentuk basis pembicara referensi, dan memiliki distribusi suara yang luas termasuk sampel netral dan suara ekspresif unik. Kerangka kerja OpenVoice dapat mengkloning warna nada referensi dan menghasilkan ucapan dalam beberapa bahasa dan aksen untuk pembicara referensi mana pun dan 4 pembicara dasar.

Kontrol Gaya Suara yang Fleksibel

Salah satu tujuan kerangka kerja OpenVoice adalah untuk mengontrol gaya ucapan dengan fleksibel menggunakan konverter warna nada yang dapat memodifikasi warna nada sambil melestarikan semua fitur suara dan properti lainnya.

Eksperimen menunjukkan bahwa model melestarikan gaya suara setelah mengubah ke warna nada referensi. Dalam beberapa kasus, model menetralkan emosi sedikit, masalah yang dapat diatasi dengan mengirimkan informasi yang lebih sedikit ke lapisan aliran sehingga mereka tidak dapat menghilangkan emosi. Kerangka kerja OpenVoice dapat melestarikan gaya dari suara dasar berkat penggunaan konverter warna nada. Ini memungkinkan kerangka kerja OpenVoice untuk memanipulasi model Text-to-Speech pembicara dasar dengan mudah untuk mengontrol gaya suara.

Kloning Suara Cross-Lingual

Kerangka kerja OpenVoice tidak termasuk data pembicara besar untuk bahasa yang tidak terlihat, namun dapat mencapai kloning suara cross-lingual yang hampir zero-shot. Kemampuan kloning suara cross-lingual kerangka kerja OpenVoice adalah dua lipat:

  1. Model dapat mengkloning warna nada pembicara referensi dengan akurat ketika bahasa pembicara referensi tidak terlihat dalam dataset multi-bahasa besar atau MSML.
  2. Selain itu, dalam peristiwa bahasa pembicara referensi tidak terlihat, kerangka kerja OpenVoice dapat mengkloning suara pembicara referensi dan berbicara dalam bahasa yang kondisi bahwa model Text-to-Speech pembicara dasar mendukung bahasa.

Pemikiran Akhir

Dalam artikel ini, kita telah membahas tentang OpenVoice, sebuah kerangka kerja kloning suara instan yang serba guna yang mengkloning suara pengguna mana pun dan menghasilkan ucapan dalam beberapa bahasa menggunakan klip audio pendek dari pembicara referensi. Intuisi utama di balik OpenVoice adalah bahwa selama model tidak perlu melakukan kloning warna nada pembicara referensi, kerangka kerja dapat menggunakan model Text-to-Speech pembicara dasar untuk mengontrol bahasa dan gaya suara.

OpenVoice menunjukkan bahwa model Kloning Suara Instan dapat mengkloning warna nada pembicara referensi dan mencapai kontrol granular atas gaya suara termasuk aksen, irama, intonasi, jeda, dan bahkan emosi. OpenVoice berhasil menghasilkan hasil kloning suara instan yang unggul sambil tetap memiliki biaya operasional yang viable dengan biaya hingga 10 kali lebih rendah daripada API yang tersedia saat ini dengan kinerja yang lebih rendah.

Seorang insinyur oleh profesi, seorang penulis oleh hati. Kunal adalah seorang penulis teknis dengan cinta yang mendalam & pemahaman tentang AI dan ML, yang didedikasikan untuk menyederhanakan konsep-konsep kompleks dalam bidang ini melalui dokumentasi yang menarik dan informatif.