الأربعاء، ديسمبر 30، 2009

كيف يتعامل الكمبيوتر مع اللفظ اللغوى المنطوق ؟

ان استخدام اصواتنا كمصدر للاوامر الكمبيوتر هو نتاج لعمل وجهد شاق ومضن لتطوير برامج كمبيوتر تأتي باسم برامج التعرف على الاصوات Speech Recognition Program.
أنواع برامج التعرف على الصوت
برامج عامة وبكلمات محدود
هذه البرامج المستخدمة في انظمة الاتصالات الحديثة والتي تقوم فيها البدالة بالرد على المتصلين. حيث يتحدث المتصل للاستعلام عن أمر ما ويقوم البرنامج بتحليل الصوت وفهمه وربما الطلب من المتحدث باداء ضغطة او اكثر على هاتفه لاستكمال المهمة بدون الاستعانة بموظف او عامل.
برامج خاصة وبكلمات عديدة
هذه البرامج تعمل مع فئة محدودة من الناس الذين تجمعهم بئية عمل مشتركة وتصل كفاءة هذه البرامج إلى 85% او اكثر في التعرف على التعليمات الصوتية بغض النظر عن اللهجة واختلاف نبرات الصوت. ويتم تدريب هذه الانظمة من خلال تعريفها باصوات المستخدمين. وكمثال توضيحي لذلك التعليمات الصوتية التي نقوم بتخزينها في الجوال لتشغيل بعض وظائف المحمول ومن ثم يصبح المحمول قادراً على التعرف على هذه التعلميات الصوتية التي تصدر من صاحب الصوت الاصلي، وبالطبع هذا المثال لتوضيح الفكرة فقط لان برامج التعرف على الصوت اكثر تعقيداً لانها يجب ان تكون قادرة على التجاوب مع عدد كبير من المتحدثين وبالتأكيد نطق كل شخص يختلف عن الآخر.
تحويل الصوت إلى بيانات رقمية
لتحويل الصوت المسموع الى نص مطبوع على شاشة الكمبيوتر او تنفيذ امر من اوامر الكمببوتر بمجرد نطقه للجهاز عبر الميكرفون فإنه على الكمبيوتر القيام بالعديد من الخطوات المعقدة لانجاز هذه المهمة. وهذه الخطوات هي:
عندما نتحدث فإن اضراب في الهواء الخارج من الفم ينتشر في الهواء في صورة اهتزازات.
يتلقى الكمبيوتر هذه الاهتزازات عبر الميكرفون ويحولها من اشارة تناظرية analog إلى اشارة رقمية digital من خلال دائرة الكترونية تعرف باسم analog-to-digital converter وتكتب اختصاراً ADC.
وهذه الخطوة تعتبر اهم خطوة حيث يقوم فيها الكمبيوتر بتحويل الموجة الصوتية وتقسيمها إلى عناصر صغيرة Samples وتسمى في بعض كتب الكمبيوتر العربية المترجمة بعملية النمذجة، وهذه العناصر تشكل المعلومات الرقمية التي يستطيع الكمبيوتر من التعامل معها وفهمها، ويخزن الكمبيوتر معلومات عن كل عنصر من هذه العناصر الرقمية تحتوي عى التردد الشدة
يقوم الكمبيوتر في هذه الخطوة بالتخلص من الاصوات التي صدرت في الخلفية وتشكل ضجيج يتداخل مع الصوت من خلال البرنامج والذي يقوم ايضا بضبط الصوت ومعايرة شدته لمستوى سمعي محدد. كما يقوم البرنامج بضبط سرعة الصوت لتتوافق مع سرعة الصوت العياري المخزن في البرنامج لان كل شخص يتحدث بسرعة تختلف عن الأخر.
يتم تحويل الاشارة الصوتية التناظري إلى اشارة صوتية رقمية مقسمة إلى عناصر او نماذج وكلما كانت العناصر اصغر كلما كانت الدقة اعلى والجودة اكثر
بعد عملية النمذجة "التقسيم" يتم اخضاع مكونات الصوت (الفونيمات phonemes) لفحص ومقارنة بالمقاطع الصوتية للغة المستخدمة والمخزنة في البرنامج والتي تعرف باسم الفونيمات phonemes وهي الاجزاء او المقاطع الصوتية التي تخرج من الفم لتشكل مع بعضها البعض اصواتاً مفهومة.
وفي اللغة الانجليزية يوجد حوالي 40 فونيم، ولكل لغة يوجد عدد من الفونيم الخاص بها قد يكون اقل او اكثر.
في هذه الخطوة الاكثر حساسية وصعوبة للكمبيوتر في انجازها والتي يعمل كل المطورين والخراء على تطويرها والتي تتعلق في عمل البرنامج الذي يعمل على فحص اللفظ اللغوي في سياق الجملة ومن ثم يعزله عن الاصوات الصادرة حوله وهذه العملية تتطلب القيام بالكثير من المحاولات الاحصائية المعقدة ومقارنة النتائج مع مكتبة ضخمة من الكلمات المعروفة والجمل الشائعة والعبارات المتداولة.
وبعدها يستطيع البرنامج من تحديد ماذا يقصد المتحدث بالضبط وهل هي اوامر للتنفيذ ام هي نص للطباعة.
وسوف نقوم في ما يلي بتوضيح وشرح المقصود بالخطوة الخامسة وكيف يقوم البرنامج بانجازها لان اي تطور في مجال برامج التعرف على الصوت يرتكز على تطوير هذه الخطوة حيث ان الخطوات الاربعة السابقة هي خطوات تحضيرية للخطوة الخامسة وتعتمد على التقدم في مجال الالكترونيات والكمبيوتر وهذا متاح ولا مشكلة فيه.
برامج التعرف على الصوت والنماذج الاحصائية المستخدمة
إن نموذج ماركوف المخفي هو النموذج الأكثر شيوعا، لذا سوف نتناوله بالشرح والتوضيح. في هذا النموذج، فإن كلّ فونيم phoneme يعتبر كالوصلة في سلسلة، حيث نعتبر ان الكلمة هي عبارة عن سلسلة.وتتفرّع هذه السلسلة في إتجاهات مختلفة في حين يعمل البرنامج على مقارنة الصوت الرقمي مع الفونيم الذي يقابله. وخلال هذه العملية، يخصص البرنامج نسبة محددة لكل احتمالية معتمداً على قاموس لغوي وعلى التدريب الصوتي الذي قام المستخدم بالتدرب عليه في اول مرة قام بتشغيل البرنامج.
هذه العملية معقدة جداً مع الجمل والعبارات لان البرنامج عليه أن يحدد أين تبدأ الكلمة وأين تتوقف في الجملة. فمثلاً الجملة "recognize speech" اي "التعرف على الحديث" اذا ما نطقت بسرعة تبدو وكانك تقول "wreck a nice beach" أي "شاطئ لطيف محطم". إن البرنامج عليه ان يحلل الفونيمات التي تستعمل في الجملة لكي يفهمه بشكل صحيح. وبتجزأة الجملتين على النحو التالي:
لماذا يبدو الامر مقعداً لهذه الدرجة؟ لنفترض مثلاً ان البرنامج يحتوي على عدد 60,000 كلمة فإن هناك 216 ترليون احتمالية لتكوين جملة من ثلاثة كلمات؟ وبالتأكيد اي كمبيوتر مهما كانت قدراته الحاسوبية فإنه غير قادر على البحث في كل هذه الاحتمالات بدون مساعدة او تدخل ما.
برنامج التدريب الخاص بالتعرف على الصوت والموجود ضمن برنامج التشغيل ويندوز اكس بي
تأتي المساعدة للكمبيوتر من خلال نموذج ماركوف المعتمد على برنامج التدريب حيث تحتاج هذه الأنظمة الإحصائية الكثير من بيانات التدريب النموذجية للوصول إلى أدائهم المثالي فالكلام المسجل كتدريب للبرنامج يستعمل لتكوين نماذج السمعية من الكلمات، والجمل والعبارات لتشكل للبرنامج شبكات إحتمالية متعددة. ولذلك عند حصولك على برنامج من برامج التعرف على الصوت فإنك بعد تنصيبه على الجهاز يطلب منك تدريب البرنامج من خلال قراءة نصوص تظهر لك على شاشة البرنامج بصوت واضح وتستغرق فترة التدريب هذه بحد اقصى 10 دقائق. وتكون هذه النصوص التي تقرأها معدة بطريقة دقيقة وربما تكون موجهة لتخصص معبن اذا كنت قد حددت للبرنامج مجال عملك كالطب او الادارة او السياسة.
عيوب ومشاكل انظمة التعرف على الصوت
لا يوجد نظام تعرف على الصوت مثالية تعمل بدقة 100% كما ان هناك عدة عوامل يمكن أن تقلل من الدقة بعضها عوامل تقنية وبعضها الأخر يرجع للمستخدم نفسه. ومن هذه العوامل ما يلي:
مستقبل انظمة التعرف على الصوت
على المستقبل البعيد فإن الوصول الى المترجم العالمي هو هدف الباحثين بالرغم من التحديات الكبيرة التي تواجه هذه الفكرة والناجمة عن اللهجات المختلفة والقواعد النحوية العديدة والعامية المستخدمة في الحياة اليومية هذا بالاضافة الى ان كلمة باللغة العربية قد تحتاج الى جملة من اربع الى خمس كلمات لتقابلها.
كما انه في وقت ما في المستقبل، قد ننتقل من التعرف الى الصوت إلى مرحلة الفهم وادراك المعنى والمقصود وربما بعد 25 سنة سنجد الكمبيوتر يتناقش ويتحاور معنا بل ويناقش مثل ما نشاهد في افلام الخيال العلمي.
المصدر:


National Institutes of Standards and Technology
http://www.nist.gov/


University of Colorado: The Center for Spoken Dialog Research
http://cslr.colorado.edu/beginweb/spoken_dialog_systems/spoken_dialog_systems.html


Microsoft: Speech Technology
http://research.microsoft.com/srg/