Tokenization (NLP) — التقطيع الرمزي
التقطيع الرمزي (Tokenization) في سياق نماذج اللغة الكبيرة (LLM) هو عملية أساسية للمعالجة المسبقة تتضمن تقسيم سلسلة نصية إلى وحدات أصغر يمكن التحكم فيها، تسمى الرموز (tokens). ثم يتم تحويل هذه الرموز إلى معرفات رقمية يمكن للنموذج معالجتها. يعد التقطيع الرمزي خطوة أولى حاسمة لأنه يؤثر بشكل مباشر على أداء النموذج وكفاءته وعدالته وجودة فهمه للغة.
المفاهيم الأساسية
الرمز (Token)
الرمز (Token) هو وحدة نصية منفصلة يعالجها نموذج اللغة. بناءً على طريقة التقطيع الرمزي المختارة، يمكن أن يمثل الرمز:
- كلمة كاملة (على سبيل المثال، «قطة»).
- جزء من كلمة أو كلمة فرعية (على سبيل المثال، «الـ»، «-ون»، «استـ»).
- حرف منفرد (على سبيل المثال، «أ»، «ب»، «ت»).
- بايت (في حالة التقطيع الرمزي على مستوى البايت).
يُخصص لكل رمز فريد رقم فهرس محدد من قاموس المُقطِّع الرمزي.
قاموس المُقطِّع الرمزي
القاموس (Vocabulary) هو المجموعة الكاملة لجميع الرموز الممكنة التي يمكن للنموذج التعرف عليها. يعد حجم القاموس معلمة فائقة (hyperparameter) هامة:
- القاموس الكبير يسمح بتمثيل عدد أكبر من الكلمات بشكل كامل، مما يحسن الفهم ويقلل من طول السلاسل، ولكنه يزيد من حجم النموذج وتعقيد التدريب.
- القاموس الصغير أكثر إحكامًا، ولكنه يتطلب تقسيم الكلمات النادرة أو المعقدة إلى عدد أكبر من الكلمات الفرعية، مما قد يطيل السلاسل ويجعل التقاط الدلالات أكثر صعوبة.
يختلف حجم القاموس بشكل كبير بين النماذج: من حوالي 50,000 رمز في GPT-2 إلى أكثر من 100,000 في النماذج الحديثة مثل GPT-4 (100 277) وLLaMA-3 (128,000).
الطرق الرئيسية للتقطيع الرمزي
توجد ثلاثة مستويات رئيسية من التفصيل (granularity) للتقطيع الرمزي.
1. التقطيع على مستوى الكلمة (Word-level)
- المبدأ: يتم تقسيم النص إلى كلمات فردية بناءً على الفواصل (المسافات، علامات الترقيم).
- المزايا: بديهي ومفهوم؛ سلاسل الرموز تكون أقصر، مما يقلل من العبء الحسابي.
- العيوب:
- مشكلة الكلمات غير المعروفة (Out-of-Vocabulary, OOV): لا يستطيع النموذج معالجة الكلمات التي لم تكن موجودة في قاموس التدريب، بالإضافة إلى الأخطاء الإملائية والكلمات الجديدة.
- حجم القاموس الكبير: يتطلب تخزين جميع الكلمات الفريدة، وهو أمر يمثل مشكلة خاصة للغات ذات الصرف الغني.
2. التقطيع على مستوى الحرف (Character-level)
- المبدأ: يتم تقسيم النص إلى أحرف فردية.
- المزايا:
- لا توجد مشكلة OOV: يمكن تمثيل أي كلمة كسلسلة من الأحرف.
- قاموس صغير: يقتصر على حجم الأبجدية والرموز الخاصة.
- العيوب:
- سلاسل طويلة: يتم تحويل النص إلى سلاسل طويلة جدًا من الرموز، مما يزيد بشكل كبير من التكاليف الحسابية.
- فقدان المعنى الدلالي: يصعب على النموذج فهم المعنى لأنه يتعامل مع أحرف فردية بدلاً من كلمات كاملة.
3. تقطيع الكلمات الفرعية (Subword Tokenization)
هذا هو النهج الوسيط والأكثر شيوعًا اليوم، والذي يجمع بين مزايا الطرق السابقة.
- المبدأ: تبقى الكلمات شائعة الاستخدام كرموز كاملة، بينما يتم تقسيم الكلمات النادرة أو غير المعروفة إلى أجزاء أصغر ذات معنى (كلمات فرعية).
- المزايا:
- يعالج بفعالية الكلمات غير المعروفة (OOV) والتنوعات الصرفية.
- حجم القاموس قابل للتحكم.
- يلتقط البنية الصرفية للكلمات.
- الخوارزميات الرئيسية:
- Byte Pair Encoding (BPE): خوارزمية تكرارية تبدأ بمجموعة من الحروف وتقوم بدمج أزواج الحروف الأكثر تكرارًا بشكل متسلسل لتكوين رموز جديدة. تُستخدم في نماذج GPT. أما Byte-level BPE، المستخدم في GPT-2 وRoBERTa، فيتعامل مع الكلمات كسلاسل من البايتات، مما يحل مشكلة OOV بالكامل.
- WordPiece: خوارزمية مشابهة لـ BPE، لكنها تختار لدمج الأزواج تلك التي تزيد من احتمالية (likelihood) بيانات التدريب إلى أقصى حد. تُستخدم في نماذج BERT.
- Unigram LM: على عكس BPE/WordPiece، تبدأ هذه الطريقة بمجموعة كبيرة من الكلمات الفرعية وتقلصها تدريجيًا عن طريق إزالة الرموز الأقل تأثيرًا على الاحتمالية الإجمالية للمجموعة النصية (corpus). وهذا يسمح بإنشاء عدة تقطيعات رمزية محتملة للكلمة الواحدة (تنظيم الكلمات الفرعية - subword regularization).
- أداة SentencePiece: مكتبة من Google تطبق BPE وUnigram LM وتعالج النص كتدفق مستمر من الحروف، مما يجعلها عالمية للغات التي لا تحتوي على فواصل واضحة بين الكلمات (مثل الصينية). تُستخدم في نماذج LLaMA وT5.
التقطيع الرمزي في نماذج اللغة الكبيرة متعددة الوسائط
في النماذج متعددة الوسائط، التي لا تعمل مع النصوص فقط، يمتد التقطيع الرمزي ليشمل أنواعًا أخرى من البيانات:
- التقطيع البصري: يتم تقسيم الصور إلى رقع صغيرة (على سبيل المثال، 16x16 بكسل)، والتي يتم تحويلها بعد ذلك إلى متجهات-رموز، على غرار الرموز النصية.
- التقطيع الصوتي: يتم تحويل الإشارات الصوتية المستمرة إلى سلسلة من الرموز المنفصلة التي تمثل مقاطع قصيرة من الصوت.
- النهج الموحد (TEAL): مفهوم يتم فيه أولاً تقطيع بيانات من أي وسيط باستخدام المُقطِّع المناسب، ثم تتم معالجة تضميناتها (embeddings) في فضاء مشترك واحد.
المشكلات والقيود
التقطيع الرمزي، على الرغم من أهميته، هو مصدر للعديد من المشكلات في عمل نماذج اللغة الكبيرة:
- عدم الاتساق والحساسية: يمكن أن تؤدي التغييرات الطفيفة في بيانات الإدخال (خطأ إملائي، حالة الأحرف، مسافة في النهاية) إلى تغيير التقطيع الرمزي بشكل جذري، مما يؤدي إلى سلوك غير متوقع للنموذج.
- المشكلات متعددة اللغات: غالبًا ما يكون القاموس الموحد للعديد من اللغات غير فعال للغات ذات الموارد المنخفضة أو الغنية صرفيًا، مما يؤدي إلى سلاسل طويلة جدًا من الرموز.
- التأثير على الاستدلال: التقسيم غير المنطقي للأرقام (على سبيل المثال، «25,000» إلى «25» و «,» و «000») أو الرموز يعيق أداء المهام الحسابية والرمزية.
- الرموز الشاذة (Glitch Tokens): رموز شاذة أو نادرة من بيانات التدريب (على سبيل المثال، أسماء المستخدمين من Reddit)، والتي يمكن أن تسبب سلوكًا غير متوقع أو ضارًا للنموذج.
المشهد المتطور والتوجهات المستقبلية
تجري الأبحاث في مجال التقطيع الرمزي بنشاط في الاتجاهات التالية:
- نماذج بدون مُقطِّع رمزي: تطوير نماذج (CANINE، ByT5) تعمل مباشرة على مستوى البايتات أو الأحرف، وذلك لإزالة مرحلة التقطيع الرمزي الصريح والمشكلات المرتبطة بها بالكامل.
- التقطيع الرمزي التكيفي والقابل للتعلم: إنشاء مُقطِّعات رمزية يمكنها التكيف ديناميكيًا مع اللغة أو المجال أو حتى نص الإدخال المحدد، أو يتم تدريبها بالاشتراك مع النموذج الرئيسي.
- المناهج الموجهة معرفيًا: تطوير طرق مستوحاة من العلوم المعرفية حول معالجة اللغة البشرية (على سبيل المثال، «مبدأ الجهد الأقل»)، لإنشاء تقطيعات رمزية أكثر جدوى من الناحية الدلالية.
روابط
المراجع
- Schuster, M.; Nakajima, K. (2012). Japanese and Korean Voice Search. PDF.
- Sennrich, R.; Haddow, B.; Birch, A. (2016). Neural Machine Translation of Rare Words with Subword Units. arXiv:1508.07909.
- Kudo, T.; Richardson, J. (2018). SentencePiece: A Simple and Language-Independent Subword Tokenizer and Detokenizer for Neural Text Processing. arXiv:1808.06226.
- Kudo, T. (2018). Subword Regularization: Improving Neural Network Translation Models with Multiple Subword Candidates. arXiv:1804.10959.
- Song, X. et al. (2021). Fast WordPiece Tokenization. ACL-Anthology.
- Mielke, S. J.; Dalmia, S.; Cotterell, R. (2021). A Brief History of Open-Vocabulary Modeling and Tokenization in NLP. arXiv:2112.10508.
- Xue, J. et al. (2022). ByT5: Towards a Token-Free Future with Pre-trained Byte-to-Byte Models. arXiv:2105.13626.
- Clark, J. H. et al. (2022). CANINE: Pre-Training an Efficient Tokenization-Free Encoder for Language Representation. arXiv:2103.06874.
- Limisiewicz, T.; Balhar, J.; Mareček, D. (2023). Tokenization Impacts Multilingual Language Modeling. arXiv:2305.17179.
- Pourmostafa Roshan Sharami, J.; Shterionov, D.; Spronck, P. (2023). A Systematic Analysis of Vocabulary and BPE Settings for Optimal Fine-Tuning of NMT. arXiv:2303.00722.
- Batsuren, K. et al. (2024). Evaluating Subword Tokenization: Alien Subword Composition and OOV Generalization Challenge. arXiv:2404.13292.
- Chai, Y. et al. (2024). Tokenization Falling Short: On Subword Robustness in Large Language Models. arXiv:2406.11687.