Sequence Models
معالجة اللغة والسلاسل الزمنية
دليل عربي مفصّل للمبتدئين يشرح كيف تفهم الآلة النصوص، الصوت، والسلاسل الزمنية: من البيانات المتتابعة، إلى RNN وLSTM وGRU، ثم Attention وTransformers، وصولًا إلى نماذج اللغة الكبيرة (BERT، GPT، Llama) والتطبيقات اليومية — بتشبيهات من الحياة وأمثلة بسيطة.
Sequential Data — البيانات التسلسلية
قبل أن نتحدث عن الشبكات، نحتاج فكرة واحدة بسيطة: بعض البيانات لها ترتيب. لو غيّرت الترتيب، يتغيّر المعنى. هذه هي البيانات التسلسلية (Sequential Data).
تخيّل قصة في 5 صور: (1) ولد يفتح الباب (2) يرى هدية (3) يفتحها (4) يفرح (5) يشكر أمه. لو رتّبتَ الصور عشوائيًا، القصة تنهار. النص والصوت والأسعار والأسهم مثل هذه القصة: الترتيب جزء من المعنى.
Text — النص
الجملة «القطة أكلت الفأر» تختلف تمامًا عن «الفأر أكل القطة». نفس الكلمات، ترتيب مختلف، معنى مختلف. لذلك لا يكفي أن نعدّ الكلمات فقط — نحتاج نموذجًا يفهم ماذا جاء قبل وماذا جاء بعد.
«أنا لم أحب الفيلم» ≠ «أنا أحببت الفيلم» — كلمة «لم» قبل الفعل قلبت المعنى. نموذج التسلسل يتعلّم أن النفي يؤثر على ما بعده.
Audio — الصوت
الصوت موجة مستمرة عبر الزمن. الحاسوب يقسّمها إلى قطع صغيرة متتابعة (frames). كلمة «مرحبا» ليست نقطة واحدة — بل سلسلة أصوات: مـ → ر → حـ → با. التعرّف على الكلام = فهم تسلسل هذه القطع.
مقطع صوت قصير
16,000 رقمًا في الثانية (عند 16 kHz) — كل رقم = ارتفاع الموجة في لحظة.
مثل الموسيقى
النوتات بالترتيب تصنع اللحن. نفس النوتات مخلوطة = ضوضاء بلا معنى.
Time Series — السلاسل الزمنية
أرقام تُقاس عبر الوقت: سعر الذهب كل يوم، درجة الحرارة كل ساعة، عدد الزوار كل أسبوع. الهدف غالبًا: التنبؤ بالغد من الأمس واليوم.
السبت: 200 · الأحد: 180 · الإثنين: 90 · … — النموذج يرى النمط الأسبوعي ويتوقع مبيعات الجمعة القادمة. بدون الترتيب الزمني لا معنى للأرقام.
DNA — الحمض النووي
DNA سلسلة من الحروف: A، T، C، G. الترتيب يحدد ماذا يصنع الجين. نماذج التسلسل تساعد في اكتشاف الأمراض والتنبؤ بوظيفة المناطق الجينية — نفس فكرة «الترتيب مهم» لكن في علم الأحياء.
| النوع | الوحدة | مثال سؤال |
|---|---|---|
| نص | حرف / كلمة / جملة | ما رأي الكاتب؟ هل الجملة إيجابية؟ |
| صوت | إطار زمني / phoneme | ماذا قال المتحدث؟ |
| سلسلة زمنية | قياس في لحظة t | كم سيكون السعر غدًا؟ |
| DNA | قاعدة (A/T/C/G) | هل هذه المنطقة مهمّة؟ |
Recurrent Neural Networks — الشبكات المتكررة
الشبكة العادية (Feedforward) ترى المدخلات مرة واحدة وتنتهي. لكن النص طويل: كلمة بعد كلمة. نحتاج شبكة تقرأ خطوة بخطوة وتتذكر ما قرأت. هذه فكرة RNN.
RNN — الفكرة الأساسية
في كل خطوة زمنية t، الشبكة تأخذ:
- المدخل الحالي (مثلاً الكلمة الحالية)
- الملخّص من الخطوات السابقة (يُسمّى الحالة المخفية)
ثم تنتج ملخّصًا جديدًا يُمرَّر للخطوة التالية. كأنها تقرأ الكتاب صفحة بصفحة وتكتب ملاحظات في الهامش.
Hidden State — الحالة المخفية
الحالة المخفية (Hidden State) ليست «سرًا» — بل متجه أرقام يمثّل «ماذا فهمت الشبكة حتى الآن». بعد قراءة «الجو اليوم جميل وسأخرج لـ…» قد تحتوي الحالة على أثر لكلمات مثل «جو»، «جميل»، «سأخرج» لتساعد على توقع الكلمة التالية.
أنت لا تتذكر كل كلمة حرفًا بحرف. تكتب ملخّصًا قصيرًا وتحدّثه باستمرار. الحالة المخفية = دفتر ملاحظاتك المضغوط داخل الشبكة.
Sequence Learning — تعلّم التسلسل
أنواع المهام الشائعة:
كثير → واحد
جملة كاملة → تصنيف مشاعر (إيجابي/سلبي).
واحد → كثير
صورة → وصف نصي متعدد الكلمات.
كثير → كثير
ترجمة جملة عربية → إنجليزية كلمة بكلمة.
توقع الخطوة التالية
«مرة عليه…» → يتوقع «السلام».
سلسلة: 1، 2، 3، 4، ؟ — الإنسان يقول 5. RNN يتعلّم نمط «زِد واحدًا» من أمثلة كثيرة. في اللغة: بعد «صباح…» يتعلّم أن «الخير» شائع.
لا تحتاج حفظ المعادلة الآن. المعنى: المدخل الحالي + الذكرى السابقة تُخلط بحساب بسيط لإنتاج ذكرى جديدة.
LSTM — الذاكرة الطويلة القصيرة
RNN البسيط ينسى. لو قلتَ في أول الجملة اسم شخص، وبعد 50 كلمة سألتَ «من فعل ذلك؟»، قد يضيع الاسم. LSTM (Long Short-Term Memory) حلّ هذه المشكلة بأبواب تتحكم بما يُحفظ وما يُنسى.
عندك مستودع (الخلية). كل صباح تصل شاحنة معلومات جديدة. المدير يقرر بثلاث قرارات: ماذا أرمي من القديم؟ ماذا أضيف من الجديد؟ ماذا أعرِض للعملاء اليوم؟ هذه هي «الأبواب».
Gates — الأبواب
Forget Gate — باب النسيان
يقرر ماذا يُحذف من الذاكرة. مثال: انتهت فقرة عن شخص، ننسى تفاصيله غير المهمة.
Input Gate — باب الإدخال
يقرر ماذا من المعلومات الجديدة يستحق الدخول للذاكرة.
Output Gate — باب الإخراج
يقرر ماذا من الذاكرة يظهر كإجابة «الآن» للخطوة الحالية.
Cell State — حالة الخلية
الحالة المخفية في RNN مثل سبورة تُمسح كثيرًا. في LSTM يوجد مسار أملس اسمه Cell State — كحزام ناقل يمر عبر الخطوات، والأبواب فقط تضيف أو تحذف منه بلطف. لذلك المعلومات المهمة تبقى أطول.
Long-Term Memory — الذاكرة طويلة المدى
لهذا يُقال إن LSTM يتذكر على مدى طويل نسبيًا: الأسماء، الأزمنة، العلاقات بين بداية الجملة ونهايتها. هذا جعل LSTM الأشهر لسنوات في الترجمة وتحليل المشاعر والتنبؤ بالسلاسل الزمنية.
«أحمد ذهب إلى السوق واشترى تفاحًا وبرتقالًا ثم عاد إلى المنزل لأن المطر بدأ. من اشترى الفاكهة؟» — LSTM يحافظ على «أحمد» عبر الجملة حتى يصل للسؤال.
| المكوّن | دوره بكلمات بسيطة |
|---|---|
| Forget Gate | امسح ما لم يعد مفيدًا |
| Input Gate | اكتب الجديد المهم |
| Cell State | دفتر الذاكرة الرئيسي |
| Output Gate | اختر ماذا تقول الآن |
GRU — الوحدة المتكررة المبسّطة
GRU (Gated Recurrent Unit) فكرة قريبة من LSTM لكن أبسط وأسرع غالبًا: بابان فقط بدل ثلاثة، وحالة واحدة بدل اثنتين.
Reset Gate — باب إعادة التعيين
يقرر كم من الماضي نتجاهل عند حساب المرشّح الجديد. إذا كان السياق تغيّر فجأة (موضوع جديد في المحادثة)، الـ Reset Gate يساعد على «البدء من جديد» جزئيًا.
Update Gate — باب التحديث
يمزج بين «القديم» و«الجديد». يشبه الجمع بين Forget وInput في LSTM في قرار واحد: هل أبقي الذاكرة كما هي أم أحدّثها بقوة؟
تخيّل مفتاحًا من 0 إلى 1: عند 0 تبقى على الذكرى القديمة تمامًا، عند 1 تستبدلها تقريبًا بالجديد. هذا روح Update Gate.
- بيانات متوسطة الحجم وتريد تدريبًا أسرع من LSTM.
- تجربة أوّلية قبل الانتقال لـ Transformer.
- مشاريع موبايل/خوادم محدودة الموارد.
اليوم، لمعظم مهام اللغة، يتجاوز الجميع إلى Transformers. لكن فهم LSTM/GRU مهم جدًا للأسس وللفهم والبحوث القديمة والمشاريع الصغيرة.
NLP Basics — أساسيات معالجة اللغة
الحاسوب لا يفهم العربية أو الإنجليزية كما نفهمها. يحتاج خطوات تحويل النص إلى أرقام ثم تمثيلات ذكية.
Tokenization — التقطيع إلى رموز
التوكنيزيشن = تقطيع النص إلى وحدات صغيرة تُسمّى tokens. قد تكون كلمات، أو أجزاء كلمات، أو أحرفًا.
جملة: «أنا أحب التعلم العميق»
- حسب الكلمات: [أنا] [أحب] [التعلم] [العميق]
- حسب الأجزاء (مثل ChatGPT): [أنا] [أحب] [ال] [تعلم] [ال] [عميق] — تقريبي للتوضيح
لماذا الأجزاء؟ لأن كلمة نادرة مثل «استراتيجية» قد تُقسَّم إلى قطع معروفة، فلا تحتاج مفردات بملايين الكلمات الكاملة.
text = "أنا أحب التعلم العميق"
tokens = text.split() # تقطيع بسيط بالفراغ
print(tokens)
# ['أنا', 'أحب', 'التعلم', 'العميق']
Embeddings — التضمينات
بعد التقطيع، نحوّل كل token إلى قائمة أرقام (متجه). الكلمات المتشابهة المعنى تقترب في هذا الفضاء الرقمي.
«ملك» و«ملكة» و«أمير» قريبة في الخريطة. «موزة» و«تفاحة» قريبة في منطقة الفواكه. البعد بين «ملك» و«موزة» كبير. هذا ما تفعله Embeddings.
Word2Vec
طريقة شهيرة (2013) تعلّم التضمين من السياق: «قل لي جيرانك أقل لك من أنت». الشبكة ترى نوافذ كلمات وتتعلّم تمثيلًا يجعل السياقات المتشابهة قريبة.
أشهر معادلة توضيحية: اطرح «رجل» من «ملك» وأضف «امرأة» فتقترب من «ملكة» — ليس سحرًا، بل هندسة في فضاء الأرقام.
GloVe
Global Vectors: يعتمد على إحصاءات التكرارات المشتركة للكلمات في كل النصوص (كم مرة ظهرت «شاي» مع «سكر»؟). النتيجة: تضمينات ثابتة جاهزة للاستخدام.
FastText
مثل Word2Vec لكن يأخذ أجزاء الكلمات (subwords). مفيد جدًا للغات الغنية بالصرف مثل العربية: يفهم «يكتبون» و«كتبت» لأن الجذر/الأجزاء مشتركة حتى لو الكلمة كاملة نادرة.
| الطريقة | الفكرة | متى تفيد؟ |
|---|---|---|
| Word2Vec | تعلّم من السياق المحلي | بداية NLP، بحث التشابه |
| GloVe | إحصاءات التشارك العالمية | تضمينات جاهزة ثابتة |
| FastText | أجزاء الكلمات | عربي، كلمات نادرة، أخطاء إملائية |
اليوم، نماذج Transformer تتعلّم تضمينات سياقية: كلمة «عين» في «عين الماء» تختلف عن «عين الإنسان» — نفس الحروف، تمثيل مختلف حسب الجملة.
Attention — الانتباه
عندما تترجم جملة طويلة، لا تنظر لكل كلمة بنفس القوة. تركّز على الكلمات المهمة الآن. Attention يعطي الشبكة هذه القدرة: توزيع أوزان الانتباه.
المسرح كله مضاء خافتًا، لكن الكشاف يتبع البطل. عند ترجمة كلمة «أكل»، الكشاف يركز على «التفاحة» أكثر من «أمس» أو «بهدوء».
Self Attention — الانتباه الذاتي
كل كلمة في الجملة تنظر إلى كل الكلمات الأخرى في نفس الجملة وتسأل: «من الأهم لفهمي؟»
الجملة: «الطائر الأزرق غرّد على الغصن لأنه سعيد»
كلمة «أنه» تحتاج أن تربط بـ «الطائر» لا بـ «الغصن». Self-Attention يتعلّم هذه الروابط عبر أوزان أكبر بين «أنه» و«الطائر».
ثلاث تسميات تسمعها كثيرًا:
- Query (سؤال): ماذا أبحث عنه؟
- Key (مفتاح): ماذا أمثّل كمدخل للبحث؟
- Value (قيمة): ماذا أعطي من محتوى لمن ركّز عليّ؟
تشبيه المكتبة: تكتب سؤالًا (Query)، تقارنه بعناوين الكتب (Keys)، ثم تأخذ محتوى الكتب المناسبة (Values).
Multi Head Attention — الانتباه متعدد الرؤوس
رأس انتباه واحد قد يركّز على نوع علاقة واحد. بعدة «رؤوس» بالتوازي، كل رأس يتعلّم زاوية مختلفة: واحد يربط الضمائر، وآخر يربط الصفات، وثالث يربط الأفعال بمفعولها.
ثم تُدمج نتائج الرؤوس. لهذا قيل: Transformer يفهم اللغة بشكل أغنى من RNN خطوة بخطوة.
Transformers — المحوّلات
ورقة «Attention Is All You Need» (2017) غيّرت اللعبة: بدلاً من قراءة كلمة ثم كلمة مع ذاكرة متسلسلة فقط، نعالج الجملة تقريبًا «دفعة واحدة» بالانتباه. النتيجة: أسرع تدريبًا على GPU، وأقوى على النصوص الطويلة نسبيًا.
Encoder — المشفّر
يقرأ المدخل (مثل جملة عربية) ويبني تمثيلًا غنيًا لكل كلمة في سياقها. سلسلة طبقات: Self-Attention ثم شبكة تغذية أمامية، تتكرر.
مدخل: «السماء زرقاء اليوم». بعد الـ Encoder، تمثيل كلمة «زرقاء» يعرف أنها صفة للسماء في هذا السياق — وليس «زرقاء» بمعزل.
Decoder — فك التشفير
يولّد المخرج خطوة بخطوة (مثل الترجمة الإنجليزية). ينظر إلى:
- ما أنتجه حتى الآن (كلماته السابقة)
- مخرجات الـ Encoder (فهم الجملة الأصلية)
BERT يعتمد بشكل أساسي على Encoder. GPT يعتمد على Decoder (أو كتلة شبيهة بالـ Decoder). نماذج الترجمة الكلاسيكية Transformer تستخدم الاثنين.
Positional Encoding — الترميز الموضعي
مشكلة: الانتباه يرى كل الكلمات معًا، فيفقد فكرة «من أول ومن ثانٍ». الحل: نضيف لكل كلمة إشارة عن موقعها في الجملة (موجة أو أرقام مواضع قابلة للتعلّم).
الطلاب في الصف لهم وجوه (المعنى) + رقم مقعد (الموضع). بدون أرقام المقاعد، لا تعرف من جلس يمين الباب. Positional Encoding = أرقام المقاعد للكلمات.
| المكوّن | بلغة بسيطة |
|---|---|
| Self-Attention | كل كلمة تنظر للكل وتختار الأهم |
| Multi-Head | عدة طرق نظر في وقت واحد |
| Feed-Forward | معالجة إضافية لكل موضع |
| Positional Encoding | أخبر النموذج بترتيب الكلمات |
| Residual + LayerNorm | استقرار التدريب (تفاصيل هندسية) |
Large Language Models — نماذج اللغة الكبيرة
LLM = Transformer ضخم دُرّب على كميات هائلة من النصوص. الفكرة الجوهرية غالبًا: توقّع الكلمة التالية ملايين المرات، حتى يصبح النموذج بارعًا في اللغة والمعرفة والأنماط.
BERT
Bidirectional Encoder Representations from Transformers. يقرأ السياق من الاتجاهين (يمين ويسار الكلمة). ممتاز لـ: تصنيف النصوص، استخراج الكيانات، الإجابة على أسئلة من فقرة.
يخبّئ كلمات عشوائيًا ويطلب من النموذج تخمينها: «الـ [MASK] أزرق» → «سماء». هكذا يتعلّم فهم السياق بعمق.
GPT
Generative Pre-trained Transformer. يولّد نصًا باتجاه واحد (من اليسار لليمين في الإنجليزية). أساس ChatGPT وكثير من المساعدين. قوته: الكتابة، الحوار، التلخيص، الأكواد — حسب البيانات والتعليمات اللاحقة (Instruction Tuning).
T5
Text-to-Text Transfer Transformer. كل مهمة تُصاغ كنص → نص: «ترجم إلى إنجليزية: …»، «لخّص: …»، «هل المشاعر إيجابية؟ …». فكرة موحّدة أنيقة.
Llama · Qwen · DeepSeek
Llama
عائلة نماذج مفتوحة من Meta. شائعة للبحث والتخصيص المحلي (مع ترخيص وشروط).
Qwen
عائلة قوية من Alibaba، أداء ممتاز بعدة لغات بما فيها سياقات شرق آسيوية وعالمية.
DeepSeek
نماذج حديثة لفتت الانتباه بكفاءة التدريب وأداء قوي في الاستدلال والبرمجة.
عدد المعاملات (Parameters) بالمليارات. ليست سحرًا: حجم أكبر + بيانات أكثر + تدريب أطول → قدرة أفضل عامة (مع تكلفة وطاقة أعلى). للنماذج الصغيرة مهام محدودة أحيانًا تكفي تمامًا وأرخص.
| النموذج | الطابع | استخدام شائع |
|---|---|---|
| BERT | فهم (Encoder) | تصنيف، بحث، NER |
| GPT | توليد (Decoder) | محادثة، كتابة، كود |
| T5 | نص→نص | ترجمة، تلخيص، مهام عامة |
| Llama / Qwen / DeepSeek | LLM حديثة | مساعدين، تطبيقات، تخصيص |
التطبيقات — أين ترى هذا كل يوم؟
كل ما سبق ليس نظرية بعيدة. هذه نماذج التسلسل في حياتك:
Translation — الترجمة
مدخل عربي → Encoder يفهم → Decoder يكتب إنجليزية. Google Translate وDeepL يعتمدان على أفكار Transformer (وأجيال سابقة من Seq2Seq + Attention).
«كيف حالك؟» → tokens → embeddings → طبقات انتباه → «How are you?»
Chatbots — روبوتات المحادثة
تقرأ رسائلك كتسلسل، تحافظ على سياق الحوار (حد أقصى لعدد الـ tokens)، وتولّد الرد كلمة كلمة. الجودة تعتمد على النموذج + التعليمات + ربما استرجاع معلومات من مستنداتك (RAG).
Summarization — التلخيص
مقال طويل → ملخّص قصير يحافظ على الأفكار الأساسية. نوعان: استخراج جمل مهمة، أو توليد ملخّص جديد بكلمات النموذج.
Sentiment Analysis — تحليل المشاعر
تعليق منتج → إيجابي / سلبي / محايد. قد يكفي نموذج صغير أو BERT مضبوط بدقة على بيانات عربية.
# 1) اجمع 200 تعليق عربي مصنّف
# 2) tokenizer + نموذج جاهز (مثل AraBERT)
# 3) درّب رأس تصنيف بسيط
# 4) جرّب على تعليقات جديدة
Speech Recognition — التعرّف على الكلام
موجة صوت → ميزات عبر الزمن → نماذج تسلسل (قديمًا RNN/LSTM، اليوم غالبًا Transformer أو Conformer) → نص. مثالك اليومي: المساعد الصوتي ولوحة المفاتيح الصوتية.
ترجمة
Seq2Seq + Attention / Transformer
محادثة
LLM + سياق الحوار
تلخيص
Encoder-Decoder أو LLM
مشاعر
BERT / تصنيف تسلسلي
كلام → نص
نماذج صوت تسلسلية
أسعار / طقس
LSTM أو Temporal models
- يوم 1–2: افهم التسلسل والتوكنيزيشن يدويًا على جمل قصيرة.
- يوم 3–4: نفّذ RNN صغيرًا لتوقع الحرف التالي (مثال تعليمي).
- يوم 5–6: جرّب LSTM/GRU على مشاعر جمل.
- يوم 7–8: اقرأ عن Attention وشاهد تصور الأوزان إن أمكن.
- يوم 9–11: استخدم نموذج Hugging Face جاهز (ترجمة أو تصنيف عربي).
- يوم 12–14: مشروع صغير: تحليل مشاعر أو تلخيص فقرة + README على GitHub.