مقالات علمی

جداسازی گفتار

مقدمه

در این گزارش در ابتدا به بیان مسئله پرداخته شده است و با بررسی مقاله هاي مرتبط در زمینه Separation Speech سعی شده است که مقالاتی که عملکرد بهتري داشتند بررسی شوند. معماري و نتایج هر یک از روش ها در ادامه توضییح داده شده است. همچنین در نهایت دیتاست هاي استفاده شده در این گزارش در بخش هاي بعدي معرفی شده اند.

تعریف مسئله

تشخیص صدا افراد و فهیمدن مفاهیم در مکان هاي شلوغ و یا زمانی که چندین فرد در یک محیط در حال صحبت کردن هستند یک چالش بوده است. اینکه بتوان در یک مکان شلوغ که همگی افراد همزمان در حال صحبت کردن هستند بتوان صداي هر فرد را تفکیک کرد و تشخیص داد بدون هیچ ابزاري کار سختی است و عملا در بیشتر مواقع غیر ممکن است. امروزه با استفاده از هوش مصنوعی و استفاده از تکنینک هاي یادگیري عمیق سعی شده است که راه حل هایی براي این چالش پیدا کنند. مقالات بسیاري در این زمینه کار شده است که به بررسی تفکیک صداي افراد در یک صوت که چندین صداي انسان به صورت همزمان صحبت می کنند پرداخته است و یا به بررسی حذف نویز بک گراند و و جداسازي صداي گوینده پرداخته است. همه این ها می توانند موضوعات و چالش هاي مهمی باشند. صحبت کردند افراد به صورت همزمان و تشخیص و جداسازي صداهاي هر قرد، یا صحبت کردن افراد در مکان شلوغ و پرسرو صدا مثل مترو و مکان هاي عمومی و حذف صداي پس زمینه و یا صحبت نمایندگان در یک صحن شلوغ و پرسرو صدا همه این ها با استفاده از هوش مصنوعی قابل حل است. با توجه به اهمیت این موضوع ما اول به بررسی مقالات جدید در این حوزه پرداخته ایم. در ادامه سعی کرده ایم که مقالاتی که عملکرد خوبی داشته اند و به کد آن ها دسترسی داریم را انتخاب کنیم و در ادامه به بررسی این مقالات و ارزیابی عملکرد این شبکه ها بپردازیم. در بخش اول فقط به بررسی مقالات Separation Voice مربوط به تشخیص صدا پرداخته ایم و در بخش دوم به بررسی مقالات Separation Speech Visual-Audio پرداخته ایم و نتایج هر یک از شبکه ها را بررسی کرده ایم.

مقاله بررسی: Voice Separation with an Unknown Number of Multiple Speakers

مقدمه

شبکه svoice یکی از شبکه هاي خوبی بوده است که نتایج بدست آمده از این شبکه را بررسی کردیم و به نظر شبکه خوبی بوده است که توانسته است علاوه بر شمارش صوت افراد در جمعیت، صداهاي هر یک از افراد شرکت کننده در صوت هم جدا جدا کرده است. یکی از مهم ترین مزیت هاي این شبکه این است که می تواند براي تفکیک صداها از تعداد نامشخص و نامحدودي از صداها که در آن صوت به طور همزمان صحبت می کنند بکار گرفته شود. نتایج و کد پیاده سازي مقاله در  https://github.com/facebookresearch/svoice قابل دسترسی است.

معماري مدل پیشنهادي

حل این مسئله، خود نیاز به بررسی زیر مسئله ي تعیین تعداد منابع صوتی فعال در داده ي صوتی مورد نظر و حل آن دارد که بوسیله ي چندین مرحله پردازش داده ها و آموزش مدل مربوطه صورت می گیرد. نتیجه ي نهایی عملکرد بهتري را نسبت به کارهاي فعلی نشان داد. مدل به کار گرفته شده در مقاله [11] ، روي داده هاي صوتی، عملیات هاي انکودینگ، تکه تکه سازي  را انجام داده و نهایتا به معماري دوسویه می دهد. در این بخش، یک تابع چند بخشی تابع هزینه بوده که در پایان هر بخش، بازسازي داده ي صوتی ورودي آن بلاك انجام می شود. در شکل 1 معماري شبکه ارائه شده نشان داده شده است.

شکل 1 :معماري روش ارائه شده

 

چالشی که حل آن، مزیت روش ارائه شده در این مقاله نسبت به موارد مشابه است، مواجهه با تعداد زیادي منبع صوتی همزمان است. براي حل این مشکل، به کمک الگوریتم تشخیص فعالیت 4 توان میانگین هر کانال خروجی محاسبه شده و از بالاتر بودن آن از یک حد از پیش اطمینان حاصل شده است. حال از مدلی که از قبل بر روي دیتاستی با تعداد بالایی از تعیین شده گویندگان آموزش داده شده، استفاده گردیده و بر روي هر یک از کانال هاي خروجی آزمایش گردیده است. مواجهه با سکوت در کانال ها، موجب تکرار این فرآیند تا دریافت نخستین داده هاي صوتی فاقد سکوت ادامه دارد. مشاهده می شود که استفاده از الگوریتم مذکور انعطاف پذیري بالایی در مواجهه با تعداد منابع صوتی بالا به ما داده است. در نهایت می توان گفت که روش ارائه شده در این مقاله عملکرد بهتري در مقابل دیگر روش هاي ارائه شده فعلی، چه در محیط هاي با تعداد منابع صوتی معین و چه متغیر داشته است و این مزیت به لطف به کارگیري بلوك هاي بازگشتی شامل دو شبکه ي دوسویه و هزینه هاي چندگانه بدست آمده  تابع هزینه بکارگرفته شده در این شبکه یک تابع چندبخشی است که در پایان هر بخش بازسازي داده هاي صوتی آن بلوك انجام می شود که در شکل 2 نشان داده شده است.

شکل 2 :تابع هزینه

 ارزیابی مدل یشنهادي

با توجه به اینکه مدل این شبکه براي آموزش وجود نداشته بوده است و ما نیاز به آموزش این شبکه داشتیم و دیتاستی که ترکیب صداها باشند نداشته این ما از دیتاستی که وجود داشت استفاده کرده ایم. در این شبکه از دو دیتاست استفاده شده است. دیتاستی که براي تولید صداهاي چندنفره در مسئله صوت بکار گرفته شده است دیتاست صوتی چندنفره است.این مجموعه داده همراه با یک کد متلب منتشر شده بوده است که این قابلیت این را دارد که با بکارگیري هر داده اي مجموهه داده هاي صوت هاي چند گوینده را ایجاد کند . مجموعه داده ایی که خود این مقاله و دیتاست ایجاد کرده است براي تولید صداهاي 1 تا چندنفره استفاده کرده است مجموعه داده wham است. که این مجموعه داده در بخش دیتاست به طور کامل تشریح شده است.

به منظور ارزیابی مدل پیشنهادي، مقیاس نسبت سیگنال به نویز (SNRi-SI ) گزارش شده است. که در مجموعه تست، به صورت زیر محاسبه می شود:

براي یک صوت با دو گوینده، x سیگنال ترکیب شده، s١ و s٢ دو صوت گوینده است. همچنین sb١ و sb٢ کانالی هاي صوتی جداشده توسط مدل پیشنهادي است. عملکرد مدل هاي مختلف و مدل منتشر شده در این مقاله به عنوان تابعی از تعداد گوینده ها در جدول 1 آورده شده است.

جدول 1 :عملکرد مدل هاي مختلف و مدل منتشر شده

منحنی آموزش مدل براي 60 ساعت آموزش شبکه در شکل 3 نشان داده شده است.

شکل 3 :منحنی آموزش مدل پیشنهادي

در شکل 4 عملکرد خروجی مدل هاي مختلف را بر روي یک دیتاست با دو گوینده نشان می‌دهد.

شکل 4 :عملکرد خروجی مدل هاي مختلف بر روي یک دیتاست با دو گوینده

پیاده سازي کدهاي مقاله

دیتاست wham دانلود شد این دیتاست شامل 18 گیگ فایل فشرده صوت از 1 نفر تا 5 نفره بوده است که با استفاده از کدي که در شکل 5 نشان داده شده است از سایت بر روري درایو دانلود شده است.

شکل 5 :نحوه دانلود دیتاست از سایت به درایو

به منظور بکارگیري این دیتاست سپس با استفاده از دستور 6 صوت ها unzip شده اند.

شکل 6 :نحوه خارج کردن فایل هاي دیتاست از زیپ

سپس پکیج هاي مورد نیاز براي شبکه svoice به صورت همزمان با استفاده از کدي که در شکل 7 نشان داده شده است نصب شده اند.

شکل 7 :پکیج هاي مورد نیاز براي شبکه svoice

و سپس شبکه براي 100 ایپوك آموزش دیده شده است. که در شکل 8 فرآیند آموزش براي چند ایپوك آخر شبکه نشان داده شده است .

شکل 9 :نحوه نصب کتابخانه torch

در تابع separate در ابتدا مدل آموزش داده شده با دستور (path-model(load.torch لود می کنیم. که در شکل 10 بخشی از این کد نشان داده شده است.

شکل 10 :بخشی از کد تابع separate به منظور لود کردن شبکه

سپس داده هاي ورودي را به مدل آموزش داده شده می دهیم. و سپس بعد از جداسازي صداهاي افراد از صوت توسط شبکه با استفاده از تابع wavs-save هر یک از صداها به صورت جداگانه از هم تفکیک داده می شود و هر یک با اسامی مختلف در پوشه out ذخیره می شوند. در شکل 11 نشان داده شده است.

شکل 11 :بخشی از کد تابع separate براي ذخیره کردن فایل خروجی

همچنین در مرحله تست مواردي بوده است که حتما باید رعایت شود یکی از این موارد این بوده است که حتما باید صداي ورودي فرمت wav .باشد. و همچنین مسئله دوم هم این بوده است که شبکه با نرخ فرکانس نمونه برداري (فاصله نمونه برداري) 16000 آموزش دیده شده بوده است. که ما در این قسمت هم در ابتدا طول نمونه برداري ها را براي صوت به 16000 تبدیل کرده ایم که این مشکل حل شود. با استفاده از کد در شکل 12 ما این موارد را برطرف کرده ایم.

شکل 12 :لود کردن Librosa به منظور گرفتن صوت ورودي براي تست و همچنین حل مشکل نرخ نمونه برداري و مشکل فرمت ورودي صدا

در نهایت شبکه براي صوت ورودي براي تست، توانست همه کانال هاي صوتی براي هر فرد را به صورت جداگانه استخراج کند و هر یک را به صورت جداگانه در فولدر براي ما ذخیره کند. با این کار علاوه بر اینکه ما تعداد افرادي که در صدا به صورت همزان در حال صحبت کردند بودند را داریم بلکه صوت هر یک از افراد را نیز به صورت جداگانه استخراج کرده ایم. همانطور که در شکل 13 رابط گرافیکی مشاهده می کنید براي یک نمونه داده تست صوت با نام wav.seda خروجی به دست آمده از صوت هر یک از افراد به ترتیب در فولدر out4 آورده شده است. به عبارتی در واقع در صداي wav.seda 3 نفر همزمان با هم در حال صحبت کردند بوده اند.

شکل 13 :رابط گرافیکی

نتیجه گیري و پیشنهادات

شبکه svoice یکی از شبکه هاي خوبی بوده است که نتایج بدست آمده از این شبکه را بررسی کردیم و به نظر شبکه خوبی بوده است که توانسته است علاوه بر شمارش صوت افراد در جمعیت، صداهاي هر یک از افراد شرکت کننده در صوت را تشخیص و تفکیک کند. یکی از مهم ترین مزیت هاي این شبکه این است که می تواند تعداد نامشخص و نامحدودي از صداها را که به طور همزمان در حال صحبت هستند را تشخیص و جدا کند. چالشی که حل آن، مزیت روش ارائه شده در این مقاله نسبت به موارد مشابه است، مواجهه با تعداد زیادي منبع صوتی همزمان است. روش پیشنهادي در این مقاله بخوبی توانسته است برر روي صوت هاي تست نتایج خوبی بگیرد نتایج این کد بر روي نمونه اي از دیتاست ها در لینک گیت هاب: https://enk100.github.io/speaker_separation قابل مشاهده  است.

متاسفانه براي تست نتایج بر روي نمونه صوت فارسی مدل شبکه موجود نبوده است. و ما فقط براي چند ایپوك شبکه را آموزش داده ایم. براي آموزش شبکه نیاز به 60 ساعت آموزش است. ما سعی کرده ایم که شبکه را براي دیتاست هاي wham و یا libri2mix آموزش دهیم ولی آنطور که پیش بینی می شود براي هر ایپوك آموزش تقریبا 5 ساعت زمان خواهد برد.

بررسی مقاله: Classification vs. Regression in Su-  pervised Learning for Single Channel Speaker Count Estimation

مقدمه

در بین کدهاي مورد بررسی براي شمارش تعداد افراد صحبت کننده از صوت کد -Speakers Counter با دقت خوبی توانست تعداد افراد در صوت را بشمارد. روش ارائه شده می تواند تعداد افرادي که ( 1 تا 10 نفر ) همزمان در یک صوت در حال صحبت کردن هستند را تشخیص دهد. https://github.com/aishoot/Concurrent_Speakers_Counter در سازي پیاده کد و نتایج قابل دسترسی است.

معماري مدل پیشنهادي

تخمین تعداد افرادي که در یک صوت به صورت همزمان در حال صحبت هستند یک مسئله مهم می تواند باشد. در مقاله [13] از شبکه عصبی عمیق به منظور شمارش افراد در صوت استفاده کرده است. خروجی این شبکه باید به یک سري عدد گسسته ختم شود. یک مدل صوتی پیشرفته شبکه عمیق را براساس معماري حافظه کوتاه مدت دو جهته براي تخمین شمارش تعداد افراد استفاده شده است. در این روش از شبکه RNN-BLSTM که ترکیبی از شبکه هاي عمیق، شبکه عصبی بازگشتی و شبکه حافظه دار کوتاه مدت است که به منظور تخمین تعداد افراد شرکت کننده در صوت استفاده شده است. همانطور که در شکل 14 مشاهده می کنید. در این صوت سه فرد که به صورت همزمان در حال صحبت کردند هستند نشان داده شده است که به ترتیب A B ,و C سه نفر شرکت کننده در حال گفتگو در این صوت هستند و K هم خروجی تعداد افرادي است که در هر بازه زمانی در حال صحبت کردند هستند. که در اینجا تخمین می زند که در نهایت سه نفر در حال صحبت کردند هستند.

شکل 14 :یک نمونه صوت همزمان سه نفره

شبکه عصبی بازگشتی شباهت زیادي به یک شبکه کاملا متصل دارد، با این تفاوت که در این شبکه ها همان مجموعه وزنی را به صورت بازگشتی در یک توالی ورودي اعمال می کند. شبکه هاي بازگشتی می توانند ساختار را در داده هاي پی در پی با طول دلخواه تشخیص دهند. این امر مدل سازي سري هاي زمانی را ایده آل می کند، با این وجود در عمل، زمان آموزش داده شده فقط به چند نمونه زمانی محدود می شود زیرا مشکل حذف گرادیان دارد. براي حل مشکل فراموشی یکی از محبوب ترین ها، سلول حافظه کوتاه مدت (LSTM) است که در این روش استفاده شده است. اثربخشی آن در کاربردهاي مختلف اثبات شده است و LSTM رویکرد پیشرفته اي براي تشخیص گفتار است. در این روش LSTM دو جهته (BLSTM) با سه لایه پنهان استفاده شده است. BLSTM در مقایسه با LSTM ساده از مقاومت بیشتري برخوردار است ، زیرا اطلاعات ورودي از گذشته و همچنین آینده براي یادگیري وزن استفاده می شود. در شکل 15 معماري پیشنهادي این روش نشان داده شده است.

شکل 15 :ساختار مدل شبکه

پیاده سازي کدهاي مقاله

دیتاست استفاده شده، دیتاست Dataset 0dB LibriCount10 بوده است. این دیتاست شامل صوت هاي 5 ثانیه اي از حداکثر 10 نفر زن و مرد بوده است که همزمان در حال صحبت کردند بوده اند. که در مجموع 11440 نمونه صوت بوده و در کل حجم این دیتاست 835 مگ بوده است. در ابتدا از طریق کدي که در شکل 16 نشان داده شده است کد بر روي درایو ما آورده شده است.

شکل 16 :نحوه آوردن کد به درایو

در این بخش کتابخانه SoundFile که براي خواندن و نوشتن فایل هاي صوتی است نصب شده است. که نحوه نصب و فرآیند نصب این کتابخانه در شکل 17 آورده شد است.

شکل 17 :نحوه نصب کتابخانه SoundFile

در ادامه کتابخانه keras نیز نصب شده است. که در شکل 18 کد و نحوه نصب آن آورده است.

شکل 18 :نحوه نصب کتابخانه keras

در این بخش کتابخانه مهم شاملSoundFile، keras ، SoundFile و Librosa براي خواندن و پردازش صوت ایمپورت شده اند که در شکل 19 کد مربوط آورده شد است.

 

 

شکل 19 :نحوه ایمپورت کردن کتابخانه ها

سپس مدل آموزش دیده با استفاده از کدي که در شکل 20 آورده شده است لود می کنیم.

شکل 20 :نحوه لود کردن شبکه

خلاصه معماري مدل شبکه پیشنهادي و تعداد پارامترهاي شبکه در شکل 21 نشان داده شده است.

شکل 21 :خلاصه معماري مدل شبکه

سپس از کتابخانه Librosa که یک کتابخانه مهم براي پردازش صوت است بکار گرفته شده است این کتابخانه در پردازش صوت گرفتن هیستوگرام از صوت و تشخیص صوت بسیار مهم است. سپس نمونه صوت هاي دیتاست به منظور تست عملکرد شبکه توسط کد شکل 22 خوانده شده است. صوت wav.org ، صوتی شامل 5 صدا از افراد مختلف زن و مرد بوده است که صداهاي آن ها در هم ترکیب شده بود و به صورت واضح قابل شناسایی نبوده است .

شکل 22 :لود کردن کتابخانه Librosa و خواندن یک نمونه داده تست

شبکه ارائه شده به خوبی توانست تعداد افرادي که در یک صحنه شلوغ با هم همزمان در حال صحبت هستند را به خوبی تشخیص دهد. صوت wav.org ، که صوتی از 5 فرد شامل زن و مرد بوده است شبکه توانست به خوبی توانست تشخیص دهد که 5 فرد در صحنه در حال صحبت کردند هستند. شکل 23 خروجی بدست آمده از شبکه را براي صوت داده شده براي تست wav.org را نشان می دهد همانطور که مشاهده می کنید تعداد سخنرانان در حال صحبت 5 نفر تخمین زده شده است.

 

 

شکل 23 :خروجی شبکه به منظور تخمین شمارش تعداد افراد در نمونه داده تست صوت

 

نتیجه گیري و پیشنهادات

شبکه Counter-Speakers یک شبکه تخمین شمارش تعداد افراد در صوت است که می تواند در یک صوت که چند نفر در حال صحبت هستند تعداد افراد را تخمین بزند. این شبکه با دیتاست انگلیسی آموزش داده شده است و مدل trained − re P شبکه در گیت هاب مقاله موجود است. ما این شبکه را بر روي چند صوت فارسی تست کرده ایم و به نسبت توانست به خوبی تخمین بزند ولی براي تعداد افراد بیشتر که همزمان در حال صحبت هستند به نظر می رسد با آموزش شبکه بر روي دیتاست فارسی بتوان به دقت بهتري دست یافت.

 

مقاله بررسی: VISUALVOICE: Audio-Visual Speech Separation with Cross-Modal Consistency

مقدمه

گفتار انسان به ندرت در خلاء مشاهده می شود. در میان غوغاي پر سر و صدا یک رستوران، تمرکز می کنیم تا آن را تجزیه کنیم. تماشاي یک مناظره داغ ریاست جمهوري، سخنان نامزدها که آنها با هم صحبت می کنند. وجود سروصدا در یک جلسه آنلاین که در اطراف افراد در حال صحبت کردند هستند و صداي فرد صحبت کننده به سختی شنیده می شود. سیستم ادراکی انسان به شدت از اطلاعات بصري استفاده می کند تا ابهامات موجود در صدا را کاهش دهد و تعدیل کند تا صداي یک سخنران را در یک محیط شلوغ را متوجه شود. خودکار کردن یک فرآیند جداسازي گفتار بسیار ارزشمند است از جمله فناوري کمکی براي که بتواند محتواي گفتاري و ویدیوهاي پرسروصدا در اینترنت را بهتر و بهبود دهد. نتایج، کد و ویدیوي مقاله در https://github.com/facebookresearch/VisualVoice قابل دسترسی است.

معماري پیشنهادي

در مقاله [14] یک رویکرد جدید به منظور جداسازي صوت معرفی شده است. در این روش با داشتن یک ویدیو هدف این است که استخراج صحبت یا صوت مرتبط با صورت گوینده اي که در حال صحبت کردن است را استخراج کنیم در حالی که در کنار این گوینده افرادي درحال صحبت کردن هستند و یا اینکه داراي صداي پس زمینه (چند نفر در حال صحبت کردند) و یا نویز است. در روش هاي قبلی تمرکز بر روي یادگیري تناسب بین حرکات لب کسی که در حال صحبت کردن است و آن صدایی که از آن تولید می شود. ولی در این روش از ظاهر و مدل چهره گوینده کمک گرفته می شود. در شکل 24 تطابق چهره به صدا چندوجهی را نشان می‌دهد.

  شکل24 : Cross-modal face-to-voice matching

 

عملکرد مدل ارائه شده به این صورت است که یک سیگنال گفتاري مختلط (mixed) را به عنوان ورودي می گیرد و با تجزیه و تحلیل حرکات لب و ویژگی هاي صورت در چهره براي جداکردن بخش صداي مربوط به آن گوینده استفاده می کند. عملکرد روش پیشنهادي در شکل 25 نشان داده شده است.

شکل 25 :عملکرد مدل پیشنهادي جداکننده گفتار

چارچوب یادگیري چند وظیفه اي که به طور مشترك جداسازي speech visual−audio و voice − ace f modal − cross را فرا می گیرد. در شکل 26 نشان داده شده است. شبکه با و cross − modal matching loss ،mask prediction loss از ترکیبی رساندن حداقل به loss consistency speaker آموزش می بیند.

شکل 26 :چارچوب یادگیري چند وظیفه اي پیشنهادي

s prediction Mask :همانطور که در شکل 26 نشان داده شده است ماسک هاي پیچیده MA١،MA٢،MB١ و MB١ را براي جداسازي گفتار براي گوینده هاي مروبطه متناظر با آنها X١ و X٢ به ترتیب پیش بینی شده است. براي ماسک پیچیده پیش بینی شده loss از رابطه 2 محاسبه می شود.

Cross-modal matching loss: براي به دست آوردن ویژگی هاي صورت متقابل مورد نظر براي هدایت فرآیند جداسازي، به طور مشترك جاسازي هاي صورت-صدا یاد گرفته می شود. اما هدف در اینجا جداسازي صدا است – نه شناسایی شخص و به جاي ورودي تک منبعی، صدا به صراحت حاوي چندین منبع است. ابتدا تعبیه هاي صوتی a B٢ , aB١ , aA٢  aA١, را براي هر طیف گفتار جدا شده به صورت رابطه 3 استخراج می کنیم:

iB و iA نشان دهنده جاسازي هاي تصویر چهره استخراج شده است از شبکه تحلیل ویژگی هاي  چهره به ترتیب براي سخنرانان A و B . از ضرر سه گانه 4 استفاده شده است:

که در آن (i, a(D فاصله کسینوسی تعبیه گفتار و جاسازي تصویر چهره است و m نشان دهنده حاشیه بین دو فاصله است. ضرر Cross-modal matching به صورت رابطه 5 تعریف می شود:

این ضرر شبکه را وادار می کند تا جاسازي هاي صورت چند وجهی را یاد بگیرد به طوري که فاصله بین جاسازي گفتار جدا شده و جاسازي چهره براي گوینده ي مربوطه باید کوچکتر از آن باشد بین جاسازي گفتار جدا شده و جاسازي صورت براي گوینده دیگر، با حاشیه m. شبکه جداسازي گفتار براي تولید صداهاي تمیزتر (شفاف تر) که می توان به جداسازي گفتار دقیق تري دست یافت تشویق می کند.

Speaker consistency loss :بخش هاي صوتی (t(sA١ و (t(sA٢ که از یک گوینده مشترك در ویدیو VA بدست می آید. بنابراین ویژگی هاي صوتی (t(sA١ و (t(sA١ در مقایسه با(t(sB باید بیشتر مشابه باشند. بنابراین، جداسازي هاي صوتی براي بخش هاي گفتار جدا شده براي گوینده A باید بیشتر شبیه باشد در مقایسه با آن بخش ها در گوینده B شبیه تر باشد. براي نشان دادن این مفهوم یک Speaker consistency loss به صورت رابطه 6 تعریف می شود.

Inference and Training :تابع هدف کلی براي آموزش شبکه به صورت رابطه 7 است. که speaker consistency losses و cross − modal matching هاي وزن ترتیب به λ١ و λ١ هستند. در طول تست، ابتدا چهره در فریم ویدیو تشخیص داده می شود و سپس ROI دهان براي هر صحبت کننده استخراج می شود. براي هر سخنران از ROI mouth ها و یک تصویر چهره (فریم تصادفی) به عنوان ورودي و پیش بینی یک ماسک پیچیده براي جدا کردن گفتار از سیگنال ترکیب شده استفاده می شود. همچنین از رویکرد window sliding براي انجام جداسازي بخش به بخش براي ویدیو با طول دلخواه استفاده شده است. شبکه جداسازي گفتار پیشنهادي از ابتدا با داده هاي بدون برچسب آموزش داده می شود. برخلاف روش هاي دیگر که از قبل به یک مدل لب خوانی از پیش آموزش دیده شده یا یک مدل تشخیص چهره از پیش آموزش دیده شده دسترسی داشته اند. این چارچوب می تواند با ویدیوي کاملا بدون برچسب آموزش و تست شود.

نتایج و عملکرد شبکه بر روي شش دیتاست معیار oxCeleb٢ V ، oxCeleb١ V ، LRS٢، IMIT T −CD T و E CUAV که شامل ویدیوهاي چالش برانگیز دنیاي واقعی بوده است به منظور جداسازي و بهبود گفتار به خوبی تعمیم می دهد. و روش پیشنهادي بر روي این دیتاست ها بخوبی همانند روش هاي art − the − stateof عمل می کند.

نتایج Audio−visual speech separation   بر روي دیتاست V oxCeleb٢ در  جدول 2 آورده شده است. عمکرد شبکه براي نمونه هاي تست براي هر یک از حالت هاي reliable lip motion is در سمت چپ و unreliable در سمت راست نشان داده شده است.

جدول 2 :نتایج separation Speech بر روي دیتاست VoxCeleb2

نتایج Audio-visual speech enhancement بر روي دیتاستoxCeleb٢ V با صداهایی از AudioSet که داراي صداهاي نویز(non – speech) پس زمینه است. در جدول 3 آورده شده است.

جدول 3 :نتایج enhancement Speech بر روي دیتاست VoxCeleb2

پیاده سازي کدهاي مقاله

در ابتدا از طریق کدي که در شکل 27 نشان داده شده است کد بر روي درایو ما دانلود شده است.

شکل 27 :دانلود کد بر روي درایو

مدل هاي از پیش آموزش داده شده از طریق لینک هاي زیر قابل دسترسی است. در شکل 28 نحوه دانلود مدل ها نشان داده شده است.

شکل 28 :دانلود مدل هاي از پیش آموزش دیده

پکیج هاي مورد نیاز به منظور تست شبکه به صورت شکل 29 نصب می شودند . ویدیوي آزمایشی با استفاده از دستورات زیر از قبل پردازش می شوند. که ویدیو را به s/٢۵f تبدیل می کند، صدا را به 16 کیلوهرتز مجدداً نمونه گیري می کند و گوینده ها را با پیاده سازي ساده بر اساس آشکارسازي چهره دنبال می کند. استفاده از سایر ردیاب هاي پیشرفته صورت انتخابی می تواند به نتایج جداسازي بهتري منجر شود. در شکل 30 نحوه پیش پردازش نشان داده شده است.

شکل 29 :نصب پکیج هاي مورد نیاز

شکل 30 :پیش پردازش ویدیوها

اکنون به منظور تست ویدیوهاي آزمایشی از مدل هاي از پیش آموزش دیده دانلود شده استفاده می شود. نحوه تست ویدیوها از طریق کد 31 قابل اجرا است.

شکل 31 :دانلود مدل هاي از پیش آموزش دیده

 

نتیجه گیري و پیشنهادات

در این مقاله یک رویکرد جدید به منظور جداسازي صوت معرفی شده است. در این روش با داشتن یک ویدیو هدف این است که استخراج صحبت یا صوت مرتبط با صورت گوینده اي که در حال صحبت کردن است را استخراج کنیم در حالی که در کنار این گوینده افرادي در حال صحبت کردن هستند و یا اینکه داراي صداي پس زمینه (چند نفر در حال صحبت کردند) و یا نویز است. کد و مدل Pre-trained این شبکه در لینک گیت هاب در دسترس است. ما شبکه را براي نمونه ویدیوهاي انگلیسی و همچنین بر روي نمونه ویدیو فارسی تست کرده ایم و شبکه بخوبی توانست صدا را تفکیک کند و تشخیص دهد. براي بخش تقویت صدا و نویز بک گراند هم شبکه روي ویدیو هاي فارسی نتایج خوبی داشته است. انتظار می رود با آموزش شبکه بر روي دیتاست ویدیو هاي فارسی شبکه بتواند نتایج بهتري را بدست آورد.

 

مجموعه داده ها

مجموعه داده Wharm

این مجموعه داده شامل صداهایی از افراد یک تا دو نفره است که اکثر صداها داراي نویز هستند. حجم این مجموعه داده صوت 35 گیگ بوده است. کاربردي که این مجموعه داده دارد این بوده است که براي ایجاد صداهاي جدید بکار گرفته شده است [15] در شکل 32 جزئیات این مجموعه داده نشان داده شده است.

شکل 32 :جزئیات مجموعه داده Wharm

 

مجموعه داده LibriCount10 0dB

شامل صداهاي شبیه سازي شده از تعداد (0 تا 100) سخنران است که به صورت همزمان در طول 5 ثانیه حال صحبت کردند هستند و این فایل ها با پسوند wav .هستند [16] .مشخصات دیتاست در زیر آورده شده است:

  • mixed with 0dB SNR
  • 5seconds of recording
  • 16bits, 16kHz, mono
  • 11440 Samples, 832.5 MB

در شکل 33 مشخصات براي تعداد سه گوینده که در حال همزمان در حال صحبت کردن هستند در صوت نمونه از دیتاست را نشان می دهد.

شکل 33 :یک نمونه صوت از دیتاست 0dB LibriCount10

 

مجموعه داده AVSpeech

AVSpeech یک مجموعه داده صوتی و تصویري در مقیاس بزرگ است که شامل کلیپ هاي ویدیویی گفتاري بدون نویزهاي پس زمینه است. این بخش ها 3 تا 10 ثانیه طول می کشد و در هر کلیپ صداي قابل شنیدن در موسیقی متن متعلق به یک فرد سخنگو است که در ویدیو قابل ً مشاهده است. در مجموع، مجموعه داده شامل تقریبا 4700 ساعت بخش ویدیو، از مجموع 290 هزار ویدیوي YouTube است که طیف گسترده اي از افراد، زبان ها و حالت هاي چهره را در بر می گیرد. براي جزئیات بیشتر در مورد نحوه ایجاد مجموعه داده، در مقاله [17] آورده شده است.

 

مجموعه داده  LibriMix

LibriMix یک جایگزین منبع باز براي 2mix-wsj0 است. بر اساس ،LibriSpeech LibriMix از مخلوط هاي دو یا سه گوینده ترکیب شده با نمونه هاي نویز محیطی از !WHAM .جزئیات بیشتر این مجموعه داده در سایت [18] آورده شده است.

 

مجموعه  داده LibriCSS

جداسازي گفتار پیوسته(CSS) رویکردي براي مدیریت گفتار همپوشانی در سیگنال هاي صوتی مکالمه است. یک مجموعه داده واقعی ضبط شده، به نام ،LibriCSS از LibriSpeech با به هم پیوستن گفته هاي بدنه براي شبیه سازي یک مکالمه و ضبط مجدد صدا با میکروفون هاي میدان دور مشتق شده است. جزئیات بیشتر این مجموعه داده در سایت [19] آورده شده است.

 

مجموعه داده VoxCeleb2

این مجموعه داده شامل بیش از 1 میلیون ویدیو گفتگو با چهره است. که ین ویدیو ها از یوتیوب استخراج شده است. براي جزئیات بیشتر به سایت [20] مراجعه نمایید.

 

مجموعه داده  VoxCeleb1

مجموعه داده شامل بیش از 100000 ویدیو است. سخنان 1251 سلبریتی که از فیلم هاي یوتیوب استخراج شده است [21].

 

مجموعه داده LRS2

این مجموعه داده شامل هزاران جمله گفته شده از تلویزیون بی بی سی استخراج شده است. طول هر جمله تا 100 کاراکتر است [22].

 

مجموعه داده AVSpeech

این مجموعه داده یک مجموعه داده صوتی و تصویري در مقیاس بزرگ است که شامل کلیپ هاي ویدیویی گفتاري با نویزهاي پس زمینه است. این ویدیوها 3 تا 10 ثانیه است و در هر کلیپ صداي قابل شنیدن در موسیقی متن متعلق به یک فرد سخنگو است که در ویدیو قابل مشاهده ً است. در مجموع، مجموعه داده شامل تقریبا 4700 ساعت بخش ویدیو، از مجموع 290 هزار ویدیوي YouTube است که طیف گسترده اي از افراد، زبان ها و حالت هاي چهره را در بر می گیرد [23] .براي جزئیات بیشتر در مورد نحوه ایجاد مجموعه داده، مقاله [24] را مشاهده کنید.

 

مراجع

  1. Subakan C, Ravanelli M, Cornell S, Grondin F, Bronzi M. On Using Trans- formers for Speech-Separation. arXiv preprint arXiv:2202.02884. 2022 Feb 6
  2. Jin Z, Hao X, Su X. Coarse-to-Fine Recursive Speech Separation for Un-known Number of Speakers. arXiv preprint arXiv:2203.16054. 2022 Mar 30.
  3. Zhang J, Zorilă C, Doddipatla R, Barker J. Time-domain speech extractionwith spatial information and multi speaker conditioning mechanism. InICASSP 2021-2021 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) 2021 Jun 6 (pp. 6084-6088). IEEE.
  4. Hu X, Li K, Zhang W, Luo Y, Lemercier JM, Gerkmann T. Speech sepa-ration using an asynchronous fully recurrent convolutional neural network. Advances in Neural Information Processing Systems. 2021 Dec 6;34:22509- 22Zeghidour N, Grangier D. Wavesplit: End-to-end speech separation byspeaker clustering. IEEE/ACM Transactions on Audio, Speech, and Language Processing. 2021 Jul 26;29:2840-9.
  5. Sequence to Multi-Sequence Learning via Conditional Chain Mapping forMixture Signals
    Cosentino J, Pariente M, Cornell S, Deleforge A, Vincent E. Librimix:An open-source dataset for generalizable speech separation. arXiv preprintarXiv:2005.11262. 2020 May 22.
    Hershey JR, Chen Z, Le Roux J, Watanabe S. Deep clustering: Discrimina-tive embeddings for segmentation
  6. and separation. In2016 IEEE international conference on acoustics, speech and signal processing (ICASSP) 2016 Mar20 (pp. 31-35). IEEE.
    Isik Y, Roux JL, Chen Z, Watanabe S, Hershey JR. Single-channel multi- speaker separation using deep
  7. clustering. arXiv preprint arXiv:1607.02173. 2016 Jul 7.
    Wang ZQ, Tan K, Wang D. Deep learning based phase reconstruction for speaker separation: A trigonometric
  8. perspective. InICASSP 2019-2019 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) 2019 May 12 (pp. 71-75). IEEE. 28Nachmani E, Adi Y, Wolf L. Voice separation with an unknown number of multiple speakers. In International Conference on Machine Learning 2020 Nov 21 (pp. 7164-7175). PMLR.https://www.merl.com/demos/deep-clusteringStöter FR, Chakrabarty S, Edler B, Habets EA. Classification vs. regression in supervised learning for single channel speaker count estimation. In2018 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) 2018 Apr 15 (pp. 436-440). IEEE.Gao R, Grauman K. Visualvoice: Audio-visual speech separation with cross- modal consistency. In2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR) 2021 Jun 20 (pp. 15490-15500). IEEE.https://wham.whisper.ai/
  9. https://paperswithcode.com/dataset/libricount
  10. Ephrat A, Mosseri I, Lang O, Dekel T, Wilson K, Hassidim A, Freeman WT,
  11. Rubinstein M. Looking to listen at the cocktail party: A speaker-independent audio-visual model for speech separation. arXiv preprint arXiv:1804.03619. 2018 Apr 10.
  12. https://paperswithcode.com/dataset/librimix
  13. https://paperswithcode.com/dataset/libricss
  14. https://paperswithcode.com/dataset/voxceleb1
  15. https://www.robots.ox.ac.uk/ vgg/data/voxceleb/vox2.html
  16. https://www.robots.ox.ac.uk/ vgg/data/lip_reading/lrs2.html
  17. https://looking-to-listen.github.io/avspeech/ .
  18. Ephrat A, Mosseri I, Lang O, Dekel T, Wilson K, Hassidim A, Freeman WT,
  19. Rubinstein M. Looking to listen at the cocktail party: A speaker-independent audio-visual model for speech separation. arXiv preprint arXiv:1804.03619. 2018 Apr 10.
بازگشت به لیست

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *