الورقة تفصل تقطيع اللواصق العربية عن التحليل المعجمي بقواعد finite-state مكتوبة يدوياً. تقارن ثلاثة تصاميم توازن بين الغموض وتغطية الكلمات الجديدة. المقارنة توضح المقايضة هذي، مو ترتيب عام لكل الـtokenizers.
بعكس الـ tokenizers الإحصائية اللي تتعلم من البيانات، هذا نظام مكتوب يدويًا بقواعد واضحة تكشف الـ clitics، وتسوي التحليل الصرفي، وتفك غموض الـ tokens.
النموذج 1: tokenization من دون محلل صرفي. يعتمد على clitic guesser، وهو finite-state transducer فيه أنماط مكتوبة يدويًا للـ proclitic prefixes والـ enclitic suffixes. ويولّد كل تركيبات clitics الممكنة.
وفيه محوّل lexc صغير ومستقل يتعامل مع أشكال clitics المنفصلة. النظام هذا متين، يشتغل على أي كلمة مهما كانت تغطية القاموس، و modular لأن الـ tokenization والصرف مكوّنين منفصلين.
المقابل إن الـ guesser غير حتمي، فيطلع غموض توافقي (جملة من ثلاث كلمات ممكن تطلع 8 مسارات tokenization).
النموذج 2: tokenization مع تلميحات من المحلل الصرفي. الجذر يكون مقيدًا بمدخلات المحلل الصرفي. ما اتنفّذ في الورقة؛ انوصف كتحسين مستقبلي يقلل الغموض، بس يحتاج تغطية قاموسية.
النموذج 3: tokenization معتمد على المحلل الصرفي. الجذر يكون مقيدًا بالمدخلات الفعلية في قاموس المحلل الصرفي بدل التخمين. يقلل الغموض، لكنه يخسر المتانة: ما يقدر يسوي tokenization للكلمات غير المعروفة.
النص العربي يستخدم محارف مسافات كثيرة (مسافات، أسطر جديدة، وأشكال مسافات خاصة بالعربي) بشكل مو ثابت، خصوصًا حول الترقيم والـ clitics. مطبّع finite-state يوحّدها لشكل قياسي قبل ما يبدأ الـ tokenization.
خط التطويل العربي (الكشيدة، ـ) استخدموه من جديد كعلامة توضيح. لما يقطع الـ tokenizer الـ enclitics، يحط كشيدة بين الجذر والـ clitic.
كذا يختفي الغموض بين proclitics والـ enclitics المتشابهة، وبين الـ clitics المتصلة صرفيًا والكلمات المستقلة اللي شكلها نفس الشيء. مثال: كتابهم تصير كتابـهم؛ الكشيدة توضّح إن الضمير متصل، مو كلمة لحالها.
حركة ذكية باستغلال شيء موجود أصلًا في الكتابة.
فيه finite-state transducer مركّب فوق الـ tokenizer الأساسي، ويعلّم الـ tokenizations غير المرغوبة بعلامة +undesired.
يستورد قوائم من محوّل MWE (حظر التجول → forbidden + walking)، ومعها مجموعة مختارة يدويًا من التقسيمات المستبعدة (مثلًا، بعد تنقسم إلى بـ + عد). الفلتر ما يحتاج معلومات morpho-syntactic؛ يطابق الأشكال السطحية مع أنماط غير مرغوبة ومعروفة.
الـ MWEs مثل حظر التجول (curfew) يتعاملوا معها بترك المسافات الداخلية زي ما هي، فيطلعها الـ tokenizer كـ tokens مفردة. محوّل MWE مخصص يوفّر قائمة التعابير، ومرشح الـ token يمنع التحليلات التركيبية اللي كان ممكن يطلعها tokenizer غير حتمي.
الـ tokenization يقدر يكون modular. لما تفصل كشف clitics (guesser) عن التحليل الصرفي (القاموس)، النظام يصير متين وأسهل في الصيانة.
الـ guesser يتعامل مع الكلمات اللي ما يعرفها، والفلتر يشيل الضجيج. وهذا عكس نهج "الـ tokenization المدمج في النموذج"، وكأنه متوقع نقاشات NLP pipelines اللي لسه مستمرة.
الـ tokenizers العصبية استبدلت أغلب أنظمة finite-state اليدوية للعربي. بس المشاكل الهيكلية نفسها ما راحت: تكدّس clitics العربي لسه يخلي BPE tokenizers تقطّع زيادة (كانت boundary precision لـ GPT-4o هي 17%)، ومعمارية guess-and-filter تشبه من بدري الـ pipelines الحديثة ذات المرحلتين (over-generate + rerank).
وحتى حيلة الكشيدة لسه تظهر في خطوط معالجة Arabic NLP.
أوضح فكرة في الورقة هذي مو خوارزمية بعينها، بل إن الـ tokenization المفروض ينفصل عن التحليل الصرفي. الـ guesser يحل مشكلة السلسلة السطحية (فين حدود الـ clitic؟)، والمحلل يحل المشكلة اللغوية (إيش معنى هذا الجذر؟).
خلط الاثنين يطلع أنظمة تفشل مع الكلمات غير المعروفة. هالدرس ما دخل بالكامل في neural NLP، لأن الـ tokenization مدمج في معماريات النماذج وما يتغيّر إلا بإعادة التدريب.