مرة أخرى

استكشاف عالم معالجة اللغات الطبيعية: من تقسيم الكلمات إلى قانون زيبف – الجزء الثالث في سلسلة المعالجة اللغوية والذكاء الصناعي.

هذه المقالة هي المقالة الثالثة من سلسلة مقالات تتناول معالجة اللغات الطبيعية وهو مجال ذو صلة وثيقة بكل من الذكاء الاصطناعي والروبوتيك.

المحتويات 

  1. مقدمة
  2. الترميز (Tokenization) 
  3. التقييس (Normalization)
  4. جذر الكلمات (Stemming)
  5. كلمات التوقف (Stop Words)
  6. وسم أجزاء الكلام (Parts of speech Tagging)
  7. حقيبة الكلمات (Bag of Words)
  8. التمثيل n-gram
  9. قانون زيبف (Zipf’s Law)
  10. مقاييس التشابه (Similarity Measures)
  11. خاتمة
  12. المراجع

1- مقدمة

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

2- الترميز (Tokenization) 

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

3- التقييس (Normalization)

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

4- جذر الكلمات (Stemming)

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

5- كلمات التوقف (Stop Words)

هي تلك الكلمات التي يتم تصفيتها قبل إجراء المزيد من المعالجة للنص، نظرًا لأن هذه الكلمات لا تساهم كثيرًا في المعنى العام ولا تؤثر على فهم المحتوى، وذلك لأنها بشكل عام الكلمات الأكثر شيوعًا في اللغة. على سبيل المثال، “the” و”and” و”a”. كمثال بسيط، يكون للجملة التالية أن تكون مفهومة تماماً حتى لو تمت إزالة كلمات التوقف:

The quick brown fox jumps over the lazy dog.

6- وسم أجزاء الكلام (Parts of speech Tagging)

يتم وضع علامات (Tags) على أجزاء الكلام والتي تم ترميزها (tokenized) في المراحل الأولى من المعالجة، وعلامات الاجزاء الأكثر شيوعا هي تحديد الكلمات كأسماء، وأفعال، وصفات، وما إلى ذلك

7- حقيبة الكلمات Bag of Words))

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

“Well, well, well,” said John.

“There, there,” said James. “There, there.”

حقيبة تمثيل الكلمات الناتجة كقاموس:
 

   {

      ‘well’: 3,

      ‘said’: 2,

      ‘john’: 1,

      ‘there’: 4,

      ‘james’: 1

   }

8- التمثيل n-gram 

يعد n-grams نموذج تمثيل آخر لتبسيط محتويات النص. على عكس التمثيل غير المنظم لحقيبة الكلمات، يهتم نموذج n-grams بالحفاظ على التسلسلات المتجاورة لـ N عنصر من النص. على سبيل المثال، نموذج 3-gram للنص التالي:

“There, there,” said James. “There, there.”

هو 

   [

      “there there said”,

      “there said james”,

      “said james there”,

      “james there there”,

   ]

9- قانون زيبف (Zipf’s Law)

 يستخدم قانون ريبف لوصف العلاقة بين تكرارات الكلمات في مجموعات المستندات. إذا تم ترتيب كلمات مجموعة المستندات حسب التكرار، وتم استخدام y لوصف عدد المرات التي تظهر فيها الكلمة x، فتكون العاقة بين تكرار العنصر ورتبة العنصر بالعلاقة (قانون زيبف) التالية: y=cx-1/2 (يتناسب تكرار العنصر عكسيًا مع رتبة العنصر)

10- مقاييس التشابه (Similarity Measures)

هناك العديد من مقاييس التشابه التي يمكن تطبيقها على معالجة اللغات الطبيعية. ما الذي نقيس به التشابه؟ عموماً، نقيس التشابه السلاسل باستخدام عدة مقاييس أشهرها: 

مقياس (Levenshtein): عدد الأحرف التي يجب حذفها أو إدراجها أو استبدالها لجعل زوج من السلاسل متساويًا

مقياس (Jaccard):وهو  قياس التداخل بين مجموعتين؛ في حالة معالجة اللغات الطبيعية، المستندات عبارة عن مجموعات من الكلمات

11- خاتمة 

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

12- المراجع

  • https://www.kdnuggets.com/2017/02/natural-language-processing-key-terms-explained.html 
  • https://www.deeplearning.ai/resources/natural-language-processing/

مهندس ومطور أنظمة مدمجة Embedded systems مع خبرة عملية تتجاوز العشر سنوات، مدرس ومدرب طلاب الجامعات السورية هندسة الالكترونيات والاتصالات منذ 2013

اترك رداً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *