التعرف على الكلام بيثون: كيفية ترجمة الكلام إلى نص؟



تتناول هذه المدونة مفهوم التعرف على الكلام في لغة بيثون مع نموذج برنامج يترجم الكلام إلى نص باستخدام التعرف على الكلام.

الكلام هو أكثر وسائل الاتصال شيوعًا حول العالم. يعتمد معظم سكان العالم على الكلام للتواصل مع بعضهم البعض. لنفترض أننا نبني نموذجًا وبدلاً من اتباع نهج مكتوب نريد أن يستجيب نظامنا للكلام ، يصبح الأمر صعبًا إلى حد ما ويتطلب معالجة الكثير من البيانات. يتغلب نظام التعرف على الكلام على هذا الحاجز عن طريق ترجمة الكلام إلى نص. في هذه المدونة ، سنتعرف على التعرف على الكلام وحدة في بيثون . فيما يلي قائمة بالمثل:

كيف يعمل التعرف على الكلام؟

يقوم نظام التعرف على الكلام بشكل أساسي بترجمة الكلام المنطوق إلى نص. هناك العديد من الأمثلة الواقعية لنظام التعرف على الكلام. على سبيل المثال- siri ، الذي يأخذ الكلام كمدخل ويترجمه إلى نص.





كيفية الحصول على طول مصفوفة في جافا سكريبت

ميزة استخدام نظام التعرف على الكلام هو أنه يتغلب على حاجز معرفة القراءة والكتابة. يمكن لنموذج التعرف على الكلام أن يخدم كلاً من المتعلمين والأميين ، لأنه يركز على الكلام المنطوق.

يمكننا أيضًا إجراء جرد لجميع اللغات المهددة بالانقراض حول العالم باستخدام نظام التعرف على الكلام. في حين أنه يبدو مثيرًا للفضول وغير معقد على الإطلاق ، إلا أن نظام التعرف على الكلام يواجه الكثير من التحديات في صنعه.



التحديات التي يواجهها التعرف على الكلام النظام

يصعب إنشاء نظام التعرف على الكلام لأن لدينا العديد من مصادر التباين عندما يتعلق الأمر بالكلام.

أسلوب الكلام

كل فرد لديه أسلوب متنوع في التحدث ، بما في ذلك اللهجات أيضًا. كما نعلم جميعًا ، لدينا لهجات مختلفة للتحدث باللغة الإنجليزية أيضًا. توجد الإنجليزية الأمريكية والإنجليزية البريطانية والعديد من اللهجات الأخرى عندما يتعلق الأمر بالتحدث باللغة الأكثر شيوعًا في العالم. يجعل النطق أيضًا من الصعب على نظام التعرف على الكلام ترجمة الكلام كليًا.



بيئة

تضيف البيئة الكثير من ضوضاء الخلفية للنظام أيضًا. سيكون للغرفة المعزولة مقارنة بالقاعة تنوع كبير في ضوضاء الخلفية. حتى الصدى يمكن أن يضيف الكثير من الضوضاء في النظام أيضًا.

خصائص السماعة

قد لا يكون صوت كبار السن هو نفسه صوت الرضيع. تعتمد خصائص كلام الشخص على العديد من العوامل بما في ذلك القسوة والوضوح أيضًا.

قيود اللغة

قد لا يكون لبعض الكلام المنطوق معنى عملي عندما يتعلق الأمر بالترجمة.

بعد التغلب على هذه التحديات ، يمكن لأي نظام التعرف على الكلام أن يترجم الكلام إلى نص. الآن بعد أن عرفنا كيفية عمل التعرف على الكلام ، دعنا نلقي نظرة مختلفة المتوفرة للتعرف على الكلام في بيثون.

الحزم المتاحة للتعرف على الكلام في بيثون

  • أبياي

  • التعرف على الكلام

  • Google_speech_cloud

  • التجمع

  • جيوب فينكس

  • Watson_developer_cloud

  • أبيض

سنتعرف على تفاصيل حزمة SpeechRecognition في هذه المدونة ، دعنا نلقي نظرة على ممر الذاكرة لنفهم كيف تطورت أنظمة التعرف على الكلام على مر السنين.

كان أول نموذج أولي للتعرف على الكلام في الواقع لعبة مسماة راديو ريكس التي جاءت حوالي 1920. كان لديه كلب يجلس في منزل كلب يخرج بمجرد أن ينطق أحدهم بكلمة ريكس.

كانت المشكلة الوحيدة في النموذج هي أن الزنبرك كان متصلًا بمغناطيس كهربائي حساس للطاقة التي تتراوح بين 500 هرتز. لكونه كاشف تردد بحت ، يمكن تسميته عن بعد كنموذج التعرف على الكلام.

في عام 1962 ، توصلت شركة IBM إلى إصدار علب الأحذية النموذج الذي كان قادرًا على التعرف على الكلمات المعزولة وأيضًا إجراء بعض العمليات الحسابية أيضًا.

ثم جاء هاربي من جامعة CMU ، والتي كانت قادرة على التعرف على الكلام المتصل من 1000 كلمة من المفردات. في حوالي الثمانينيات بدأ الناس في استخدام النماذج الإحصائية وكان نموذج ماركوف المخفي أحد أكثر نماذج التعلم الآلي استخدامًا.

بعد إدخال الشبكات العصبية العميقة ، تعمل معظم نماذج التعرف على الكلام على الشبكات العصبية. الاحتمالات لا يمكن تصورها مع الشبكات العصبية ، يمكن أن تصل المفردات إلى 10 آلاف كلمة وأكثر.

كيفية تثبيت SpeechRecognition في بايثون؟

لتثبيت حزمة SpeechRecognition هي python ، قم بتشغيل الأمر التالي في الجهاز وسيتم تثبيته على نظامك.

التثبيت والتعرف على الكلام python-edureka

طريقة أخرى لذلك ، يمكن أن تضيف الحزمة من مترجم المشروع إذا كنت تستخدم

تحتوي الحزمة على فئة التعرف والتي هي أساسًا حيث يحدث السحر. إنها في الأساس فئة تُستخدم للتعرف على الكلام. فيما يلي سبع طرق يمكن من خلالها قراءة مصادر الصوت المختلفة باستخدام واجهات برمجة تطبيقات مختلفة.

  • Recogn_bing ()
  • التعرف على google ()
  • التعرف على google_cloud ()
  • Recogn_houndify ()
  • Recogn_ibm ()
  • Recogn_wit ()
  • Recogn_sphinx ()

الآن ، يمكن استخدام Recogn_sphinx لتشغيل نظام التعرف على الكلام دون اتصال بالإنترنت أيضًا. يتطلب تركيب Pocketsphinx.

استيراد التعرف على الكلام كـ sr # حالة من فئة أداة التعرف r = sr.Recognizer ()

أخذ المدخلات من الميكروفونات

لاستخدام الميكروفونات ، سيتعين علينا تثبيت وحدة pyaudio أيضًا. نستخدم فئة الميكروفون للحصول على كلام الإدخال من الميكروفون بدلاً من أي طريقة إدخال أخرى مثل ملف صوتي.

بالنسبة لمعظم المشاريع ، يمكننا استخدام الميكروفونات الافتراضية. ولكن إذا كنت لا ترغب في استخدام الميكروفون الافتراضي ،يمكنك الحصول على قائمة بأسماء الميكروفون باستخدام طريقة list_microphone_names.

لالتقاط الإدخال من الميكروفون ، نستخدم طريقة الاستماع.

الفرق بين الشيف و Ansible
استيراد التعرف على الكلام كـ sr r = sr.Recognizer () باستخدام sr.Microphone () كمصدر: audio = sr.listen (مصدر)

كيفية تثبيت Pyaudio في بايثون؟

لتثبيت Pyaudio في python ، قم بتشغيل الأمر التالي في المحطة أو إذا كنت تستخدم pycharm ، أضف الحزمة من مترجم المشروع في الإعدادات.

حالة الاستخدام

سنقوم بعمل برنامج باستخدام وحدة التعرف على الكلام في لغة بيثون للتعرف على الكلام وتنفيذ ما يلي:

  1. تحويل الكلام إلى نص
  2. افتح عنوان URL باستخدام وحدة متصفح الويب
  3. تمرير استعلام باستخدام التعرف على الكلام لإجراء بحث في عنوان url

فيما يلي برنامج بيان المشكلة أعلاه:

استيراد الكلام_recognition باعتباره sr استيراد متصفح الويب كـ wb r1 = sr.Recognizer () r2 = sr.Recognizer () r3 = sr.Recognizer () باستخدام sr.Microphone () كمصدر: طباعة ('[search edureka: search youtube]') طباعة ('تحدث الآن') audio = r3.listen (مصدر) إذا كان 'edureka' في r2.recognize_google (صوت): r2 = sr.Recognizer () url = 'https://www.edureka.co/' مع sr .Microphone () كمصدر: print ('ابحث عن استعلامك') audio = r2.listen (مصدر) حاول: get = r2.recognize_google (صوت) print (get) wb.get (). open_new (url + get) باستثناء sr.UnknownValueError: print ('error') باستثناء sr.RequestError مثل e: print ('failure'.format (e)) إذا كان' video 'في r1.recognize_google (صوت): r1 = sr.Recognizer () url =' https://www.youtube.com/results؟search_query= 'مع sr.Microphone () كمصدر: print (' search for a video ') audio = r2.listen (source) try: get = r1.recognize_google (audio ) print (get) wb.get (). open_new (url + get) باستثناء sr.UnknownValueError: print ('لا يمكن فهم') باستثناء sr.RequestError مثل e: print (فشل في الحصول على النتائج '. تنسيق (e) )

سوف تحصل على الإخراج كما هو موضح في الصورة. إذا قلت edureka ، فسيطالبك بنطق الاستعلام الذي تريد البحث عنه في عنوان url الخاص بـ edureka الذي كتبناه في متغير عنوان url. إذا قلت python ، فستفتح صفحة الويب التالية في المتصفح.

في هذه المدونة ، ناقشنا كيف يمكننا استخدام التعرف على الكلام في بيثون لترجمة الكلام إلى نص باستخدام حزمة التعرف على الكلام. أصبحت حاجة الساعة لمفاهيم مثل التعرف على الكلام أو اكتئاب الكائن ، مع التي توفر إمكانيات لا يمكن تصورها لأنظمة التعرف على الكلام حيث يمكننا تدريب واختبار بيانات الكلام الهائلة لبناء نظام. يمكنك التسجيل في للشبكات العصبية العميقة لإتقان مهاراتك وبدء التعلم.

لديك أي استفسار؟ أذكرها في التعليقات ، وسنعاود الاتصال بك.