کافه‌تدریس

تشخیص گفتار (Speech Recognition) چیست و چگونه کار می‌کند؟

تشخیص گفتار (Speech Recognition)

تشخیص گفتار (Speech Recognition)

تشخیص گفتار (Speech Recognition) به‌این معناست که کاری کنیم کامپیوتر بتواند گفتار را تشخیص دهد، تفسیر کند و آن را به متن تبدیل کند. تشخیص گفتار زیرشاخه‌ای از زبان‌شناسی محاسباتی (Computational Linguistic) است. این زیرشاخه با تکنولوژی‌هایی کار می‌کند که داده‌های صوتی (گفتار) را به‌عنوان ورودی دریافت و تجزیه‌وتحلیل می‌کنند. تشخیص گفتار به‌سرعت در حال تبدیل‌شدن به یک اصل در تعامل انسان و کامپیوتر است. امروزه ابزارهای تشخیص احساسات (Scenes Recognition) در کارهای مختلفی ازجمله نوشتن پیام متنی، پخش موسیقی، دستیارهای مجازی (Virtual Assistants) و غیره استفاده می‌شوند.

ادیسه‌ی فضایی را به یاد بیاورید!

در چند سال گذشته پیشرفت در زمینه‌ی یادگیری ماشین و زبان‌شناسی محاسباتی به پیشرفت‌های چشمگیری در نحوه‌ی تعامل ما با جهان پیرامون انجامیده است. یکی از شاخص‌ترین این پیشرفت‌ها حوزه‌ی تشخیص گفتار است.

البته تشخیص گفتار موضوع کاملاً جدیدی نیست؛ درواقع از زمانی که کامپیوترها به وجود آمدند تشخیص گفتار هم وجود داشت. مفهوم تشخیص گفتار اولین بار به‌شکل نظریه‌ای علمی‌ـ‌تخیلی در فیلم‌های مانند ادیسه فضایی (Space Odyssey) در سال ۲۰۰۱ به عموم معرفی شد. در ادامه ابتدا تشخیص گفتار (Speech Recognition) را معرفی خواهیم کرد، سپس با الگوریتم‌های کاربردی در این حوزه آشنا خواهیم شد و درنهایت برخی از موارد کاربرد تشخیص گفتار را شرح می‌دهیم.

تشخیص گفتار (Speech Recognition) چیست؟

تشخیص گفتار به‌نام تشخیص گفتار اتوماتیک (Automatic Speech Recognition / ASR) و گفتار به متن (Speech-to-text) هم شناخته می‌شود. این فناوری به کامپیوتر امکان می‌دهد تا گفتار انسانی را به متن تبدیل کند.

نکته‌ی مهم در اینجا این است که عبارت تشخیص گفتار (Speech Recognition) و تشخیص صدا (Voice Recognition) اغلب به‌جای هم استفاده می‌شوند. این در حالی است که این دو کاملاً با هم فرق دارند. تشخیص گفتار به‌معنای شناسایی کلمه‌های استفاده‌شده در یک گفتار است، ولی تشخیص صدا (Voice Recognition) به معنای شناسایی صدای شخص صحبت‌کننده است.

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

برای آشنایی با هوش مصنوعی و ارتباط آن با تشخیص صدا این مطلب را مطالعه کنید:

هوش مصنوعی چیست و چه کاربردهایی دارد؟

انواع تشخیص گفتار

دو نوع اصلی از انواع نرم‌افزارهای تشخیص گفتار خودکار یا ASR وجود دارد که شامل تشخیص گفتار گفتگوی هدایت‌شده یا Directed Dialogue Speech Recognition و تشخیص گفتار مکالمات زبان طبیعی یا Natural Language Speech Recognition هستند.

تشخیص گفتار گفتگوی هدایت‌شده

تشخیص گفتار گفتگوی هدایت شده، یک نسخه ساده‌تر و با پیچیدگی کمتر از ASR (Automatic Speech Recognition)   است که از رابط‌های ماشینی‌ای تشکیل شده است که به شما دستور می‌دهند به صورت شفاهی با استفاده از لیست محدودی از کلمات خاص به سوالات پاسخ دهید و در نهایت پاسخ خودشان را به درخواست تعریف شده شما که از روی کلمات محدودی اعلام کردید، شکل می‌دهند.

تشخیص گفتار مکالمه زبان طبیعی

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

تاریخچه تشخیص گفتار

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

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

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

دهه ۱۹۵۰ و ۱۹۶۰
اولین سیستم‌های تشخیص گفتار بر روی اعداد متمرکز بودند نه کلمات. در سال ۱۹۵۲، آزمایشگاه‌های بل،  سیستم “آدری”  (Audrey System) را طراحی کردند که می‌توانست صدایی را که با صدای بلند اعداد را می‌گفت تشخیص دهد. ده سال بعد، آی‌بی‌ام (IBM) Shoebox را معرفی کرد که ۱۶ کلمه را به زبان انگلیسی می‌فهمید و به آن‌ها پاسخ می‌داد. در سرتاسر جهان، کشورهای دیگر سخت‌افزاری ساختند که می‌توانست صدا و گفتار را تشخیص دهد. و تا پایان دهه ۶۰، این فناوری می‌توانست از کلماتی با چهار مصوت و ۹ صامت پشتیبانی کند.

دهه ۱۹۷۰

در حوزه تشخیص گفتار چندین پیشرفت معنادار و قابل توجه در این دهه ایجاد شد. البته این موضوع  بیشتر به خاطر وزارت دفاع ایالات متحده و DARPA بود. برنامه تحقیقاتی درک گفتار (SUR / Speech Understanding Research) که آ‌ ها اجرا کردند یکی از بزرگترین در نوع خود در تاریخ تشخیص گفتار بود. سیستم گفتاری «هارپی» کارنگی ملون (Carnegie Mellon’s Harpy speech system) از این برنامه برخاسته و قادر به درک بیش از ۱۰۰۰ کلمه است که تقریباً به اندازه واژگان یک کودک سه ساله است. همچنین در دهه ۷۰، آزمایشگاه‌های بل سیستمی را معرفی کردند که می توانست چندین صدا را تفسیر کند.

دهه ۱۹۸۰

در دهه ۸۰ واژگان تشخیص گفتار از چند صد کلمه به چند هزار کلمه رسید. یکی از پیشرفت‌ها از روش آماری به نام “مدل مارکوف پنهان (HMM)” حاصل شد.   (Hidden Markov Model) HMM به جای استفاده از کلمات و جستجوی الگوهای صدا، احتمال اینکه صداهای ناشناخته واقعاً کلمه باشند را تخمین زد.

دهه ۱۹۹۰

تشخیص گفتار در دهه ۹۰ عمدتاً به دلیل معرفی رایانه‌های شخصی قدم‌هایی روبه جلو برداشت. پردازنده‌های سریع‌تر این امکان را برای نرم‌افزارهایی مانند Dragon Dictate فراهم کردند تا به طور گسترده‌تری مورد استفاده قرار گیرند.

BellSouth پورتال صوتی (VAL) را معرفی کرد که یک سیستم تشخیص صدای تعاملی برای شماره گیری بود. این سیستم تعداد بی‌شماری از سیستم‌های درختی تلفن را به وجود آورد که هنوز هم وجود دارند.

سال ۲۰۰۰

تا سال ۲۰۰۱، فناوری تشخیص گفتار به دقت نزدیک به ۸۰ درصد دست یافت. در این دهه پیشرفت‌های زیادی وجود نداشت تا اینکه گوگل با راه اندازی جستجوی صوتی گوگل (Google Voice Search) وارد میدان شد. از آن‌جا که این سیستم درواقع یک اپلیکیشن بود، تکنولوژی تشخیص گفتار را در دسترس میلیون‌ها نفر قرار داد. علاوه بر این، گوگل در حال جمع‌آوری داده‌ از میلیاردها جستجو بود که می‌توانست به این سیستم کمک کند تا بفهمد فرد واقعاً چه می‌گوید. در آن زمان سیستم جستجوی صوتی انگلیسی گوگل شامل ۲۳۰ میلیارد کلمه از جستجوهای کاربران بود.

سال ۲۰۱۰

در سال ۲۰۱۱ کمپانی اپل، سیری (Siri) را راه‌اندازی کرد که شبیه به جستجوی صوتی گوگل بود. اوایل این دهه شاهد انفجار سایر اپلیکیشن‌های تشخیص گفتار بودیم. با الکسای آمازون و گوگل هوم (Google Home)، ما شاهد این بودیم که مصرف‌کنندگان با گذشت زمان، راحت‌تر و راحت‌تر با ماشین‌ها صحبت می‌کنند.

امروزه برخی از بزرگترین شرکت‌های فناوری برای اعلام بهترین دقت تشخیص گفتار با یکدیگر رقابت می‌کنند. در سال ۲۰۱۶، IBM به نرخ خطای کلمه ۶.۹ درصد دست یافت. در سال ۲۰۱۷ مایکروسافت IBM را با ادعای ۵.۹ درصد از میدان کنار زد. البته مدت کوتاهی پس از آن IBM نرخ خود را به ۵.۵ درصد بهبود بخشید. با این حال، در حال حاضر این گوگل است که کمترین نرخ خطا را با ۴.۹ درصد ادعا می‌کند.

اهمیت تشخیص گفتار

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

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

کنترل دستگاه‌های دیجیتال
دستیارهای شخصی دیجیتال مانند الکسا (Alexa) و گوگل هوم (Google Home)  به وضوح نیاز به ارتباط کلامی بین انسان و رایانه دارند. آن‌ها همچنین نمونه های خوبی از نحوه استفاده رایانه‌ها از یادگیری ماشین (Machine Learning) برای درک بهتر گفتار شما در طول زمان از طریق تجربیات قبلی هستند. برای انجام این کار، فناوری تشخیص گفتار، که با پردازش سیگنال فعال می‌شود، نقش کلیدی ایفا می‌کند.

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

فعال کردن فناوری Hands Free
هنگامی که چشمان و دستان شما مشغول هستند، مانند زمانی که در حال رانندگی هستید، گفتار فوق العاده مفید است. امکان برقراری ارتباط با سیری (Siri) یا Google Maps برای راهنمایی شما برای رفتن به جایی که باید بروید، احتمال گم شدن شما را کاهش می‌دهد و نیاز به کنار کشیدن و ایستادن در راه و جستجو در تلفن همراه خود یا خواندن نقشه را از بین می‌برد.

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

الگوریتم‌های تشخیص گفتار

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

پردازش زبان طبیعی (NLP)

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

مدل پنهان مارکوف (HMM / Hidden Markov Model)

مدل‌های پنهان مارکوف (HMM) که براساس مدل زنجیره‌ای مارکوف بنا شده‌اند روشی نسبتاً ساده برای مدل‌سازی داده‌های ترتیبی هستند. این مدل‌ها به‌عنوان مدل‌های ترتیبی در حوزه‌ی تشخیص گفتار (Speech Recognition) استفاده می‌شوند. آن‌ها به هر واحد در توالی یک برچسب می‌زنند، برای مثال کلمه، هجا، جمله و غیره. این برچسب‌ها با ورودی ارائه‌شده نگاشتی را ایجاد می‌کنند و این امکان را می‌دهند که مناسب‌ترین توالی برچسب تعیین شود.

N-grams

 N-gramsساده‌ترین نوع مدل زبانی است که به جمله‌ها و عبارت‌های احتمال اختصاص می‌دهد. یک N-gram درواقع توالی از n کلمه است؛ برای مثال، در جمله «Order the pizza» سه کلمه داریم؛ پس این یک 3-gram است. یا در جمله «Please order the pizza» چهار کلمه داریم و یک 4-gram محسوب می‌شود. این مدل از گرامر و احتمال برخی توالی کلمه‌های خاص برای بهبود تشخیص و دقت عملکرد خود استفاده می‌کند.

مدل بعدی که اغلب در تشخیص گفتار استفاده می‌شود شبکهٔ عصبی (Neural Network) است.

شبکه‌های عصبی (Neural Networks)

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

حال که با الگوریتم‌های کاربردی در تشخیص گفتار ( Speech Recognition) آشنا شدیم، بیایید با هم نگاهی به برخی از کاربردهای آن بیندازیم.

کاربردهای تشخیص گفتار کجاست؟

دامنه‌ی نفوذ تشخیص گفتار هر روز گسترده‌تر می‌شود. شما می‌توانید در بسیاری از کارهای روزمره کاربرد این فناوری را ببینید:

صنعت خودرو

سیستم‌های تشخیص گفتار با امکان ایجاد سیستم‌های ناوبری (Navigation Systems) که با صدا فعال می‌شوند ایمنی رانندگان را بالا می‌برند؛ هم‌چنین می‌توان از تشخیص گفتار در کار با رادیوی ماشین نیز استفاده کرد.

تکنولوژی

دستیاران مجازی مانند Google’s Assistant یا سیری (Siri) به‌طور فزاینده‌ای در زندگی روزمره‌ی ما، به‌ویژه در دستگاه‌های تلفن‌همراه، حضور دارند. ما از دستورهای صوتی برای ارتباط با آن‌ها استفاده می‌کنیم تا کاری را برای‌مان انجام دهند؛ برای مثال، موسیقی پخش کنند یا صفحه‌ی مرورگر را برای‌مان باز کنند.

بهداشت و درمان

تشخیص گفتار ( Speech Recognition) می‌تواند به پزشکان در ایجاد گزارش‌ها، جست‌وجوی پایگاه داده‌ها و درنتیجه کاهش نیروی انسانی کمک کند. افراد بدون زمینه‌ی پزشکی می‌توانند از ASR برای درک علائم معمول بیماری‌ها، تماس با پزشک و غیره کمک بگیرند؛ هم‌چنین افرادی که از نظر جسمی یا بینایی ناتوان هستند با استفاده از گفتار خود می‌توانند فعالیت‌های زیادی را در خانه‌ی خود و هم‌چنین محل کار انجام دهند.

فروش و بازاریابی

فناوری تشخیص گفتار ( Speech Recognition) چندین کاربرد در حوزه‌ی بازاریابی و فروش نیز دارد؛ برای مثال، ربات‌ها می‌توانند بدون نیاز به انتظار برای دردسترس‌بودن نماینده مرکز تماس، ازطریق یک صفحه‌ی وب با افراد صحبت کنند، به سؤالات متداول پاسخ دهند و درخواست‌های مهم مشتریان را حل کنند؛ به‌این ترتیب، سیستم‌های تشخیص گفتار ( Speech Recognition) به کاهش زمان حل مشکلات مصرف‌کننده کمک می‌کنند.

برای آشنایی بیشتر با این حوزه این مطلب را مطالعه کنید:

یادگیری ماشین به زبان ساده به چه معناست و چه مراحلی دارد؟

آینده‌ی تشخیص گفتار؛ مراقب آرزوهای‌تان نباشید!

در این مقاله با تشخیص گفتار ( Speech Recognition) آشنا شدیم و الگوریتم‌های کاربردی در این حوزه را با هم بررسی کردیم؛ همچنین دیدیم که تشخیص گفتار موارد کاربرد زیادی دارد و در حال حاضر بخشی از زندگی روزمره ماست.

البته در حال حاضر به دستورهای نسبتاً ساده محدود است، اما با پیشرفت این فناوری، محققان می‌توانند سیستم‌های هوشمندتری ایجاد کنند.

زمانی که ادیسه‌ی فضایی اکران می‌شد برای بسیاری از افراد رسیدن به چنین فناوری‌ای عجیب بود. احتمالاً این جمله که «مراقب آرزوهای‌تان باشید» برای‌تان آشنا باشد، اما این جمله درمورد تشخیص گفتار ( Speech Recognition) مصداق ندارد؛ روزی شما قادر خواهید بود با کامپیوتر خود همانند زمانی که با هر انسانی صحبت می‌کنید ارتباط برقرار کنید. این روز خیلی دور نیست.

یادگیری دیتا ساینس (علم داده) و ماشین لرنینگ در کافه‌تدریس

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

شرکت در دوره‌های آنلاین علم داده مقدماتی و پیشرفته کافه‌تدریس به شما امکان می‌دهد در هر نقطه‌ی جغرافیایی به جامع‌ترین و به‌روزترین آموزش دسترسی داشته باشید.

برای آشنایی با کلاس‌های آنلاین علم داده کافه‌تدریس و مشاوره‌ی رایگان روی این لینک کلیک کنید:

کلاس‌های آنلاین علم داده کافه‌تدریس

خروج از نسخه موبایل