به نام خدا پردازش گفتار نیمسال اول 59-59 دکتر صامتی دانشکده مهندسی کامپیوتر تمرین سری ششم مروری بر احتمال و پردازش سیگنال زمان تحویل 21 :دی 2359 لطفا موارد زیر را به خاطر بسپارید: در تمرینهای برنامهنویسی برای هر سوال یک پوشهی جداگانه با نام problem_xxبسازید و تمام کدهای مربوطه را در آن پوشه قرار دهید ( xxشماره سوال است). یک فایل گزارش به فرمت PDFآماده کنید و نتایج تمرینهای برنامه نویسی اعم از اعداد و نمودارها و تحلیلهای خواسته شده را در آن بیاورید .همچنین پاسخ تمرینهای تئوری را به صورت اسکن شده یا تایپ شده در همین فایل گزارش قرار دهید. تمرینها به منظور حل تکنفره طراحی شده اند .بنابراین لطفا در صورت نیاز ،به مشورت مختصر اکتفا کنید و از حل گروهی تمرینها خودداری کنید. فایل گزارش را به همراه تمام کدها در یک فایل فشرده به نام ( HW6_Xبه جای Xشمارهی دانشجویی خود را بگذارید) و با همین عنوان به آدرس sp.94.fall@gmail.comایمیل کنید .در صورت داشتن سوال از طریق tina.khajeh@gmail.comبا خانم خواجه و یا seyyedij@gmail.comبا آقای سیدی تماس بگیرید. زمان تحویل در تاریخ مشخص شده ساعت 21ظهر (قبل از کالس حل تمرین) برای تمرینهای تئوری و 21شب برای تمرینهای برنامه نویسی است .هر روز تاخیر باعث کسر %21از نمرهی تمرینهای برنامهنویسی خواهد شد .لطفا حتیاالمکان تمرین ها را حضوری تحویل ندهید بلکه ایمیل کنید. تمرینهای تئوری سوال .2همانطور که می دانید برای طراحی یک سیستم سنتز گفتار ،در گام اول باید واحد آوایی مناسبی را انتخاب نمایید .توضیح دهید که چه انتخابهایی برای این مرحله میتوان داشت و چگونه از میان گزینههای مختلف بهترین را برگزینیم؟( همراه با مثال برای کاربرد هر کدام) محدودیتها و چالشهای هر واحد را نیز مشخص نمایید. برای انتخاب واحد مناسب در سیستم سنتز گفتار از نوع الحاقی می توان انتخاب هایی مانند زیر داشت : پاراگراف :این واحد برای استفاده در جایی که تغییر نداریم و همواره یک یا چند پاراگراف محدود وجود داشته و مورد استفاده قرار می گیرد .همچون تلفن های گویای اداره ها و موارد مشابه .در انتخاب این مورد به عنوان واحد باید دقت کنیم که تنوع پایین است و امکان ایجاد پاراگراف جدید غیر از پاراگراف هایی که از قبل داشته ایم غیر ممکن است. جمله :انتخاب جمله به عنوان واحد نیز در جاهایی که تعداد جمالتی که قرار است سیستم سنتز بیان کند محدود می باشد کاربرد دارد .این مورد نیز می تواند در سیستم های گویای تلفنی مشابه با باال استفاده گردد. در این حالت تعداد جمالت محدود است اما از کنار هم گذاشتن آنها پاراگراف های متنوع تری می توان داشت .چالش در این حالت انتخاب توالی مناسب جمالت در صورتی که احتیاج به ساختن پاراگراف داشته باشیم می باشد. کلمه :این واحد به عنوان واحد مناسب در حاهایی که کلمات مشخص تکرار می شوند و با در کنار هم قرار گرفتن آنها منظور را می رسانیم کاربرد دارد .از این واحد می توان در سیستم های تلفن بانک که تعداد کلمات و اعدادی که بیان می شوند محدود است می توان استفاده نمود .در این حالت با ذخیره و داشتن کلمات محدود تری در دیتا بیس و کنار هم قرار دادن آنها می توان عبارات یا جمالت متنوعی ساخت .چالشی که در این روش با آن مواجه هستیم درست کردن پیوستگی بین کلمات می باشد .باید به گونه ای بعد از انتخاب کلمات مناسب پیوستگی را بوجود آوریم که طبیعی باشد. واحد هایی کوچک تر از کلمه همچون سیالب ی ا هجا :این واحد ها از نظر تعداد محدود تر هستند ،نسبت به کلمه و جمله و پاراگراف و از کنار هم قرار دادن آنها می توانیم کلمه مناسب و بعد عبارت و جمله بسازیم و منظور را بیان کنیم.هنگامی که این واحد های کوچک را انتخاب می کنیم در کنار اینکه امکان ساخت کلمات با تنوع های مختلفی را می دهند اما هزینه بسیاری برای در کنار هم قرار دادن این واحد های کوچک و ساخت کلمه و دیگر واحد های بزرگ تر باید بپردازیم تا پیوستگی حفظ شده و کلمه درست ادا شود. برای انتخاب از میان واحد های باال با توجه به کاربرد و متناسب با هزینه هایی که هر یک دارند باید انتخاب نماییم. سوال .1درباره سیستمهای سنتز مبتنی بر ، KALTTاجزا و نحوه کارکرد آنها توضیح دهید .فرض کنید یک سیستم سنتز مبتنی بر KLATTبرای زبان انگلیسی داشته باشیم و بخواهیم آن را به سیستم سنتز زبان فارسی تبدیل کنیم ،به طور کامل شرح دهید چه تغییراتی باید در سیستم ایجاد شود. در مدل هیچ تغییری نباید داده شود .تنها باید پارامتر های واج های فارسی بدست آید .برای این کار ابتدا واج های انگلیسی و فارسی را به هم mapمی کنیم .برای آنهایی که عینا مشابه هستند از همان پارامتر های انگلیسی استفاده می کنیم .برای آنهایی که در بعضی مشخصه ها شبیه هستند از پارامتر های انگلیسی شروع می کنیم و در آن تغییرات الزم را می دهیم. سوال . 3در نظر بگیرید از شما خواسته شده است تا طی انجام تستی قابلیت فهم واجهای سایشی در زبان فارسی را ارزیابی کنید .به طور دقیق مشخص کنید از کدامیک از روشهای Subjectiveو یا Objectiveبه این منظور استفاده میکنید؟ بعد از انتخاب روش ،تست را طراحی کنید ..به این منظور به طور دقیق شرایط آزمون ،اجرای آن و روش امتیازدهی را مشخص نمایید. برای اندازه گیری قابلیت فهم به دلیل محدودیت هایی که در طراحی سیستم های automatic speech recognition وجود دارد ،نمی توان از روش های objectiveاستفاده نمود .به همین دلیل به سراغ روش های subjectiveمی رویم. برای انجام این تست می توان از روش های موجود subjectiveهمچون DRTو MRTاستفاده کرد .اگر ِDRT را در نظر بگیریم و براساس آن آزمون را طراحی نماییم .کلماتی به صورت CVCرا در نظر می گیریم که Cاول آنها دو سایشی متفاوت باشد اما قسمت بعد آنها که VCاست مشابه همدیگر باشد .مثل شام و سام ،زار و سار و ...تعدادی زوج کلمه به این صورت تشکیل می دهیم .بعد از آماده سازی زوج کلمات و توجیه شنونده با پخش هر کلمه شنونده باید بین دو کلمه نوشته شده انتخاب نماید که کدامیک گفته شده است .در انتها نیز معیار ارزیابی مشابه با معیار DRT به صورت زیر است: 𝑡𝑐𝑒𝑟𝑟𝑜𝑐𝑛𝑖𝑁 𝑁𝑐𝑜𝑟𝑟𝑒𝑐𝑡 − 𝑡𝑠𝑒𝑡𝑁 = 𝑇𝑅𝐷 سوال . 4فرض کنید سیگنال گفتاری با پهنای باند 1تا 4کیلوهرتز به طول زمانی 4ثانیه و با انرژی کلی( (global energyبرابر با 211با دو نوع نویز دچار اعوجاج شده است: الف) نویز سفید با انرژی کلی 211که در فاصله زمانی 2تا 2.1ثانیه(مدت 111میلی ثانیه) به سیگنال اعمال می شود. ب) نویز با پهنای باند 111هرتز که از 2111تا 2111هرتز را پوشش می دهد و در تمام مدت 4ثانیه سیگنال گفتار وجود دارد و انرژی کلی آن 211است. میزان Global SNR, Segmental SNR, Frequency weighted segmental SNRرا برای هر یک از دو حالت الف و ب بدست آورید.طول فریمها را 211میلی ثانیه و باند فرکانسی را به عرض 211هرتز و بدون همپوشانی در نظر بگیرید .وزن مولفههای فرکانسی در حالت frequency weightedبرای باندهای بین 800تا 1800هرتز برابر با ،3برای باندهای بین 2011تا 1011برابر با 1و برای بقیه باندها را برابر با 2در نظر بگیرید .در مورد نتایج بدست آمده ومنطقی بودن نتایج در هر یک از حاالت الف و ب بحث کنید. سوال . 5از بین تئوریهای تشخیص گفتار دو تئوری تشخیص بر مبنای Articulatoryو Motorرا مقایسه کنید. :Articulatoryاین روش برپایهی سیستم تکلمی انسان است به این گونه که برای هر هجا سیستم تکلمی انسان را مدل میکنیم و به ازای هر هجای ورودی هجای مورد نظر را با مدلهای مختلف مطابقت میدهیم و به هر کدام که نزدیکتر بود آن واج بیان شده است. :Motorدر این تئوری ما اعتقاد داریم که تشخیص از روی تنه ا صدا نیست .بلکه مدلهایی که ما در ذهنمان از گویندهها و از گفتار داریم فراتر از این است .ما درواقع با گرفتن اطالعات صوتی و اطالعات دیگری مانند :حرکت دستها و تغییر در صورت یک الیه باالتری را تشخیص میدهیم و با تکرار آن ورودیها تشخیص میدهیم که چه گفتاری بیان شده است. سوال . 0گزارشگر فوتبال در ناحیهای از استادیوم قرار دارد که صدای تماشاچیان به راحتی میتواند برروی گزارش وی تاثیر بگذارد و تشخیص گفتار گزارشگر را سخت نماید .شما به عنوان صدابردار برنامه چه نوع عملیات پیشپردازشی را برروی صدای ضبط شده پیشنهاد می دهید تا تماشاچیان در منزل بتوانند به راحتی صدای گزارشگر را بشنوند .توجه کنید که تا حدودی وجود صدای تماشاچیان داخل استادیوم می تواند به جذابیت بازی کمک کند .به علل نامعلومی گاهی الزم است که صدای تماشاچیان به طور کل حذف شود .همچنین در نظر داشته باشید که صدای داخل استادیوم همیشه یکنواخت نیست و مثال در هنگام زدن گل صدا چندین برابر میشود. سوال . 7میخواهیم برای تراز کردن دو کلمه از الگوریتم DTWاستفاده کنیم .هر کلمه شامل سه فریم است .در زیر جدول فواصل بین فریمها نشان داده شده است که در آن ) d(i, jفاصله فریم iدر کلمه ورودی و فریم jدر کلمه معیار است( .برای iو jکه در این ماتریس نشان داده نشدهاند ∞ = ) d(i, jفرض کنید). j=3 j=2 j=1 5 2 2 i=1 3 3 3 i=2 2 3 1 i=3 فرض کنید نقاط پایانی بر یکدیگر منطبق باشند و محدودیت شیب را لحاظ نکنید .فاصله کل ) G(i, jبا استفاده از این فرمول محاسبه میشود: )1) 𝐺 (1 , 1) = 𝑑 (1 , 1 )𝑗 𝐺 (𝑖 , 𝑗 − 1) + 𝑑(𝑖, )𝑗 2) 𝐺 (𝑖 , 𝑗) = 𝑚𝑖𝑛 {𝐺 (𝑖 − 1 , 𝑗 − 1) + 𝑑(𝑖, )𝑗 𝐺 (𝑖 − 1 , 𝑗) + 𝑑(𝑖, الف) فرمول فاصله را بهگونه ای تغییر دهید که تمایل حرکت به صورت قطری دو برابر حاالت سطری یا ستونی باشد و سپس ماتریس فاصله کل ) G(i, jرا برای i, j = 1, 2, 3تشکیل دهید. ب) مسیر بهینه و هزینه آن را مشخص کنید. هزینه 7 : )1) 𝐺 (1 , 1) = 𝑑 (1 , 1 )𝑗 𝐺 (𝑖 , 𝑗 − 1) + 2 ∗ 𝑑(𝑖, )𝑗 2) 𝐺 (𝑖 , 𝑗) = 𝑚𝑖𝑛 {𝐺 (𝑖 − 1 , 𝑗 − 1) + 𝑑(𝑖, )𝑗 𝐺 (𝑖 − 1 , 𝑗) + 2 ∗ 𝑑(𝑖, j=3 j=2 j=1 11 6 2 i=1 9 5 8 i=2 7 11 10 i=3 سوال . 0در مورد کاربردهای deep learningدر تشخیص گفتار تحقیق کنید و یکی از آنها را در کمتر از پنج سطر توضیح دهید. تمرینهای برنامهنویسی سوال .2در این تمرین سعی در تبدیل گفتار یک فرد به فرد دیگر را داریم و با نرمافزار praatبیشتر آشنا خواهیم شد. الف) تابعی بنویسید که با دریافت یک فایل صوتی از ورودی که حاوی گفتار است ،کلمات به کار برده شده در آن را تشخیص داده و هر کلمه را به صورت جداگانه ذخیره نماید .کلمات را به ترتیب حضور در جمله به صورت یک عدد چهاررقمی ذخیره کنید(.مثال)1112 : ب) ابتدا با صدای خودتان جمله "پرواز در آسمان آبی" را ضبط کنید و سپس صدای ضبط شده و فایل source.wav را توسط تابع قسمت (الف) به کلمات به کار برده شده در آنها تقسیم کنید .سپس کلمات ایجاد شده از صدای خود را در پوشهای با عنوان filterو کلمات حاصل از فایل sourceرا در پوشهای با نام sourceقرار دهید .از نرمافزار praat استفاده کنید و فایل convert.prattرا اجرا نمایید تا صدای فرد منبع به صدای شما تغییر کند( .صدای تبدیل شده را به عنوان خروجی نهایی ارسال کنید). ج) در پایان توضیح دهید که برنامه نوشته شده در فایل convert.prattچه عملی انجام میدهد(توابع مهم استفاده شده و کارایی آنها ذکر شود ).و به نظر شما دلیل نویزی بودن نتیجه نهایی چه میتواند باشد؟
© Copyright 2025 Paperzz