← voidwest    research notes

probing Arabic morphology inside LLMs

a research plan · 2026-05-16
Arabic NLP probing ember morphology research plan
Open Question

ورقة morphemes without borders وضّحت إن GPT-4o يوصل 97% على توليد Arabic nonce roots مع إن محاذاة الـ tokenizer حقه سيئة، بينما ALLAM ينهار لـ 20% مع إن محاذاته أفضل وعنده بيانات تدريب عربية أكثر. GPT-4o يتعلم الصرف في مكان ما داخل النموذج، و ALLAM لا. أين؟ وكيف تبدو التمثيلات؟

motivation

ورقة 2026 تترك سؤال مفتوح: الكفاءة الصرفية في الـ LLMs تنقاس بـ productive generalization، لا بمحاذاة الـ tokenizer، لكن ما نعرف كيف يحققها النموذج.

المؤلفون يقترحون "الاستدلال التركيبي + اتباع التعليمات" كآلية، لكن هذا وصف سلوكي، مو mechanistic.

ثلاث حقايق تخلي هذا ممكن الحين:

  1. ember يعطي وصول مباشر للـ hidden states. بعد كل transformer block، أقدر أنادي backend.data(&x) وأقرأ الـ activations. بدون hooks، بدون CUDA synchronization، بدون framework overhead.
  2. الـ behavioral probing رخيص. ما أحتاج أدرب probes على 100K مثال. مهمة الجذر والوزن المبتكرة من ورقة 2026 تعطي ground truth نظيف: أعطِ جذر + وزن، وتأكد إذا المخرج صحيح. probe في كل طبقة.
  3. المقارنة تكتب نفسها. شغّل نفس الـ probe على GPT-2 (أسوأ محاذاة tokenizer، أداء عربي غير معروف)، LLaMA 3 (أكبر، أفضل، محاذاة متوسطة)، ونماذج عربية. اللحظة اللي تنفصل فيها المنحنيات تقول لك بالضبط متى تظهر التمثيلات الصرفية.

experimental design

hypothesis

النماذج اللي تولّد كلمات nonce بشكل صحيح تبني تمثيلات داخلية قابلة للفصل خطياً للجذر والوزن — وتظهر هالتمثيلات في طبقات transformer العميقة.

النماذج اللي تفشل في التوليد (مثل ALLAM) إما ما تبني هالتمثيلات أبداً، أو تبنيها في طبقات مبكرة وتفقدها في الطبقات العميقة حيث يُتخذ قرار الـ output.

models

stimuli

من ورقة 2026: جذور nonce (مخترعة) + أوزان حقيقية. المهمة: بالنظر لجذر nonce مثل q-l-b مع وزن مثل فَعَلَ، ولّد الكلمة الصحيحة (qalaba).

توسعة. dataset الورقة فيها 100 nonce root مع 5 أوزان. أوسع لـ 200 nonce root مع 10 أوزان (2,000 محفز) لطاقة إحصائية كافية للـ CCA والـ RSA.

probe types

كل probe يشتغل على hidden states النموذج من ember:

  1. behavioral probe (على مستوى logit). وهل ينتج النموذج الشكل الصحيح؟
  2. linear probe (على مستوى hidden state). درّب مصنف خطي على hidden state كل طبقة للتنبؤ بالوزن (binary classification: وزن X أو لا؟). هذا يكمّل الـ behavioral probe: إذا الـ linear probe يوصل لدقة عالية لكن السلوك ضعيف، النموذج يمثل المعلومات الصرفية من دون ما يستخدمها للتوليد. كود الـ probe يستخدم SGD من numpy، مو PyTorch، عشان يشتغل في نفس البيئة.

pipeline

خط الأنابيب الكامل:

1. stimuli/generate_stimuli.py → nonce_root_pattern.json (مجموعة المحفزات)
2. src/main.rs --probe-input nonce_root_pattern.json → activations/ (سحب hidden states عبر ember)
3. probes/behavioral_probe.py → accuracy_by_layer.csv (دقة التوليد عبر الطبقات)
4. probes/train_linear_probe.py → probe_accuracy.csv (قابلية فك التشفير الخطي)
5. probes/cca_analysis.py → cca_scores.csv (تشابه عبر النماذج)
6. probes/rsa_analysis.py → rsa_plots/ (هندسة فضاء التمثيلات)
7. probes/plot_results.py → plots/ (الرسوم البيانية النهائية)

metrics and expectations

measurement points

compute requirements

لـ GPT-2 small (124M parameter): 12 طبقة × 12 رأس × 64 بعد = 768 بعد hidden state. 200 محفز × 12 طبقة = 2,400 activation vector لكل نموذج. تدريب probe على 4,800 عينة ياخذ ثواني في numpy. الـ pipeline كامل لـ GPT-2 يشتغل في أقل من دقيقة. LLaMA 3 8B بـ Q4_K quantization يحتاج حوالي 5GB RAM، ممكن على لابتوب.

expected results & interpretation

if GPT-4 succeeds but we can't probe it

أوزان GPT-4 مو متاحة. خطة الـ probing زي ما هي مكتوبة تشتغل على نماذج مفتوحة الأوزان. نتيجة ورقة 2026 (GPT-4o دقة 97% على nonce) تعطي الحد الأعلى. تجربة الـ probing تسأل: هل النماذج مفتوحة الأوزان بأحجام مختلفة تظهر نفس التنظيم الداخلي اللي يفسّر أداء GPT-4o؟ نبحث عن نشوء التمثيلات الصحيحة، مو عن تكرار GPT-4o.

if probes are near chance everywhere

هذا يعني إن المعلومات الصرفية غير قابلة للفك الخطي من activations الطبقات الفردية؛ يمكن تكون موزعة عبر الطبقات، أو غير خطية. المتابعة: probes غير خطية (MLP)، أو تحليل تشابه تمثيلي بين الطبقات (CKA).

if root and pattern are in the same subspace

يمكن النموذج مرمّز الجذر+الوزن المدمجين كتمثيل موحد بدل ما يفصلهم. هذا يعني إن النموذج تعلم جدول بحث بدل قاعدة تركيبية، وهذا متسق مع سلوك ALLAM (جيد على الجذور الحقيقية، ينهار على المبتكرة).

if the inflection point is between 1B and 3B

هذه أكثر نتيجة قابلة للتنفيذ. تعني إن الحقن الصرفي الصريح (على مستوى tokenizer أو embedding) يمكن يساعد فقط تحت حوالي 1B parameter. فوق هذا الحد، النموذج يتعلمه بنفسه. هذا يكمم المقايضة ويقول للباحثين متى يستثمرون في tokenization خاص باللغة ومتى يكبرون النموذج.

related work to cite

next steps

  1. إضافة سحب الـ activation لـ ember، حوالي 30 سطر في model.rs. دالة جديدة forward_with_activations ترجع hidden states مع الـ logits.
  2. بناء مجموعة المحفزات، ابدأ بالـ dataset العامة من Alakeel et al.، فلتر للجذور المبتكرة فقط، وسّع لـ ~200 محفز مع +10 أوزان.
  3. شغّل probes GPT-2، baseline. عربية GPT-2 غالباً ضعيفة، لكن هيكل الـ probe يشتغل بغض النظر.
  4. شغّل probes LLaMA 3 1B/3B، المقارنة المثيرة. وين نقطة الانعطاف؟
  5. اكتب، إذا منحنى التحجيم واضح، هذه ورقة قصيرة (findings أو workshop). 6 صفحات، قصة نظيفة: "اللي وضّحته ورقة 2026 على المستوى السلوكي؛ واللي يصير داخل النموذج لتفسيره."