پردازش گفتار (صوت) قسمت 1

پردازش گفتار

پردازش گفتار(صوت) – فناوری تشخیص گفتار نرم‌افزاری است که قادر است صوت را به متن تبدیل کند. فناوری تشخیص گفتار به رایانه‌ای که توانایی دریافت صدا را دارد برای مثال به یک میکروفن مجهز است این قابلیت را می‌دهد که صحبت کاربر را متوجه شود. این فناوری در تبدیل گفتار به متن یا به عنوان جایگزین برای ارتباط با رایانه کاربرد دارد. برقراری ارتباط گفتاری با رایانه‌ها به جای استفاده از صفحه کلید و ماوسیکی از زمینه‌های تحقیقاتی مهم چند دههٔ اخیر است و شرکت‌های بزرگی چون مایکروسافت ٫فیلیپس ٫ ای ال ای تی ٫ ای بی ام ٫سالانه هزینه‌های هنگفتی را برای این منظور پرداخت کرده و می‌کنند.

از جمله محدودیت‌های این نرم‌افزار این است که کلماتی که در این نرم‌افزار وجود دارد کلماتی است که از قبل به نرم‌افزار معرفی شده‌است. ضمن ان که در این نرم‌افزار کلمات محاوره‌ای قابل شناسایی نیست. از جمله کاربردهای این نرم‌افزار در ادارات و سازمان‌ها برای کاهش به کارگیری نیروی انسانی بهره برد. همچنین افزایش امنیت نیز یکی دیگر از قابلیت‌های استفاده از این نرم‌افزار است.

مقدمه

هدف بلند مدت سیستم‌های بازشناسی خودکار گفتار‚ طراحی ماشینی است که سیگنال صوتی مربوط به یک جملهٔ بیان شده را به دنباله‌ای از کلمات نوشته شده تبدیل نماید. سیستم‌های بازشناسی خودکار گفتار اطلاعات متنوعی ازمنابع دانش گوناگون را در جهت دستیابی به جملهٔ بیان شده از روی سیگنال صوتی دریافت شده، به کار می‌گیرند. پردازش گفتار به عنوان یکی از زیر شاخه‌های پردازش سیگنال ٫ به سرعت در حال گسترش است. تکنیک‌های پیچیده و نوآوری‌های روز افزون این دانش٫همگی در راستای دستیابی به این ارزو هستند که امکان بیابیم مفاهیم در قالب ابزارهای ریاضی فراهم گردد. در این مقاله٫به بیان خلاصه‌ای از انواع روش‌های پردازش گفتار می‌پردازیم:

۱-تحت تاثیر قرار گرفتن کیفیت سیگنال صوتی به وسیلهٔ نویز محیط و تابع انتقال سیستم انتقال مانند میکروفن، تلفن

۲-عدم وضوح مرز ما بین کلمات و واج‌ها در سیگنال صوتی

۳-تنوع وسیع سرعت بیان

۴-دقت ناکافی در بیان کلمات و به خصوص انتهای انها در گفتار محاوره‌ای نسبت به گفتار مجزا.

۵-تاپیر تنوعات متعدد گوینده از جمله جنسیت، شرایط فیزیولوژیک و روانی بر گفتار.

۶-به کارگیری محدودیت‌های معنایی-نهوی زبان برای گفتار زبان طبیعی به روشی مشابه ارتباط انسان با انسان در سیستم بازشناسی.

در جهت غلبه بر مشکلات مذکور تاکنون روش‌های متنوعی پیشنهاد شده‌است که از جمله انها روش‌های اماری مبتنی بر قانون تصمیم گیری بیز، روش‌های مبتنی بر شبکهٔ عصبی و در برخی موارد ترکیب روش‌های اماری و شبکهٔ عصبی است. با بررسی روش‌های فوق می‌توان دریافت که شناسایی کلمه یا واج بدون خطا بدون استفاده از دانش سطوح بالاتر به خصوص در بازشناسی گفتار پیوسته با حجم لغت نامهٔ بزرگ، امکان پذیر نیست. به عنوان یک نتیجه ‚یک سیستم بازشناسی گفتار که با انبوهی از فرض‌ها دربارهٔ واج ها، کلمات و معانی و ادراک مشخص می‌شود‚در نظر بگیرد.

در سیستم‌های مبتنی بر قانون تصمیم گیری بیز برخی از این محدودیت‌ها توسط مدل زبانی به سیستم بازشناسی اعمال می‌شود. نتایج مطالعات و بررسی‌ها نشان داده‌است که مدل‌های زبانی که در حالت کلی توالی واحدهای زبانی را مدل می‌کنند، در کاهش خطای بازشناسی نقش عمده‌ای ایفا می‌کنند. در این میان، استفاده از مدل‌های زبانی مبتنی بر شبکه‌های عصبی با وجود قابلیت این شبکه‌ها در یادگیری زنجیره نمادها و نیز به دلیل قابلیت هموارسازی و خاصیت تعمیم دهی آنها بر روش‌های اماری مزیت دارد.

تولید نرم‌افزار ترجمه گفتار

از جمله قابلیت‌های این نرم‌افزار این است که این نرم‌افزار قادر است فایلهای WAV،mp3 را مستقل از صدای گوینده به متن تبدیل کند ولی کیفیت ان کمتر از ان است که صدای فرد را به نرم‌افزار معرفی کنیم. از دیگر قابلیت‌های سیستم‌های گفتاری می‌توان به ترجمهٔ گفتار به سایر زبان‌ها اشاره کرد. از این قابلیت در جنگ امریکا و عراق استفاده شد. امریکایی‌ها سیستم‌هایی را طراحی و تولید کردند که قادر بود کلام عربی را به انگلیسی ترجمه کند. همچنین در انجام اقدامات امنیتی بهره برداری می‌کنند که می‌تواند کلمات کلیدی را برای این نرم‌افزار شناسایی کرد تا نسبت به ان کلمه خاص حساس شود تا در صورت استفاده از آن، سیستم این کلمات را رکورد کند. این قابلیت در سال ۱۹۹۴ در آمریکا طراحی و تولید شد و در سیستم‌های تلفنی به کار گرفته شد. در حال حاضر این نرم‌افزار طراحی و تولید شده‌است به گونه‌ای که در متن و گفتار کاربر، کلمهٔ خاصی را می‌توان فعال کرد و این نرم‌افزار می‌تواند ان کلمه را جستجو کند و کلمهٔ عبور کاربر ذخیره شود.

کاربردهای نرم‌افزار تشخیص گفتار (پردازش گفتار)

به عنوان یک کاربر رایانه، احتمالا با قابلیت گفتاری مجموعهٔ افیس به عنوان یکی از ویژگی‌های جذاب و تا حدی فانتزی برخورد کرده یا با ان کار کرده‌اید. به کمک این قابلیت شما به جای استفاده از صفحه کلید برای تایپ مطالبتان ‚به راحتی با خواندن متن مورد نظرتان و انتقال گفتارتان به کمک یک میکروفن معمولی به رایانه ‚مطلب مورد نظرتان را تایپ شده می‌بینید. حتی برای ذخیره کردن، کپی کردن، گذاشتن عکس در متن… به جای کلیک‌های پشت سر هم و گاهی با تعداد بالا، می‌توانید فرمان مربوطه را به کمک گفتار به نرم‌افزار داده تا کار شما را انجام دهد. جدای از اینکه توانایی درست کار کردن این قابلیت افیس چقدر باشد‚یک محدودیت بزرگ در سر راه استفاده از ان برای ما ایرانیان وجود دارد ‚این قابلیت فقط برای زبان انگلیسی است.(البته زبان‌های چینی و ژاپنی را نیز شامل می‌شود!).

ایجاد چنین سیستمی که ان را تشخیص یا بازشناسی گفتار می‌نامند، در زبان فارسی، چندین سال از تحقیقات محققان ¸اساتید و دانشجویان دانشگاه‌های مختلف کشور را به خود اختصاص داده‌است. اما جدی‌ترین جهشی که در حدود ده سال پیش در این زمینه ایجاد شد، ایجاد دادگان گفتاری فارسی دات و یک سیستم اولیه تشخیص گفتار فارسی در مرکز هوشمند علائم بوده‌است. در ادامه و در طی یکی –دو سال اخیر ¸مهم‌ترین دستاورد در این تکنولوژی برای زبان فارسی، سیستم‌های تشخیص است. در کاربردهایی مانند تشخیص گفتار تلفنی ‚سیستم لزوما باید مستقل از گوینده باشد.

در کاربردهای واقعی معمولاً سیستم را مستقل از گوینده می‌سازند و موقع استفاده به صدای گوینده خاصی ان را اصطلاحا تطبیق می‌کنند این کار در قابلیت گفتاری مجموعه افیس به کمک خواندن متون اولیه در ویزارد سیستم انجام می‌شود ‚چنین قابلیتی در سیستم نویسا نیز وجود دارد. هر چه تعداد واژگانی که سیستم می‌تواند تشخیص دهد بیش تر باشد، شباهت میان کلمات بیش تر باشدو در نتیجه کارایی سیستم به علت افزایش اشتباهات کاهش پیدا می‌کند. از این رو در کاربردهای واقعی معمولاً فقط واژگان متناسب با کاربردهای موردنظر را انتخاب می‌کنند تا محدود شود. در قابلیت گفتاری افیس هم که ادعا می‌شود اکثر کلمات انگلیسی را دارد٫ کارایی به شدت پایین است(کارایی پایین آن به علت این است که ما غیر انگلیسی زبان هستیم!)ولی در محصولات محدودتر این شرکت کارایی به مراتب بهتر است.

گفتار کاربر می‌تواند پیوسته و طبیعی یا با مکث میان کلمات همراه باشد٫ بدیهی است که حالت اول مطلوب هر کاربری است. یکی از مشکلاتی که محصولات نویسا و نیوشا تا حد زیادی ان را حل کرده‌اند٫استخراج و به کارگیری قابلیت‌های زبان ٫زبان فارسی در حد نسبتا کاملی است. این اطلاعات زبانی می‌تواند در سایر نرم‌افزارهایی که نیاز به اطلاعات زبانی دارند٫مانند مترجم‌ها نیز به کار گرفته می‌شود. اثر صداهای اضافی و ناخواسته در کاربردهای واقعی نرم‌افزارهای ocr نرم‌افزارهای تشخیص گفتار را در عمل دچار افت شدید کارایی می‌نماید٫در محصولات فارسی ارائه شده با رویکردهای مختلفی این نقصان را تا حد زیادی جبران کرده‌است.

تکنولوژی بازشناسی گفتار

تکنولوژی بازشناسی گفتار ٫ شیوه‌ای جدید برای تشخیص پیام هاو دستورهای صوتی و حاصل پژوهش جمعی از متخصصین دانشگاه صنعتی شریف در زمینهٔ پردازش گفتار است. نگارندگان این مقاله ٫ توانسته‌اند نرم‌افزارهای طراحی و پیاده سازی کنند که بتواند قابلیت‌های طرح را در سیستمی که از لحاظ سخت‌افزاری کوچک و از نظر هزینه مقرون به صرفه‌است٫پیاده سازی کند. ویژگی‌های منحصر به فرد این طرح٫ان را از جدیدترین فناوری‌های موجود دنیا در زمینهٔ پردازش گفتار٫متمایز می‌کند.

از جمله ویژگی‌های این طرح می‌توان به موارد زیر اشاره کرد:

  • قابل اجرا بر روی رایانه یا سخت‌افزاری مستقل
  • سهولت استفاده
  • هزینه اندک پیاده سازی
  • عدم وابستگی به هیج نوع زبان با گویشی
  • عدم حساسیت به سروصدای محیط
  • امکان تعریف دستورهای صوتی، مطابق با سلیقه کاربرد

فناوری بازشناسی گفتار، بر پایه این ویژگی‌ها در طیف گسترده‌ای از محصولات قابل استفاده‌است. نمونه‌هایی از زمینه‌های کاربرد آن عبارتند از:

  • خودرها
  • لوازم خانگی الکتریکی و الکترونیکی
  • اسباب بازی‌ها، عروسک‌ها و سرگرمی‌های رایانه‌ای
  • سیستم‌های دیتار افراد کم توان و سالخورده
  • نرم‌افزارهای رایانه‌ای مدیریتی
  • سیستم‌های آموزش زبان

به عنوان نمونه از این نرم‌افزار در دادن فرامین صوتی به خودرو ویژه هنگامی که راننده مشغول رانندگی است و نمی‌تواند کاربری دیگری انجام دهد، استفاده می‌شود فرامین صوتی شامل موارد ذیل می‌شوند:

۱- تنظیم آینه‌های بغل و عقب

۲- کنترل بالابر شیشه‌ها

۳- کنترل قفل کودک

۴- کنترل روغن ترمز و موتور یا بنزین در حال حرکت

۵- کنترل رادیو یا هر نوع رسانه دیگر در خودرو

۶- کنترل برف پاک کن‌ها

۷- تنظیم صندلی‌ها

۸- کنترل چراغ‌ها

۹- هر نوع دستور دیگر که انجام آن نیازمند حرکت اضافی راننده یا سرنشینان است.

این نرم‌افزار، به خوبی در محیط پرنویز، عمل می‌کند مثلاً در خودرویی با سرعت ۱۰۰ کیلومتر در ساعت با شیشه‌های باز و در بزرگراه تست شده و پاسخ مناسب گرفته‌است. دیگر مزیت این نرم‌افزار، حجم بسیار پایین آن است که به راحتی قابل برنامه ریزی برروی یک ای سی است (نسخه دمو روی pc) به راحتی تا ۱۰۰ فرمان را پردازش می‌کند) نرم‌افزار مورد بحث، با این مشخصات در ایران مشابه ندارد و موارد موجود در دنیا نیز مانند فرمانی توسط صدا حداقل نیاز به پردازنده پنتیوم با حجم زیاد حافظه دارند. نکته دیگر اینکه این نرم‌افزار، هوشمند بوده و قابل آموزش دادن است و پس از آموزش (مثلاً با صدای اعضای یک خانواده) صدار هرکدام از آنها را که بشنود (و در کل هر زمانی که کلمه یا فرمانی را بشنود) مستقل از این که چه کسی آن را ادا کرده‌است (صدای زن یا مرد، کلفت یا نازک) فرمان را اجرا می‌کند.

دیگر مزیت این نرم‌افزار، حجم بسیار پایین آن است که به راحتی قابل برنامه ریزی بر روی یک ای سی است (نسخه دمو روی کامپیوتر جیبی به راحتی تا ۱۰۰ فرمان را پردازش می‌کند. نرم‌افزار مورد بحث با این مشخصات در ایران مشابه ندارد و موارد موجود در دنیا نیز مانند وویس کامند در میکروسافت افیس٫حداقل نیاز به پردازنده پنتیوم با حجم زیاد حافظه دارند نکته دیگر اینکه این نرم‌افزار هوشمند بوده و قابل آموزش دادن است و پس از آموزش (مثلاً با صدای اعضای یک خانواده) صدای هر کدام از آنها را که بشنود (و در کل هر زمانی که کلمه یا فرمان را بشنود) مستقل از اینکه چه کسی آن را ادا کرده‌است (صدای زن با مردن، کلفت یا نازک) فرمان را اجرا می‌کند.

گزارش طرح نرم‌افزار فناوری بازشناسی گفتار (پردازش گفتار)

۱- عنوان طرح: فناوری بازشناسی گفتار مقاوم در برابر نویز ۲- توضیح عمومی و کاربرد: با استفاده از این فناوری، صدای ضبط شده توسط یک میکروفون بازشناسی شده و به فرامین برای یک دستگاه الکترونیکی یا رایانه، تبدیل می‌شوند حوزه کاربرد این فناوری تمامی دستگاه‌های الکتریکی، الکترونیکی و رایانه‌ای است که به طریقی از کاربر فرمان می‌گیرند. تمام فرامین قابل بیان با استفاده از مجموعه متناهی کلمات گسسته را می‌توان با استفاده از این فناوری توسط میکروفون به دستگاه یا رایانه داد.

۳- مزایا در مقایسه با دیگر فناوری‌های مشابه: مهمترین خصوصیات این فناوری نیاز به توان پردازشی بسیار کم و مقاومت بسیار زیاد در مقابل سرو صدای محیط (نویز) است.

۴- شرح طرح: روش ارائه شده از سه بخش اصلی تشکیل شده‌است

الف ـ بخش اول که وظیفه تبدیل سیگنال صوتی به داده‌های قابل پردازش را برای دو بخش دیگر انجام می‌دهد.

ب ـ بخش دوم که وظیفه یادگیری و توصیف کلمات را بر عهده دارد و با گرفتن نمونه‌های ضبط شده کلمات، الگوهای لازم برای بخش بازشناسی را می‌سازد.

ج ـ بخش سوم که داده‌های گرفته شده از بخش اول را با الگوهایی که در بخش دوم یاد گرفته شده‌اند مقایسه می‌کرده و شبیه‌ترین کلمه را انتخاب می‌کند.

استخراج ویژگی‌ها از سیگنال صدا:

اولین مرحله در مراحل یادگیری و بازشناسی استخراج ویژگی‌ها از سیگنال صداست. برای انجام این کار باید مراحل زیر را طی کرد:

۱- استخراج اسپکتروگرام صدا

۲- اعمال فیلترهای فیوژن ماکسیمم –ان بر روی فریم‌های اسپکتروگرام تولید شده

۳- اعمال فیلترهای شناسایی یکنواختی در طول اسپکتروگرام

الف ـ اولین مرحله در بازشناسی صدا، تبدیل سیگنال صدای ورودی به اسپکتروگرام با طول محدود است برای این کار با استفاده از الگوریتم استاندارد تبدیل سریع فوریه تبدیلات فوریه پنجره‌هایی به طول ۵۱۲ صدای ضبط شده با ۱۲۸ فریم همپوشانی گرفته و در کنار یکدیگر قرار داده می‌شود در پایان این مرحله، سیگنال یک بعدی صدا به تصویری دوبعدی تبدیل می‌شود

ب ـ سومین مرحله از بخش استخراج خصوصیات، فشرده سازی اسپکتروگرام در طول محور فرکانس است پس از اعمال این الگوریتم، مراحل تبدیل داده خام (سیگنال صدا) به داده آماده بازشناسی با یادگیری، تمام شده و می‌توان به یکی از دو بخش بعدی رفت. یادگیری برای یادگیری الگوی هر کلمه یک یا چند نمونه از ان کلمه به بخش یادگیری داده می‌شود اگر تنها یک نمونه از کلمه وجود داشته باشد آن نمونه به عنوان الگوی خروجی انتخاب می‌شود در غیر این صورت از الگوریتم کا مینز۱ برای به دست آوردن الگوهای مناسب برای دسته بندی تمامی کلمات داده شده استفاده می‌شود

بازشناسی الگوها

در این بخش الگوریتم مقایسه یک ورودی صوتی با الگوی کلماتی که از قبل یاد گرفته شده‌اند ارائه می‌شود برای این کار الگوریتم مقایسه کشسان (۱) ارائه می‌شود. برای تصمیم گیری نهایی ورودی این بخش با تمام کلماتی که قبلاً یاد گرفته شده‌اند توسط این الگوریتم مقایسه شده و کلمه‌ای که بیشترین تطابق را داشته باشد به عنوان جواب انتخاب می‌شود. الگوریتم مقایسه کشسان ساختاری مشابه ماشین حالات محدود (۲) دارد با ۳ تفاوت مهم زیر (از این به بعد این الگوریتم را ماشین تطبیق دهندهٔ قابل انعطاف یاEMM می‌نامیم.) 1- بر خلاف EMM، FSM ممکن است بیش از یک حالت فعال در هر زمان وجود داشته باشد تعداد حالات فعال در زمان‌های مختلف نیز متفاوت است. در صورتی که یک EMM به وضعیتی برسد که هیچ حالت فعالی نداشته باشد به پایان کار خود رسیده‌است. 2- در EMM حالات فعال به جز شماره حالت خصوصیات دیگری نیز دارند. فهرست این خصوصیات عبارتند از:

الف ـ میزان تطابق وضعیت (۳)‌های قبلی: این معیار مشخص می‌کند که اگر اکنون در وضعیت N ام ماشین باشیم. N-1 وضعیت قبلی با چه درجه تطابقی شناسایی شده‌است.

ب ـ میزان تطابق وضعیت قبلی: این معیار، بیانگر میزان تطابق درست بین ورودی‌هایی که به این وضعیت انتساب داده شده‌اند با الگوریتم خواسته شده برای این وضعیت است.

3- در EMM مشابه ماشین‌های حالت محدود غیرقطعی (۴) با یک ورودی و از یک وضعیت ممکن است توان حرکت به بیش از یک وضعیت دیگر وجود داشته باشد در چنین حالتی تمامی وضعیت‌های بعدی همزمان تولید و پیموده می‌شوند.

روش کار EMM به این شکل است که برای مقایسه یک کلمه (الگو) با یک ورودی Ii فریم‌های خروجی بخش پیش پردازش اطلاعات (۱-۴) برای ورودی و Pi فریم‌های خروجی بخش یادگیری برای الگو خوانده خواهند شد. برای این کار یک EMM ساخته می‌شود که به اندازه فریم‌های الگو وضعیت دارد و انتقال بین وضعیت‌ها فقط در طول محور فریم‌های الگو قابل انجام است به این ترتیب با خواندن هر فریم ورودی (Ii) یا باید در وضعیت سابق الگو بمانیم یا به وضعیتی بعد از آن منتقل شویم. به این ترتیب با رسیدن هر فریم ورودی هر وضعیت فعلی فعال EMM به دو وضعیت جدید تبدیل می‌شود اما باید به طریقی از این افزایش نمایی جلوگیری کرد برای این کار وضعیت‌هایی که درجه شناسایی درستشان از حد خاصی کمتر باشد حذف می‌شوند.

تلفن همراه SPH-P۲۰۷ ساخته شرکت سامسونگ دارای نرم‌افزاری تشخیص گفتار است. که براین اساس به پیام‌های گفتاری سریعتر از تایپ کردن آنها روی صفحه شماره گیری جواب می‌دهد وظیفه اصلی این تلفن بی سیم تبدیل گفتار انسان به سیگنال‌های دیجیتالی و بالعکس می‌باشد تلفن SPH-P۲۰۷ سامسونگ اولین تلفنی است که از فناوری تشخیص گفتار برای دیکته یک متن استفاده میشود.

 

0 پاسخ

دیدگاه خود را ثبت کنید

تمایل دارید در گفتگوها شرکت کنید؟
در گفتگو ها شرکت کنید.

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

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

دو × 2 =