openvoice ، شبیه سازی فوری صدا با هوش مصنوعی
-
1402/11/25
-
موزيک
-
6509
-
0
-
0
در فناوری تولید گفتار، مدل TTS از تکنیک سنتز متن به گفتار صفر شات یا همان IVC برای تقلید صدای هر بلندگوی مرجع استفاده میکند. این امکان را فراهم میکند که با استفاده از یک نمونه صوتی کوتاه، بدون نیاز به آموزش اضافی برای هر بلندگو، صداها را شبیهسازی کند. این رویکرد به معنای شبیهسازی صدای یک بلندگو بدون آموزش مجدد آن بلندگو استفاده میشود. این تکنیک امکان انعطافپذیری در سفارشیسازی صدای تولیدی را فراهم میکند و در مواقع مختلفی از جمله چتباتهای سفارشی، ایجاد محتوا، و تعاملات انسانی با مدلهای زبان بزرگ (LLM) کاربرد دارد.
هرچند چارچوبهای شبیهسازی صوتی فعلی وظایف خود را به خوبی انجام میدهند، اما با چالشهایی در مقابله هستند. این چالشها شامل کنترل انعطافپذیری در سبک صدا میشود، به این معنا که مدلها قادر به تغییر سبکهای صوتی به صورت انعطافپذیر پس از تولید صدا نیستند. یک چالش دیگر نیز در زمینه شبیهسازی صوتی صفر شات وجود دارد، به این معنا که مدلهای آموزش دیده برای اهداف خاص بدون نیاز به دسترسی به دادههای چندزبانه یا MSML وجود ندارند.
برای حل این چالشها و بهبود مدلهای شبیهسازی صدای فوری، توسعهدهندگان به توسعه چارچوب OpenVoice پرداختهاند. OpenVoice یک چارچوب همهکاره شبیهسازی صدای فوری است که قادر به تکرار صدای هر کاربر با استفاده از یک کلیپ صوتی کوتاه از بلندگوی مرجع است و گفتار را به چندین زبان تولید میکند. OpenVoice نشان میدهد که مدلهای Instant Voice Cloning میتوانند به دقت رنگ صدای بلندگوی مرجع را بازتولید کنند و قابلیت کنترل دقیق بر سبکهای صدا از جمله لهجه، ریتم، لحن، مکث و حتی احساسات را به دست میدهند.
چارچوب OpenVoice حتی قابلیتهای قابلتوجهی در حوزه شبیهسازی صوتی متقابل زبانی صفر شات برای زبانهایی خارج از مجموعه داده MSML نشان میدهد. این به OpenVoice این امکان را میدهد که بدون نیاز به دادههای گسترده آموزشی برای هر زبان، صداها را به زبانهای جدید شبیهسازی کند.
OpenVoice بهترین نتایج شبیهسازی صوتی فوری را ارائه میدهد و همزمان با این امکانات عالی، هزینههای محاسباتی آن تا 10 برابر کمتر از APIهای موجود با عملکرد کمتر است. در این مقاله، به بررسی عمیق چارچوب OpenVoice و معماری آن میپردازیم تا ببینیم چگونه این چارچوب عملکرد برتر در وظایف شبیهسازی صوتی فوری ارائه میدهد. بیایید با شروع به توضیحات، به تحلیل این چارچوب پرداخته و به جزئیات آن بپردازیم.
OpenVoice: فعال کردن فوری صدای همه کاره
همانطور که قبلاً اشاره شد، شبیهسازی صوتی فوری یا ترکیب متن به گفتار صفر شات به مدل TTS این امکان را میدهد که با استفاده از یک نمونه صوتی کوتاه از بلندگوی مرجع، بدون نیاز به آموزش اضافی، صدای هر بلندگو را شبیهسازی کند. این زمینه همواره یک موضوع تحقیقاتی پرطرفدار بوده و چارچوبهایی مانند XTTS و VALLE در آن به کار گرفته شدهاند. این چارچوبها بلندگو و یا نشانههای آکوستیک را از صدای مرجع استخراج کرده و از آنها به عنوان شرط برای مدل رگرسیون خودکار استفاده میکنند. سپس، این مدل توکنهای صوتی را به صورت متوالی تولید و سپس این نشانهها را به شکل موج صوتی خام رمزگشایی میکند.
اگرچه مدلهای شبیهسازی فوری قادر به شبیهسازی رنگ تن صدای رگرسیون خودکار هستند، اما در تغییر سایر پارامترهای سبک مثل لهجه، احساسات، مکث و ریتم کاسته میشوند. همچنین، این مدلها با سرعت استنتاج پایینی روبرو هستند و هزینههای عملیاتی آنها بسیار بالا است. رویکردهایی مانند چارچوب YourTTS از یک رویکرد غیر خود رگرسیون استفاده میکنند که سریعترین استنتاج گفتار را نسبت به چارچوبهای رویکرد خود رگرسیون ارائه میدهد، اما هنوز قادر به ارائه کنترل انعطافپذیر بر پارامترهای سبک به کاربران نیستند. همچنین، چارچوبهای شبیهسازی صوتی فوری خودرگرسیون و غیرخودرگرسیون هر دو نیاز به دسترسی به مجموعه دادههای چندزبانه MSML یا بلندگوی عظیم برای شبیهسازی صدای چندزبانه دارند.
برای پاسخ به چالشهایی که چارچوبهای شبیهسازی صدای فوری در حال حاضر با آن مواجه هستند، توسعهدهندگان به روی OpenVoice کار کردهاند، یک کتابخانه باز شبیهسازی فوری صدای منبع. هدف این کتابخانه حل چالشهای زیر در چارچوبهای فعلی IVC است.
اولین چالش این است که ما میخواهیم چارچوبهای IVC قابلیت کنترل انعطافپذیری بر پارامترهای سبک را بهخوبی داشته باشند، به جز از رنگ تن مانند لهجه، ریتم، آهنگ، و مکث. پارامترهای سبک برای تولید محتواهای مکالمه و گفتار طبیعی درونمتنی، به جای روایت یکنواخت متن ورودی، بسیار حائز اهمیت هستند.
چالش دوم، توانمند ساختن چارچوبهای IVC برای شبیهسازی صداهای بینزبانی در یک محیط صفر است.
چالش نهایی، دستیابی به سرعت استنتاج بلادرنگ بالا بدون افت کیفیت است.
برای مقابله با دو چالش اول، معماری چارچوب OpenVoice به گونهای طراحی شده است که اجزای صوت را به بهترین شکل ممکن از یکدیگر جدا کند. علاوه بر این، OpenVoice رنگ تن، زبان و ویژگیهای دیگر صوتی را به صورت مستقل تولید میکند و این چارچوب را قادر میسازد تا به انعطافپذیری برای دستکاری انواع زبانها و سبکهای صوتی بپردازد. چارچوب OpenVoice به طور پیشفرض با چالش سوم نیز مقابله میکند، زیرا ساختار جدا شده پیچیدگی محاسباتی و نیازهای اندازه مدل را کاهش میدهد.
OpenVoice: روششناسی و معماری
چارچوب فنی OpenVoice به طریقی کارآمد و شگفتانگیز برای پیادهسازی ساده است. کمتر کسی نمیداند که شبیهسازی رنگ تن برای هر گوینده، افزودن زبان جدید و همچنین فعال کردن کنترل انعطافپذیر بر پارامترهای صدا بهطور همزمان میتواند چالش برانگیز باشد. این به علت این است که اجرای همزمان این سه وظیفه نیاز به ترکیب پارامترهای کنترل شده با استفاده از یک تکه بزرگ از مجموعه دادههای ترکیبی دارد. به علاوه، در ترکیب معمولی تک بلندگوی متن به گفتار، افزودن کنترل بر سایر پارامترهای سبک آسانتر است. با تکیه بر این نکات، چارچوب OpenVoice قصد دارد وظایف فوری Instant Voice Cloning را به وظایف جانبی جدا کند. این مدل پیشنهاد میکند از یک مدل پایه بلندگوی متن به گفتار برای کنترل پارامترهای زبان و سبک استفاده شود و از یک مبدل رنگ تن برای گنجاندن رنگ تن مرجع در صدای تولید شده استفاده کند. شکل زیر معماری فریمورک را نشان میدهد.

چارچوب OpenVoice از دو جزء اصلی در هسته خود بهره میبرد: یک مبدل رنگ تن و یک مدل متن به گفتار یا TTS. مدل پایه متن به گفتار یک مدل تک یا چند بلندگو است که امکان کنترل دقیق بر پارامترهای سبک، زبان و لهجه را فراهم میکند. این مدل صدایی تولید میکند که سپس به مبدل رنگ تن منتقل میشود، که رنگ صدای پایه بلندگو را به رنگ صدای بلندگوی مرجع تغییر میدهد.
چارچوب OpenVoice انعطافپذیری زیادی در مورد مدل اصلی متن به گفتار ارائه میدهد. این امکان وجود دارد که از مدل VITS با تغییرات جزئی استفاده کند تا جاسازیهای زبان و سبک را در پیشبینیکننده مدت زمان و رمزگذار متن بپذیرد. این چارچوب همچنین میتواند از مدلهایی مثل Microsoft TTS استفاده کند که از نظر تجاری مقرون به صرفه هستند یا از مدلهایی مانند InstructTTS که قادر به پذیرش درخواستهای سبک هستند. در حال حاضر، چارچوب OpenVoice از مدل VITS استفاده میکند، اگرچه مدلهای دیگر نیز گزینه ممکنی هستند.
OpenVoice: نتایج بدست آمده از آزمایشات
ارزیابی وظایف شبیهسازی صدا به دلایل متعدد یک چالش سخت است. اولاً، کارهای مختلف از دادههای آموزشی و آزمایشی متفاوتی استفاده میکنند که ارزیابی را به طور غیرمنصفانه میکند. استفاده از جمعسپاری برای ارزیابی معیارهایی مانند میانگین امتیاز نظر، هرچند ممکن است باشد، اما دشواری و تنوع دادههای آزمون به طور قابلتوجهی بر نتایج تأثیر میگذارد. دوماً، روشهای مختلف شبیهسازی صدا از دادههای آموزشی متفاوتی استفاده میکنند و تنوع و مقیاس این دادهها بهطور قابلتوجهی بر نتایج تأثیر میگذارد. در نهایت، هدف اولیه کارهای مختلف در شبیهسازی صوت معمولاً با یکدیگر متفاوت است، که باعث متفاوت بودن در عملکرد آنها میشود.
با توجه به این سه دلیل، مقایسه عددی چارچوبهای شبیهسازی صوتی غیرمنصفانه است. به جای آن، مقایسه کیفی این روشها بسیار منطقیتر است.
شبیه سازی رنگ تن دقیق
برای تجزیه و تحلیل عملکرد چارچوب OpenVoice، توسعهدهندگان یک مجموعه آزمایشی با مشارکت افراد ناشناس، شخصیتهای بازی، و افراد مشهور ایجاد کردهاند. این مجموعه آزمایشی دارای توزیع صدای گسترده است که شامل هم نمونههای خنثی و هم صداهای بینظیر افراد مشهور میشود. چارچوب OpenVoice توانمندی دارد تا رنگ تن مرجع را شبیهسازی کرده و گفتار را به چندین زبان و لهجه برای هر یک از بلندگوهای مرجع و 4 بلندگوی پایه تولید کند.

کنترل انعطاف پذیر در سبک های صوتی
یکی از اهداف چارچوب OpenVoice این است که با استفاده از مبدل رنگ تن، که توانایی تغییر تن رنگ را دارد و در عین حال ویژگیها و ویژگیهای صوتی دیگر را حفظ میکند، به صورت انعطافپذیر سبکهای گفتار را کنترل کند.
آزمایشها نشان میدهد که مدل پس از تبدیل به رنگ تن مرجع، سبکهای صدا را حفظ میکند. با این حال، در برخی موارد، مدل احساسات را کمی خنثی میکند، که میتوان این مشکل را با کاهش اطلاعات ورودی به لایههای جریان حل کرد تا از شمارهگذاری احساسات جلوگیری شود. چارچوب OpenVoice به لطف استفاده از مبدل رنگ تن، قادر است استایلها را از صدای پایه حفظ کند. این به چارچوب OpenVoice امکان میدهد تا مدل اصلی متن به گفتار را برای کنترل آسان سبکهای صدا دستکاری کند.

کلون صوتی چند زبانه
چارچوب OpenVoice هر گونه داده بلندگوی عظیمی را برای یک زبان دیده نمیشود، با این حال میتواند در یک تنظیم شات صفر شبیهسازی صدای میانزبانی را انجام دهد. قابلیتهای شبیهسازی صدای چندزبانه چارچوب OpenVoice دو دسته است:
۱. این مدل زمانی که زبان گوینده مرجع در مجموعه دادههای چندزبانه یا مجموعه داده MSML دیده نمیشود، میتواند رنگ صدای گوینده مرجع را به دقت شبیهسازی کند.
۲. علاوه بر این، در همان حالتی که زبان گوینده مرجع دیده نمیشود، چارچوب OpenVoice میتواند صدای گوینده مرجع را شبیهسازی کند و به زبان یکی صحبت کند، به شرطی که مدل پایه متن به گفتار گوینده از زبان پشتیبانی کند.