کل مقاله 20 صفحه مروری بر سیستم تشخیص گفتار و کاربرد آن چكيده:سيستم تشخیص گفتار نوعی فناوری است که به یک رايانه این امکان را می دهد که گفتار و کلمات گوینده را بازشناسی و خروجي آنرا به قالب مورد نظر، مانند "متن"، ارائه كند. در این مقاله پس از معرفی و ذكر تاريخچهاي ازفناوري سیستم ها تشخيص گفتار، دو نوع تقسیم بندی از سيستمها ارائه می شود، و سپس به برخی ضعف ها و نهایتاً کاربرد این فناوری اشاره می شود.كليد واژه ها: سيستمهاي تشخیص گفتار، فناوري اطلاعات، بازشناسي گفتار 1. مقدمه گفتار برای بشر طبیعی ترین و کارآمدترین ابزار مبادله اطلاعات است. کنترل محیط و ارتباط با ماشین بوسیله گفتار از آرزوهای او بوده است.طراحی و تولید سیستم های تشخیص گفتار هدف تحقیقاتی مراکز بسیاری در نیم قرن اخیر بوده است.یکی از اهداف انسانها در تولید چنین سیستم هایی مسلماً توجه به این نکته بوده است که "ورود اطلاعات به صورت صوتی ،اجرای دستورات علاوه بر صرفه جویی در وقت و هزینه ،به طرق مختلف کیفیت زندگی ما را افزایش می دهند.امروزه دامنه ای از نرم افزارها (که تحت عنوانSpeech Recognition Systems معرفی می شوند) وجود دارند که این امکان را برای ما فراهم کرده اند.با استفاده از این تکنولوژی می توانیم امیدوار باشیم که چالش های ارتباطی خود را با محیط پیرامون به حداقل برسانیم. 2.تعریف قبل از پرداختن به به سیستم های تشخیص گفتار لازم است که فناوری تولید گفتار و تشخیص گفتار با تعریفی ساده از هم متمایز شوند: ● فناوری تولید گفتار(Text To Speech):تبدیل اطلاعاتی مثل متن یا سایر کدهای رایانه ای به گفتاراست.مثل ماشین های متن خوان برای نابینایان،سیستم های پیغام رسانی عمومی. سیستم های تولید گفتار به خاطر سادگی ساختارشان زودتر ابداع شدند. این نوع از فناوری پردازش گفتار موضوع مورد بحث در این مقاله نیستند. ● فناوری تشخیص گفتار(Speech Recognition System ): نوعی فناوری است که به یک کامپیوتراین امکان را می دهد که گفتارو کلمات گوینده ای را که از طریق میکروفن یا پشت گوشی تلفن صحبت می کند،بازشناسی نماید. به عبارت دیگر در این فناوری هدف خلق ماشینی است که گفتار را به عنوان ورودی دریافت کند و آنرا به اطلاعات مورد نیاز (مثل متن)تبدیل کند. 3.تاریخچه فناوری تشخیص گفتار اولین سیستم های مبتنی بر فناوری تشخیص گفتار در سال 1952 در"آزمایشگاههای بل"طراحی شد.این سیستم به شیوه گفتار گسسته و به صورت وابسته به گوینده و با تعداد لغت محدود 10 لغت عمل می کرد.در اوایل دهه 80 میلادی برای اولین بار الگوریتم مدلهای مخفی مارکوف "Hidden Markov Model" ارائه شد.این الگوریتم گامی مهم در طراحی سیستم های مبتنی بر گفتار پیوسته به حساب می آمد.همچنین در طراحی این سیستم از مدل شبکه عصبی و نهایتاً ازهوش مصنوعی نیز استفاده می شود.در ابتدا شرکتهای تجاری این فناوری را برای کاربردهای خاصی طراحی کردند.به عنوان مثال شرکت Kurzweil در زمینه پزشکی و مخصوصاً برای کمک به معلولان و نابینایان و شرکت Dragon در زمینه خودکارسازی سیستمهای اداری محصولات اولیه وارد بازارکردند. توانجویان در واقع اولین گروهی بودند که از این دسته محصولات به عنوان یک فناوری انطباقی و یاریگر،عمدتاً برای دو عملکرد کنترل محیط و واژه پردازی استفاده کردند. جیمز بیکر James K.Baker یکی از محققان شرکت IBM که در اواخر دهه 1970 در مورد این فناوری مقالات زیادی نوشت، یکی از پیشگامان این طرح بود.او و همکارانش یک شرکت خصوصی به نام Dragon Systems تاسیس کردند.این شرکت ابتدا در دهه 1990 نرم افزاری به نام Dragon Dictate تولید کرد که یک سیستم مبتنی بر گفتار گسسته بود.در سال 1997 این شرکت محصولی را تولید کرد که به جای استفاده از گفتارگسسته ،مبتنی بر گفتار پیوسته بود.در واقع این شرکت با ارائه نرم افزار Dragon Naturally Speaking (DNS) اولین سیستم تشخیص گفتار پیوسته را ارائه نمود.این سیستم توانایی تشخیص گفتار با سرعت 160 کلمه در دقیقه را داشت.همچنین شرکت تجاری IBM هم در این زمینه برای سالهای متمادی فعالیت می کرد که با طراحی بسته نرم افزاری Via Voice به ارائه سیستم های تشخیص گفتار پرداخت که در حال حاضر Scansoft محصولات IBM Via Voice راتوزیع و پشتیبانی می کند.شرکت مایکروسافت نیز فعالیتهایی درجهت تولید و کاربرد این فناوری داشته است،و بیل گیتس Bill Gates در کتابها و سخنرانی هایش به کرات در مورد آینده درخشان استفاده از سیستم های تشخیص گفتار تاکید کرده است. البته عملاً تا قبل از ارائه نرم افزار office XP وword 2002 این تکنولوژی در محصولات این شرکت بکاربرده نشد.گرچه در ابتدا عمده موارد استفاده این تکنولوژی ،برای افراد توانجو پیش بینی شده بود اما بعدها پذیرش استفاده از آن گسترده تر شد و گروههای بسیاری در مدارس و دانشگاهها علاقه مند به استفاده ازاین فناوری شدند. بطوریکه Seton Hall University نیز برای تشویق دانشجویان به آشنایی با این سیستم به دانجشویان جدید الورود نرم افزار IBM Via Voice را اهدا می کرد. 4.عملکرد سیستم های تشخیص گفتار سیستم های تشخیص گفتار به هر منظور که بکار برده شوند، عملکرد نسبتاً مشابهی دارند که عبارت است از:تبدیل گفتاربه داده و تحلیل آن توسط مدلهای آماری.شکل 1 1.4 تبدیل گفتاربه داده برای تبدیل گفتار به یک متن روی صفحه یا یک فرمان کامپیوتری، یک سیستم باید راه دشواری را طی کند.وقتی که گوینده صحبت می کند،لرزشهایی در هوا ایجاد می شود،سیستم تشخیص گفتار ابتدا امواج صوتی آنالوگ را دریافت می کند،مبدل آنالوگ به دیجیتال Analog-to-digital converter (ADC) این امواج آنالوگ را به داده های دیجیتالی تبدیل می کند. سپس سیگنال به سگمنت های کوچکی که به اندازه چند صدم ثانیه یا در مورد صداهای Plosive Consonant چند هزارم یک ثانیه هستند،تقسیم می شود. در مرحله بعد برنامه این سگمنت ها را به phoneme های شناخته شده در زبان تبدیل می کند.Phoneme ،کوچکترین عنصریک زبان است (ارائه ای از صداهایی که ما می سازیم و برای شکل دادن واژه های معنی دار آنها را در کنار هم قرار می دهیم).گام بعدی ساده به نظر می رسد اما در واقع انجام آن بسیار دشوار است .برنامه Phoneme های موجود را با سایر Phoneme هایی که درکنار آن قرار دارد،امتحان می کند و Phonemeهای هم بافت را از طریق یک مدل آماری بسیار پیچیده نقطه (plot) می کندو آنها را با مجموعه بزرگی متشکل از واژه های شناخته شده،عبارات و جملات مقایسه می کند.برنامه سپس چیزی را که کاربر احتمالاً گفته است مشخص می کند و آن را به عنوان متن یا شکل یک فرمان کامپیوتری یا صوت بیرون می دهد. 2.4 تشخیص گفتار با استفاده از مدل(الگوریتم)آماری سیستم های تشخیص گفتار اولیه سعی داشتند مجوعه ای از قوانین گرامری و دستوری را با گفتار ورودی منطبق کنند. به این صورت که اگر کلمه های گفته شده در داخل مجموعه ای از قواعد و قوانین جای می گرفتند و با آن سازگار می شدند،برنامه می توانست کلمه را تشخیص دهد. تنوع لهجه ها ونوع گفتار افراد مختلف در این حالت از تشخیص می توانست تاثیر منفی بر روی دقت این سیستم ها بگذارد. به عنون مثال تلفظ کلمه barn توسط فردی از بوستون و لندن متفاوت است در حالی که هر دو یک لغت را بکار برده اند.سیستم ها مبتنی بر قواعد و قوانین دستوری به این دلیل موفق نبودند که نمی توانستند گفتار ممتد را با حداقل میزان اشتباه تشخیص دهند. سیستم های تشخیص گفتار امروزی از سیستم های مدل آماری بسیار قدرتمند و پیچیده ای استفاده می کنند.این سیستم ها از قواعد احتمالات وریای برای تشخیص نتیجه استفاده می کنند. دو مدل مسلط امروز در این حوزه مدل مخفی مارکوف "Hidden MarkovModel" و مدل شبکه عصبی"Neural Netwok Model" هستند.این روشها اساساً برای مشخص کردن اطلاعات پنهان از سیستم،از اطلاعاتی که برای سیستم شناخته شده هستند استفاده می کنند. مدل Hidden Markov رایج ترین مدل است.در این مدل هرPhoneme مثل یک پیوند در یک زنجیره است و هنگامی این زنجیره تکمیل می شود،یک کلمه بوجود می آید.در طی این فرایند، برنامه یک score احتمالات را بر اساس دیکشنری توکار و آموزش کاربر به هر Phoneme اختصاص می دهد. این فرایند برای عبارات و جملات،حتی از این هم پیچیده تر است. (سیستم مجبور است مشخص کند که هر کلمه کجا شروع می شود و کجا به اتمام می رسد). گاهی برنامه ناچار است عباراتی را که شنیده است را با عبارت یا عبارت های قبل ار آن که در بافت جمله هستند مقایسه کند،آنرا تجزیه و تحلیل کند تا بتواند آنرا به درستی تشخیص دهد.بنابراین اگر یک برنامه دارای 60000 کلمه باشد ترتیبی از سه کلمه می تواند هر یک از 216 تریلیون احتمال ممکن باشد.بدیهی است که حتی قدرتمندترین سیستم هم نمی تواند بدون کمک،تمام این احتمالات را جستجو کند. این کمک به شکل"آموزش"برنامه ارائه می شود.با وجود اینکه توسعه دهندگان و طراحان نرم افزار که دستگاه واژگانی اصل سیستم را تنظیم می کنند،بخش اعظمی از این آموزش را انجام می دهند اما کاربر نهایی نیز باید زمان زیادی را صرف این آموزش کند.
مقاله 23- مروری بر سیستم تشخیص گفتار و کاربرد آن
کل مقاله 20 صفحه مروری بر سیستم تشخیص گفتار و کاربرد آن چكيده:سيستم تشخیص گفتار نوعی فناوری است که به یک رايانه این امکان را می دهد که گفتار و کلمات گوینده را بازشناسی و خروجي آنرا به قالب مورد نظر، مانند "متن"، ارائه كند. در این مقاله پس از معرفی و ذكر تاريخچهاي ازفناوري سیستم ها تشخيص گفتار، دو نوع تقسیم بندی از سيستمها ارائه می شود، و سپس به برخی ضعف ها و نهایتاً کاربرد این فناوری اشاره می شود.كليد واژه ها: سيستمهاي تشخیص گفتار، فناوري اطلاعات، بازشناسي گفتار 1. مقدمه گفتار برای بشر طبیعی ترین و کارآمدترین ابزار مبادله اطلاعات است. کنترل محیط و ارتباط با ماشین بوسیله گفتار از آرزوهای او بوده است.طراحی و تولید سیستم های تشخیص گفتار هدف تحقیقاتی مراکز بسیاری در نیم قرن اخیر بوده است.یکی از اهداف انسانها در تولید چنین سیستم هایی مسلماً توجه به این نکته بوده است که "ورود اطلاعات به صورت صوتی ،اجرای دستورات علاوه بر صرفه جویی در وقت و هزینه ،به طرق مختلف کیفیت زندگی ما را افزایش می دهند.امروزه دامنه ای از نرم افزارها (که تحت عنوانSpeech Recognition Systems معرفی می شوند) وجود دارند که این امکان را برای ما فراهم کرده اند.با استفاده از این تکنولوژی می توانیم امیدوار باشیم که چالش های ارتباطی خود را با محیط پیرامون به حداقل برسانیم. 2.تعریف قبل از پرداختن به به سیستم های تشخیص گفتار لازم است که فناوری تولید گفتار و تشخیص گفتار با تعریفی ساده از هم متمایز شوند: ● فناوری تولید گفتار(Text To Speech):تبدیل اطلاعاتی مثل متن یا سایر کدهای رایانه ای به گفتاراست.مثل ماشین های متن خوان برای نابینایان،سیستم های پیغام رسانی عمومی. سیستم های تولید گفتار به خاطر سادگی ساختارشان زودتر ابداع شدند. این نوع از فناوری پردازش گفتار موضوع مورد بحث در این مقاله نیستند. ● فناوری تشخیص گفتار(Speech Recognition System ): نوعی فناوری است که به یک کامپیوتراین امکان را می دهد که گفتارو کلمات گوینده ای را که از طریق میکروفن یا پشت گوشی تلفن صحبت می کند،بازشناسی نماید. به عبارت دیگر در این فناوری هدف خلق ماشینی است که گفتار را به عنوان ورودی دریافت کند و آنرا به اطلاعات مورد نیاز (مثل متن)تبدیل کند. 3.تاریخچه فناوری تشخیص گفتار اولین سیستم های مبتنی بر فناوری تشخیص گفتار در سال 1952 در"آزمایشگاههای بل"طراحی شد.این سیستم به شیوه گفتار گسسته و به صورت وابسته به گوینده و با تعداد لغت محدود 10 لغت عمل می کرد.در اوایل دهه 80 میلادی برای اولین بار الگوریتم مدلهای مخفی مارکوف "Hidden Markov Model" ارائه شد.این الگوریتم گامی مهم در طراحی سیستم های مبتنی بر گفتار پیوسته به حساب می آمد.همچنین در طراحی این سیستم از مدل شبکه عصبی و نهایتاً ازهوش مصنوعی نیز استفاده می شود.در ابتدا شرکتهای تجاری این فناوری را برای کاربردهای خاصی طراحی کردند.به عنوان مثال شرکت Kurzweil در زمینه پزشکی و مخصوصاً برای کمک به معلولان و نابینایان و شرکت Dragon در زمینه خودکارسازی سیستمهای اداری محصولات اولیه وارد بازارکردند. توانجویان در واقع اولین گروهی بودند که از این دسته محصولات به عنوان یک فناوری انطباقی و یاریگر،عمدتاً برای دو عملکرد کنترل محیط و واژه پردازی استفاده کردند. جیمز بیکر James K.Baker یکی از محققان شرکت IBM که در اواخر دهه 1970 در مورد این فناوری مقالات زیادی نوشت، یکی از پیشگامان این طرح بود.او و همکارانش یک شرکت خصوصی به نام Dragon Systems تاسیس کردند.این شرکت ابتدا در دهه 1990 نرم افزاری به نام Dragon Dictate تولید کرد که یک سیستم مبتنی بر گفتار گسسته بود.در سال 1997 این شرکت محصولی را تولید کرد که به جای استفاده از گفتارگسسته ،مبتنی بر گفتار پیوسته بود.در واقع این شرکت با ارائه نرم افزار Dragon Naturally Speaking (DNS) اولین سیستم تشخیص گفتار پیوسته را ارائه نمود.این سیستم توانایی تشخیص گفتار با سرعت 160 کلمه در دقیقه را داشت.همچنین شرکت تجاری IBM هم در این زمینه برای سالهای متمادی فعالیت می کرد که با طراحی بسته نرم افزاری Via Voice به ارائه سیستم های تشخیص گفتار پرداخت که در حال حاضر Scansoft محصولات IBM Via Voice راتوزیع و پشتیبانی می کند.شرکت مایکروسافت نیز فعالیتهایی درجهت تولید و کاربرد این فناوری داشته است،و بیل گیتس Bill Gates در کتابها و سخنرانی هایش به کرات در مورد آینده درخشان استفاده از سیستم های تشخیص گفتار تاکید کرده است. البته عملاً تا قبل از ارائه نرم افزار office XP وword 2002 این تکنولوژی در محصولات این شرکت بکاربرده نشد.گرچه در ابتدا عمده موارد استفاده این تکنولوژی ،برای افراد توانجو پیش بینی شده بود اما بعدها پذیرش استفاده از آن گسترده تر شد و گروههای بسیاری در مدارس و دانشگاهها علاقه مند به استفاده ازاین فناوری شدند. بطوریکه Seton Hall University نیز برای تشویق دانشجویان به آشنایی با این سیستم به دانجشویان جدید الورود نرم افزار IBM Via Voice را اهدا می کرد. 4.عملکرد سیستم های تشخیص گفتار سیستم های تشخیص گفتار به هر منظور که بکار برده شوند، عملکرد نسبتاً مشابهی دارند که عبارت است از:تبدیل گفتاربه داده و تحلیل آن توسط مدلهای آماری.شکل 1 1.4 تبدیل گفتاربه داده برای تبدیل گفتار به یک متن روی صفحه یا یک فرمان کامپیوتری، یک سیستم باید راه دشواری را طی کند.وقتی که گوینده صحبت می کند،لرزشهایی در هوا ایجاد می شود،سیستم تشخیص گفتار ابتدا امواج صوتی آنالوگ را دریافت می کند،مبدل آنالوگ به دیجیتال Analog-to-digital converter (ADC) این امواج آنالوگ را به داده های دیجیتالی تبدیل می کند. سپس سیگنال به سگمنت های کوچکی که به اندازه چند صدم ثانیه یا در مورد صداهای Plosive Consonant چند هزارم یک ثانیه هستند،تقسیم می شود. در مرحله بعد برنامه این سگمنت ها را به phoneme های شناخته شده در زبان تبدیل می کند.Phoneme ،کوچکترین عنصریک زبان است (ارائه ای از صداهایی که ما می سازیم و برای شکل دادن واژه های معنی دار آنها را در کنار هم قرار می دهیم).گام بعدی ساده به نظر می رسد اما در واقع انجام آن بسیار دشوار است .برنامه Phoneme های موجود را با سایر Phoneme هایی که درکنار آن قرار دارد،امتحان می کند و Phonemeهای هم بافت را از طریق یک مدل آماری بسیار پیچیده نقطه (plot) می کندو آنها را با مجموعه بزرگی متشکل از واژه های شناخته شده،عبارات و جملات مقایسه می کند.برنامه سپس چیزی را که کاربر احتمالاً گفته است مشخص می کند و آن را به عنوان متن یا شکل یک فرمان کامپیوتری یا صوت بیرون می دهد. 2.4 تشخیص گفتار با استفاده از مدل(الگوریتم)آماری سیستم های تشخیص گفتار اولیه سعی داشتند مجوعه ای از قوانین گرامری و دستوری را با گفتار ورودی منطبق کنند. به این صورت که اگر کلمه های گفته شده در داخل مجموعه ای از قواعد و قوانین جای می گرفتند و با آن سازگار می شدند،برنامه می توانست کلمه را تشخیص دهد. تنوع لهجه ها ونوع گفتار افراد مختلف در این حالت از تشخیص می توانست تاثیر منفی بر روی دقت این سیستم ها بگذارد. به عنون مثال تلفظ کلمه barn توسط فردی از بوستون و لندن متفاوت است در حالی که هر دو یک لغت را بکار برده اند.سیستم ها مبتنی بر قواعد و قوانین دستوری به این دلیل موفق نبودند که نمی توانستند گفتار ممتد را با حداقل میزان اشتباه تشخیص دهند. سیستم های تشخیص گفتار امروزی از سیستم های مدل آماری بسیار قدرتمند و پیچیده ای استفاده می کنند.این سیستم ها از قواعد احتمالات وریای برای تشخیص نتیجه استفاده می کنند. دو مدل مسلط امروز در این حوزه مدل مخفی مارکوف "Hidden MarkovModel" و مدل شبکه عصبی"Neural Netwok Model" هستند.این روشها اساساً برای مشخص کردن اطلاعات پنهان از سیستم،از اطلاعاتی که برای سیستم شناخته شده هستند استفاده می کنند. مدل Hidden Markov رایج ترین مدل است.در این مدل هرPhoneme مثل یک پیوند در یک زنجیره است و هنگامی این زنجیره تکمیل می شود،یک کلمه بوجود می آید.در طی این فرایند، برنامه یک score احتمالات را بر اساس دیکشنری توکار و آموزش کاربر به هر Phoneme اختصاص می دهد. این فرایند برای عبارات و جملات،حتی از این هم پیچیده تر است. (سیستم مجبور است مشخص کند که هر کلمه کجا شروع می شود و کجا به اتمام می رسد). گاهی برنامه ناچار است عباراتی را که شنیده است را با عبارت یا عبارت های قبل ار آن که در بافت جمله هستند مقایسه کند،آنرا تجزیه و تحلیل کند تا بتواند آنرا به درستی تشخیص دهد.بنابراین اگر یک برنامه دارای 60000 کلمه باشد ترتیبی از سه کلمه می تواند هر یک از 216 تریلیون احتمال ممکن باشد.بدیهی است که حتی قدرتمندترین سیستم هم نمی تواند بدون کمک،تمام این احتمالات را جستجو کند. این کمک به شکل"آموزش"برنامه ارائه می شود.با وجود اینکه توسعه دهندگان و طراحان نرم افزار که دستگاه واژگانی اصل سیستم را تنظیم می کنند،بخش اعظمی از این آموزش را انجام می دهند اما کاربر نهایی نیز باید زمان زیادی را صرف این آموزش کند.