معالجة اللغات الطبيعية

من ويكيبيديا، الموسوعة الحرة
اذهب إلى: تصفح، ‏ ابحث

معالجة اللغات الطبيعية (بالانجلزية NLP) هي مجال علوم الحاسوب و اللغويات المعنية بالتفاعلات بين الحاسوب واللغات الطبيعية. والتي بدأت كفرع من الذكاء الاصطناعي والتي بدورها متفرعة من المعلوماتية،

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

تحليل النصوص الطبيعية[عدل]

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

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

مثال على بعض المشاكل التي تواجه أنظمة فهم وتحليل اللغات الطبيعية:

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

مفهوم الذكاء الاصطناعي لفهم الجمل المنفصلة[عدل]

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

وعادة ماينظم البرنامج الكامل لمعالجة اللغات الطبيعية بشكل graph، تُمثل فيه الأشكال البيضاوية المعلومات التي سيتم معالجتها، أما المستطيلات فتضم البرامج الفرعية التي تؤدي إلى التحويلات المطلوبة بين هذه الأشكال.

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

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

مستويات تحليل اللغات الطبيعية[عدل]

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

التحليل الصرفي[عدل]

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

التحليل النحوي[عدل]

وهو الجزء الذي يهتم بعلاقة الكلمات بعضها مع بعض، هيكلية الجملة، وغيرها من المعلومات النحوية، ويعتمد على المرحلة الصرفية.

التحليل الدلالي[عدل]

وهو الجزء الذي يهتم بفهم المقصود من الجملة عن طريق الربط المنطقي بين موضوع الحديث في الجملة ومعلومات من العالم الواقعي. تعتمد هذه المرحلة على كل من المرحلة الصرفية والنحوية.

أمثلة[عدل]

أمثلة على التحليل الصرفي[عدل]

كلمة : قال. لها عدة صور صرفية عند التحليل، على النحو التالي:

  1. قال: " قَالَ " فعل ماضٍ، من الجذر : ق ول.
  2. قال: " قَالَ " فعل ماضٍ، من الجذر : ق ي ل.
  3. قال: " قالٍ " اسم فاعل من الفعل الثلاثي: قلى، من الجذر : ق ل ي.
  4. قال: " قالّ " اسم فاعل من الفعل الثلاثي: قل، من الجذر : ق ل ل.

أمثلة على برامج نحوية[عدل]

إن البرنامج الذي ظل مشهوراً في تاريخ الذكاء الاصطناعي هو برنامج شردلو بلاشك، الذي وضعه تيري وينوجراد في MIT. ويحاكي هذا البرنامج عمل إنسان آلي لديه القدرة على تناول عدة أشياء ذات أشكال متعددة مثل المكعبات والأهرامات الموضوعة على منضدة، ويمكنه أن يتحدث بلغة طبيعية مع شخص ما وأن يجيب على أسئلته حول هذه الأشياء. ولقد ضم وينوجراد في برنامجه قواعد لغوية مستمدة من النحو النسقي systemic grammer لهاليداي halliday وهو عبارة عن نظام من الشبكات المنطقية التي تُعبر عن خواص معينة للوحدات التركيبية خاصة لحالات الأفعال وأزمنتها وبنائها (للمعلوم والمجهول). وتستخدم بعض المعاني الدلالية أثناء التحليل اللغوي مما يؤدي إلى خفض عدد البناءات الممكنة للجملة عما لو طبقنا المعايير التركيبية وحدها.

وفيما يلي مثال لحوار حقيقي لبرنامج شردلو :

مستخدم البرنامج : كم عدد الأشياء الموجودة على قمة المكعبات الخضراء؟

شردلو : أنا غير متأكد مما تعنيه بعبارة " على قمة " في الجملة " على قمة المكعبات الخضراء " هل تعني :

  1. مباشرة على السطح
  2. في أي مكان أعلى المكعبات.

مستخدم البرنامج : 2

شردلوا : هناك ثلاثة أشياء

مستخدم البرنامج : هل لمست أي هرم قبل أن تضع الهرم الأخضر على المكعب الصغير؟

شردلو : نعم، المكعب الأخضر.

مستخدم البرنامج : متى التقطته؟

شردلو : عندما كنت أقوم برص المكعب الأحمر والكتلة الحمراء الكبيرة والمكعب الأخضر الكبير.

مستخدم البرنامج: ولماذا التقطته؟

شردلو : التقطته كي أتخلص منه.

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

وهو برنامج يعتمد على استخدام طريقة معروفة بـ شبكة الانتقال المعززة Augmented Transition Network ATN للتحاور مع قاعدة بيانات باللغة الطبيعية. وتتكون قاعدة البيانات هذه من معلومات عن عينات من صخور القمر والتي جمعها رواد فضاء من ناسا NASA.

ويتم تحليل الأسئلة التي توجه للبرنامج على 3 مراحل:

  1. تحليل تركيبي، يبني شجرة الأعراب أو عدة شجرات إذا أمكن.
  2. تحليل دلالي للشجرة أو الشجيرات، يبني التمثيل الداخلي للاستفسار.
  3. الاستجابة للطلب المتضمن في التمثيل الداخلي للسؤال، وينطوي هذا على البحث عن المعلومات المطلوبة في السؤال وإعداد الرد باللغة الطبيعية.

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

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

ومن أمثلة الأسئلة التي يمكن أن يتناولها :

  1. ماهو متوسط تركيز الألمنيوم في صخور مرتفعة القلوية؟
  2. كم عدد العينات التي تحتوي على خامس أكسيد الفوسفور؟

أمثلة على برامج دلالية[عدل]

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

وفيما يلي مثال على قيام مارجي على إعادة الصياغة:

الجمل الداخلة : خنق جون ماري

المخرجات :

  1. قتل جون ماري بأن خنقها.
  2. خنق جون ماري وماتت لأنها لم تستطع أن تتنفس.
  3. ماتت ماري لأنها لم تستطع أن تتنفس، ولم تستطع أن تتنفس لأن جون عصر رقبتها.

وهذا مثال على قيام مارجي بالاستنتاج:

الجملة الداخلة : أعطى جون ماري حبة أسبرين

المخرجات :

  1. أعتقد جون أن ماري تريد أسبرين.
  2. لم تشعر ماري بأنها على مايرام.
  3. أرادت ماري أن تتحسن.

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

النصوص (السيناريو) Scripts[عدل]

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

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

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

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

الموجودات: مناضد، قائمة الطعام، أطباق، نقود، فواتير الحساب...

الأفراد:الزبائن، الجرسون، محصل النقود، المدير، الطباخ...

شروط الدخول:

  • أن يكون الزبون جائعاً
  • ان يكون لدى الزبون نقود

النتيجة:

  • لدى الزبون نقود أقل مما كان لديه قبل الدخول
  • الزبون لم يعد جائعاً
  • الزبون سعيد (ربما)
  • مدير المطعم لديه نقود أكثر

مثال على ميكانيكية تطبيق السيناريو Script Mechanism[عدل]

يرمز SAM إلى ميكانيكية تطبيق السيناريو Script Mechanism لروجر شانك وزملائه بجامعة بيل، ويستطيع هذا البرنامج فهم ونص قصصي كالآتي:

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

وبإدخال هذا النص إلى الحاسب أخرج البرنامج الملخص التالي: " منذ أربعة أيام اصطدمت سيارة بالحاجز الرئيسي في طريق رقم 6 وقتل فرانسيس دارك المقيم في وارنجتون، كما جُرح السائق أندرو مارفل المقيم في 59 ميدل ستريت بلانكستر ولم توجه الشرطة أي تهم لأحد"

كما أخرج البرنامج الملخص باللغة الأسبانية. واستطاع الإجابة على الأسئلة المتعلقة بالحادثة على الوجه التالي:

  • هل قتل أحد؟

نعم قتل فرانسيس دارك

  • هل جرح أحد؟

نعم لقد جرح أندرو مارفل جرحاً سطحياً

  • لماذا جرح أندرو مارفل؟

لأن السيارة اصطدمت بالحاجز الرئيسي

  • هل أخذ أندرو مارفل إلى المستشفى؟

نعم اخذ أندرو مارفل إلى المستشفى

  • كيف أخذ أندرو مارفل إلى المستشفى؟

أخذ فريق الإنقاذ مارفل إلى المستشفى

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

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

الأتجاهات الرئيسية لمعالجة اللغات الطبيعية[عدل]

  • المنهج القاعدي أو اللغوي
  • المنهج الأحصائي أو المبني علي المتن أو المكنز أو المدونه اللغوية

المجالات الرئيسية لمعالجة اللغات الطبيعية[عدل]

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

روابط خارجيه[عدل]