Longformer
استكشف بنية Longformer لمعالجة سلاسل البيانات الطويلة بكفاءة. تعلّم كيف يتغلب الانتباه المتناثر على قيود الذاكرة في NLP ورؤية الحاسوب.
يُعد Longformer نوعًا متخصصًا من بنية التعلّم العميق صُمم لمعالجة سلاسل البيانات الطويلة بكفاءة، متجاوزًا قيود النماذج التقليدية. وقد قُدّم في الأصل لمعالجة قيود المحوّلات القياسية، التي تواجه عادةً صعوبة في التعامل مع سلاسل تتجاوز 512 رمزًا بسبب قيود الذاكرة، ويستخدم Longformer آلية انتباه معدّلة. ومن خلال خفض التعقيد الحسابي من تربيعي إلى خطي، تتيح هذه البنية لأنظمة الذكاء الاصطناعي تحليل مستندات كاملة أو نصوص مفرغة طويلة أو سلاسل جينية معقدة في تمريرة واحدة، من دون اقتطاع المدخلات.
مشكلة عنق زجاجة الانتباه#
لفهم أهمية Longformer، من الضروري النظر في قيود الأسلاف مثل BERT ونماذج GPT-3 المبكرة. تستخدم المحوّلات القياسية عملية «الانتباه الذاتي»، حيث يركّز كل رمز (كلمة أو جزء من كلمة) على كل رمز آخر في السلسلة. وينشئ ذلك تكلفة حسابية تربيعية؛ إذ تؤدي مضاعفة طول السلسلة إلى زيادة الذاكرة المطلوبة على GPU أربعة أضعاف. ونتيجةً لذلك، تفرض معظم النماذج القياسية حدًا صارمًا على حجم المدخلات، ما يجبر علماء البيانات غالبًا على تقسيم المستندات إلى أجزاء أصغر ومنفصلة، وينتج عن ذلك فقدان للسياق.
يحل Longformer هذه المشكلة من خلال تقديم الانتباه المتناثر. وبدلًا من اتصال كامل بين جميع العناصر، يستخدم مزيجًا من الانتباه المحلي ذي النوافذ والانتباه الشامل:
- انتباه النافذة المنزلقة: لا يركّز كل رمز إلا على جيرانه المباشرين. ويلتقط ذلك السياق المحلي والبنية النحوية، على نحو مشابه لمعالجة الشبكة العصبية الالتفافية (CNN) للصور.
- النافذة المنزلقة المتوسعة: لزيادة المجال الاستقبالي من دون زيادة العمليات الحسابية، يمكن أن تتضمن النافذة فجوات، ما يسمح للنموذج برؤية مسافة «أبعد» في النص.
- الانتباه الشامل: تركّز رموز محددة مختارة مسبقًا (مثل رمز التصنيف
[CLS]) على جميع الرموز الأخرى في السلسلة، كما تركز جميع الرموز عليها. ويضمن ذلك احتفاظ النموذج بفهم رفيع المستوى للمدخلات بأكملها في مهام مثل تلخيص النصوص.
التطبيقات الواقعية#
تفتح القدرة على معالجة آلاف الرموز في الوقت نفسه آفاقًا جديدة لـمعالجة اللغة الطبيعية (NLP) وما يتجاوزها.
1. تحليل المستندات القانونية والطبية#
في مجالات مثل القانون والرعاية الصحية، نادرًا ما تكون المستندات قصيرة. فقد يمتد عقد قانوني أو سجل طبي لمريض على عشرات الصفحات. وستحتاج النماذج اللغوية الكبيرة (LLMs) التقليدية إلى تجزئة هذه المستندات، ما قد يؤدي إلى إغفال الروابط المهمة بين بند في الصفحة 1 وتعريف في الصفحة 30. ويتيح Longformer إجراء التعرّف على الكيانات المسماة (NER) والتصنيف على المستند بأكمله دفعةً واحدة، ما يضمن تأثير السياق الشامل في تفسير المصطلحات المحددة.
2. الإجابة عن الأسئلة ذات النصوص الطويلة (QA)#
غالبًا ما تواجه أنظمة الإجابة عن الأسئلة القياسية صعوبة عندما تتطلب الإجابة عن سؤال تركيب معلومات موزعة على مقالة طويلة. ومن خلال إبقاء النص الكامل في الذاكرة، تستطيع النماذج المستندة إلى Longformer إجراء استدلال متعدد القفزات، وربط الحقائق الموجودة في فقرات مختلفة لتوليد إجابة شاملة. ويكتسب ذلك أهمية بالغة لأنظمة الدعم التقني المؤتمتة وأدوات البحث الأكاديمي.
تمييز المصطلحات الأساسية#
- Longformer مقابل Transformer: يستخدم Transformer القياسي انتباهًا كاملًا بقيمة $N^2$، ما يجعله دقيقًا لكنه مكلف حسابيًا للمدخلات الطويلة. ويستخدم Longformer انتباهًا متناثرًا بقيمة $N$، مقدمًا قدرًا ضئيلًا من السعة النظرية مقابل مكاسب هائلة في الكفاءة، ما يتيح مدخلات تتكون من 4,096 رمزًا أو أكثر.
- Longformer مقابل Transformer-XL: رغم أن كليهما يتعامل مع السلاسل الطويلة، يعتمد Transformer-XL على آلية تكرارية (تخزين الحالات السابقة مؤقتًا) لتذكّر المقاطع السابقة. أما Longformer فيعالج السلسلة الطويلة بصورة أصلية دفعةً واحدة، ما يبسّط التدريب المتوازي على منصات مثل منصة Ultralytics.
- Longformer مقابل BigBird: هاتان بنيتان متشابهتان جدًا طُوّرتا في الفترة نفسها تقريبًا. ويستخدم كل منهما آليات انتباه متناثرة لتحقيق تحجيم خطي. ويضيف BigBird مكوّنًا محددًا للانتباه العشوائي، بالإضافة إلى النوافذ المنزلقة.
مفاهيم التنفيذ#
رغم أن Longformer بنية وليس دالة محددة، فإن فهم كيفية إعداد البيانات للنماذج ذات السياق الطويل أمر بالغ الأهمية. وفي أطر العمل الحديثة مثل PyTorch، يتضمن ذلك غالبًا إدارة التضمينات التي تتجاوز الحدود القياسية.
يوضح المثال التالي إنشاء موتر إدخال وهمي لسيناريو ذي سياق طويل، مع مقارنته بالحجم المعتاد المستخدم في نماذج الكشف القياسية مثل YOLO26.
import torch
# Standard BERT-like models typically cap at 512 tokens
standard_input = torch.randint(0, 30000, (1, 512))
# Longformer architectures can handle significantly larger inputs (e.g., 4096)
# This allows the model to "see" the entire sequence at once.
long_context_input = torch.randint(0, 30000, (1, 4096))
print(f"Standard Input Shape: {standard_input.shape}")
print(f"Long Context Input Shape: {long_context_input.shape}")
# In computer vision, a similar concept applies when processing high-res images
# without downsampling, preserving fine-grained details.الصلة برؤية الحاسوب#
رغم أن Longformer صُمم في الأصل للنصوص، فقد أثرت المبادئ الكامنة وراءه في رؤية الحاسوب. ويشبه مفهوم حصر الانتباه في جوار محلي العمليات الموضعية في المهام البصرية. وتواجه محوّلات الرؤية (ViT) مشكلات تحجيم مماثلة مع الصور عالية الدقة، لأن عدد وحدات البكسل (أو الرقع) قد يكون هائلًا. وتُستخدم تقنيات مشتقة من انتباه Longformer المتناثر لتحسين كفاءة تصنيف الصور وكشف الأجسام، ما يساعد نماذج مثل YOLO26 على الحفاظ على سرعات عالية أثناء معالجة البيانات البصرية التفصيلية.
لمزيد من القراءة حول التفاصيل المعمارية، توفّر ورقة Longformer الأصلية من AllenAI معايير مقارنة وتبريرات نظرية متعمقة. بالإضافة إلى ذلك، غالبًا ما يستفيد التدريب الفعّال لهذه النماذج الكبيرة من تقنيات مثل الدقة المختلطة وخوارزميات التحسين المتقدمة.









