Vision-Language Models2023متوسط11 دقيقة قراءة
BLIP-2: بناء تدريب مسبق للرؤية واللغة انطلاقاً من مرمِّزات صور ونماذج لغوية كبيرة مُجمَّدة
BLIP-2: Bootstrapping Language-Image Pre-Training with Frozen Image Encoders and Large Language Models
Li, J. · Li, D. · Savarese, S. · Hoi, S. — ICML
المشكلة
بحلول 2023، كانت نماذج الرؤية واللغة تحقّق نتائج ممتازة، لكن الثمن كان باهظاً. نموذج مثل Flamingo يضمّ 80 مليار معامل ويحتاج تدريباً شاملاً يستهلك آلاف أيام GPU. في المقابل، كانت مكوّنات قوية جاهزة بالفعل كلٌّ على حدة: مرمِّزات صور مثل ViT مُدرَّبة على مليارات الصور، ونماذج لغوية ضخمة مثل OPT وFlan-T5 مُدرَّبة على تريليونات الرموز. السؤال المحوري: كيف نستفيد من هؤلاء الخبراء الجاهزين دون أن ندفع ثمن التدريب الشامل ودون أن يفقد النموذج اللغوي ما تعلّمه؟ المحاولات السابقة مثل Frozen وFlamingo اكتفت بخسارة توليد النص من الصورة، وتبيّن أن هذا وحده لا يكفي لردم الهوّة العميقة بين فضاء الرؤية وفضاء اللغة.
الإسهام
يقدّم BLIP-2 طريقة عامة وكفؤة حسابياً على الرؤية واللغة، تنطلق من مرمِّزات صور ونماذج لغوية كبيرة مُجمَّدة. جوهر الفكرة هو Q-Former — محوِّل استعلامي خفيف لا تتجاوز معاملاته القابلة للتدريب 188 مليون — يُدرَّب على مرحلتين لردم الفجوة بين الوسيطين. في المرحلة الأولى يتعلّم محاذاة تمثيلات الرؤية واللغة عبر ثلاث مهام تدريبية (ITC وITM وITG) مع تجميد . في المرحلة الثانية يُربط Q-Former بنموذج لغوي كبير مُجمَّد ليتعلّم التوليد. النتيجة: تفوّق على Flamingo80B بفارق 8.7% في VQAv2 دون أمثلة رغم أنه يستخدم معاملات أقل بـ 54 مرة، وحقّق أفضل أداء مسجّل في دون أمثلة (121.6 CIDEr على NoCaps) وفي استرجاع النص والصورة.
الأثر
أسّس BLIP-2 النمط الذي صار مهيمناً في الذكاء الاصطناعي : خُذ نماذج أحادية قوية وجمِّدها، ثم درِّب وصلة خفيفة تربط بينها. هذا النمط — «جمِّد واربط» — اعتمدته فعلياً كل الأنظمة الكبرى التي تلته. InstructBLIP أضاف إليه . LLaVA اختصر الوصلة إلى مجرد إسقاط خطي واحد. الفكرة الأساسية — أن تبني فوق نماذج أساسية موجودة بدل أن تُدرِّب كل شيء من الصفر — فتحت باب الذكاء الاصطناعي متعدد الوسائط أمام مختبرات بحثية محدودة الموارد، وغيّرت جذرياً الطريقة التي يبني بها المجال أنظمة الرؤية واللغة.
تخيّل مؤتمراً دولياً يجلس فيه مصوّر صحفي وروائي على الطاولة نفسها. المصوّر يرى المشاهد بتفاصيلها الدقيقة، والروائي يصوغ أفكاراً ويبني حججاً بالكلمات — لكن كل واحد يتكلم لغة لا يفهمها الآخر.
بدلاً من أن تُجبر الاثنين على تعلّم لغة جديدة من الصفر (أي إعادة تدريب باهظة)، تضع بينهما مترجماً متخصصاً — شخصاً تعلّم كيف يسمع ما يصفه المصوّر ويصوغه على شكل توجيهات يستطيع الروائي البناء عليها. هذا المترجم هو Q-Former: جسر خفيف يحوّل ما يراه مرمِّز الصور المُجمَّد إلى مدخلات يفهمها المُجمَّد، فيتعاون الخبيران دون أن يتغيّر أيٌّ منهما.
مشكلة التكلفة: التدريب الشامل للرؤية واللغة غير مستدام
وصل مجال التدريب المسبق على الرؤية واللغة إلى نقطة أصبح فيها ضحية نجاحه: النماذج تكبر باستمرار، والتكلفة تكبر معها. Flamingo مثلاً حقّق نتائج قوية في المهام متعددة الوسائط، لكنه يضمّ 80 مليار معامل واحتاج موارد حسابية هائلة لتدريبه من البداية للنهاية. والمفارقة أن القطع اللازمة لبناء نموذج رؤية ولغة ممتاز كانت موجودة بالفعل كلٌّ على حدة: مرمِّزات ViT المُدرَّبة عبر CLIP تفهم الصور بعمق، ونماذج لغوية كبيرة مثل OPT وFlan-T5 تفهم اللغة ببراعة.
السؤال يبدو بسيطاً: لماذا لا نربط هؤلاء الخبراء الجاهزين بدل أن ندرّب كل شيء من الصفر؟ لكن التحدي الحقيقي أن مرمِّز الصور والنموذج اللغوي يعملان في فضاءات مختلفة كلياً — المتجهات البصرية الخام بلا معنى بالنسبة للنموذج اللغوي. المحاولات السابقة مثل Frozen اكتفت بخسارة توليد النص من الصورة لسدّ هذه الفجوة، لكنها لم تنجح. الفجوة بين الوسيطين أعمق من ذلك، والربط المباشر الساذج يُؤدي إمّا إلى في النموذج اللغوي أو إلى ضعف في فهم المحتوى البصري.
Q-Former: جسر خفيف بين الرؤية واللغة
جوهر BLIP-2 هو Q-Former — محوِّل صغير يجلس بين مرمِّز الصور المُجمَّد والنموذج اللغوي الكبير المُجمَّد. الفكرة أنه يملك 32 «سؤالاً» — أي استعلام قابلة للتعلّم — يطرحها على مرمِّز الصور. هذه الاستعلامات تتفاعل مع السمات البصرية عبر طبقات ، وتتعلّم أن تلتقط بالتحديد المعلومات البصرية التي يحتاجها النموذج اللغوي.
بنيوياً، يتألف Q-Former من وحدتين متداخلتين تتشاركان طبقات ذاتها: الأولى محوِّل صوري ترتبط استعلاماته بالسمات البصرية المُجمَّدة عبر انتباه متبادل يُدرَج كل كتلتين، والثانية محوِّل نصي يُرمِّز النصوص أو يفكّ ترميزها. الاستعلامات تستطيع أيضاً رؤية رموز النص عبر الانتباه الذاتي المشترك، لكن طريقة التفاعل تتغيّر حسب المهمة التدريبية من خلال مختلفة.
نقطة مهمة: أوزان Q-Former تُهيَّأ من BERT-Base، مما يمنحه قاعدة قوية في فهم اللغة من البداية. أما طبقات الانتباه المتبادل — التي لا وجود لها أصلاً في BERT — فتُهيَّأ عشوائياً وتتعلّم من الصفر.
التدريب المسبق على مرحلتين: تعلَّم الرؤية أولاً ثم تعلَّم الكلام
تدريب BLIP-2 يمرّ بمرحلتين مدروستين. في كل مرحلة تُجمَّد أجزاء مختلفة من النظام، ويتعلّم Q-Former مهارة جديدة.
المرحلة الأولى: تعلّم تمثيلات الرؤية واللغة
في هذه المرحلة، يتعلّم Q-Former كيف يستخلص من الصورة السمات الأكثر فائدة للنص — بينما يبقى مرمِّز الصور مُجمَّداً تماماً. تُمرَّر الصورة عبر ViT المُجمَّد فتُنتِج ، ثم تتفاعل الاستعلامات الـ 32 مع هذه التضمينات عبر طبقات الانتباه المتبادل لتتعلّم أيّ المناطق البصرية تهمّ لفهم النص المصاحب.
ثلاث مهام تدريبية تعمل معاً في هذه المرحلة، وكل مهمة تستخدم قناع انتباه ذاتي مختلفاً يحدّد كيف تتفاعل الاستعلامات مع النص:
بين الصورة والنص (ITC): الهدف هنا محاذاة مخرجات الاستعلامات مع تضمين النص — نُقرِّب الأزواج المتطابقة ونُبعِد غير المتطابقة. يستخدم قناعاً أحادياً يمنع الاستعلامات والنص من رؤية بعضهما عبر الانتباه الذاتي، فيُجبَر كل وسيط على بناء تمثيل مستقل.
توليد النص المُؤسَّس على الصورة (ITG): هنا يتعلّم Q-Former توليد وصف نصي انطلاقاً من الصورة. يستخدم قناعاً سببياً — الاستعلامات ترى بعضها، لكن كل رمز نصي لا يرى إلا الرموز التي سبقته مع كل الاستعلامات، تماماً كما لو كان يعتمد على الاستعلامات البصرية كبادئة.
(ITM): مهمة تصنيف ثنائي: هل هذا الزوج (صورة + نص) متطابق أم لا؟ يستخدم قناعاً — الاستعلامات والنص يرى كلٌّ منهما الآخر بالكامل، وهذا يُتيح محاذاة دقيقة على مستوى التفاصيل بين الوسيطين.
المرحلة الثانية: التعلّم التوليدي من الرؤية إلى اللغة
هنا يأتي الربط الفعلي مع النموذج اللغوي الكبير المُجمَّد. مخرجات الاستعلامات من Q-Former تُمرَّر عبر لتتحوّل إلى البُعد الذي يتوقعه النموذج اللغوي، ثم تُلحَق في بداية المدخل كـتوجيهات بصرية ناعمة (soft visual prompts). النموذج اللغوي لا يُحدَّث فيه معامل واحد — يبقى مُجمَّداً بالكامل.
BLIP-2 يدعم نوعين من النماذج اللغوية:
نماذج (مثل OPT): تُدرَّب بخسارة نمذجة اللغة المعتادة — النموذج المُجمَّد يُولّد نصاً مشروطاً بالتوجيهات البصرية القادمة من Q-Former.
نماذج (مثل Flan-T5): تُدرَّب بخسارة نمذجة اللغة بالبادئة — يُقسَم النص إلى بادئة تُدمج مع التوجيهات البصرية وتدخل ، ولاحقة يستخدمها فاكّ الترميز كهدف للتوليد.
هذه المرحلة تحديداً هي التي تمنح BLIP-2 قدراته التوليدية. والميزة الكبرى أن النموذج اللغوي مُجمَّد، فيرث BLIP-2 كل ما فيه — من استدلال ومعرفة واتباع تعليمات — دون أي مخاطرة بـالنسيان الكارثي.
الفكرة في الكود
مبسَّط لإظهار الفكرة — ليس التنفيذ الحقيقي.
import torch
import torch.nn as nn
class QFormerBridge(nn.Module):
"""Q-Former مبسَّط: استعلامات قابلة للتعلّم تنتبه لسمات صورة مُجمَّدة،
ثم تُسقَط إلى فضاء مدخل النموذج اللغوي."""
def __init__(self, num_queries=32, d_model=768, d_llm=2560):
super().__init__()
# تضمينات الاستعلام القابلة للتعلّم — الأسئلة الـ 32 المطروحة على الصورة
self.queries = nn.Parameter(torch.randn(1, num_queries, d_model))
# انتباه متبادل: الاستعلامات تنتبه لسمات رقع الصورة
self.cross_attn = nn.MultiheadAttention(d_model, num_heads=12, batch_first=True)
# إسقاط مخرجات الاستعلام لتتوافق مع بُعد تضمين النموذج اللغوي
self.proj = nn.Linear(d_model, d_llm)
def forward(self, image_features):
"""
image_features: (حجم_الدفعة, عدد_الرقع, d_model) من ViT المُجمَّد
المخرج: (حجم_الدفعة, عدد_الاستعلامات, d_llm) — توجيهات بصرية للنموذج اللغوي
"""
B = image_features.size(0)
q = self.queries.expand(B, -1, -1) # (B, 32, 768)
# الاستعلامات تنتبه للسمات البصرية المُجمَّدة عبر الانتباه المتبادل
visual_queries, _ = self.cross_attn(
query=q,
key=image_features,
value=image_features
) # (B, 32, 768)
# الإسقاط إلى فضاء النموذج اللغوي
visual_prompts = self.proj(visual_queries) # (B, 32, 2560)
return visual_prompts
# الاستخدام:
# 1. ViT المُجمَّد يُرمِّز الصورة → تضمينات الرقع
# 2. Q-Former يستخلص 32 استعلاماً بصرياً عبر الانتباه المتبادل
# 3. طبقة FC تُسقط الاستعلامات إلى بُعد النموذج اللغوي
# 4. التوجيهات البصرية تُضاف قبل رموز النص → النموذج اللغوي المُجمَّد يُولّد المخرجالنتائج: أداء أعلى بموارد أقل
ما يلفت في نتائج BLIP-2 ليس جودتها فحسب، بل التي تحقّقت بها:
دون أمثلة (VQAv2): دقة 65.0% مع OPT-6.7B (و65.4% مع Flan-T5-XXL) — أي تفوّق على Flamingo80B بفارق 8.7 نقطة (56.3%)، رغم أن المعاملات القابلة للتدريب أقل بـ 54 مرة. وبعد يصل إلى 82.2%.
وصف الصور: CIDEr دون أمثلة يبلغ 144.5 على COCO (مع OPT-6.7B)، وبعد الضبط الدقيق يصل إلى 145.8. على NoCaps يصل إلى 121.6 CIDEr دون أمثلة — نتيجة غير مسبوقة تدلّ على تعميم قوي لفئات أشياء لم يرها النموذج أثناء التدريب.
: على COCO بعد الضبط الدقيق، يحقّق 97.6% في Recall@1 لاسترجاع النص من الصورة، و89.7% لاسترجاع الصورة من النص.
وكل هذا بتكلفة تدريب لا تُقارَن: نحو 12 يوم GPU فقط، مقابل مئات الأيام في الطرق الشاملة.
ما الأهم؟ رؤى من دراسة الاستئصال
دراسة الاستئصال في الورقة كشفت عن عدة نقاط تصميمية جوهرية:
لا غنى عنه. إذا تخطّيت المرحلة الأولى وقفزت مباشرة إلى ربط Q-Former بالنموذج اللغوي، ينخفض الأداء بشكل ملحوظ مع OPT وFlan-T5 معاً. OPT تحديداً يعاني من النسيان الكارثي — أداؤه يتدهور كلما تقدّم التدريب. المرحلة الأولى تمنح الاستعلامات قاعدة بصرية صلبة تجعل النموذج اللغوي قادراً على تفسيرها دون أن يتزعزع.
الخسائر الثلاث متكاملة وليست بديلة. حذف ITC يضرّ بالاسترجاع، حذف ITG يضرّ بالتوليد، وحذف ITM يضرّ بالفهم الدقيق. كل واحدة تُعلّم الاستعلامات جانباً لا تُغطيه الأخريات.
كلما كانت النماذج الأحادية أقوى، كانت النتائج أفضل. ترقية مرمِّز الصور من ViT-L (CLIP) إلى ViT-g (EVA-CLIP) تُحسّن كل المهام. ترقية النموذج اللغوي من OPT-2.7B إلى OPT-6.7B أو Flan-T5-XXL ترفع جودة التوليد. هذا يعني أن التصميم النمطي لـ BLIP-2 يجعله يستفيد تلقائياً من أي تطوّر يحصل في أيٍّ من المكوّنين.
ماذا فتح BLIP-2 من أبواب
2023
BLIP-2
تجميد مرمِّز الصور والنموذج اللغوي الكبير وتدريب جسر Q-Former خفيف بينهما. معاملات قابلة للتدريب أقل بـ 54 مرة مقارنة بـ Flamingo، مع أداء أفضل في الإجابة البصرية ووصف الصور والاسترجاع.
2023
InstructBLIP
بنى على BLIP-2 بإضافة الضبط التعليمي إلى Q-Former، فأصبح النموذج قادراً على اتباع تعليمات متنوعة في مهام الرؤية واللغة دون الحاجة لضبط مخصص لكل مهمة.
2023
LLaVA — الضبط التعليمي البصري
اختصر الوصلة من Q-Former إلى مجرد طبقة إسقاط خطي واحدة، وأثبت أن جسراً أبسط يكفي حين يكون النموذج اللغوي قوياً بما يكفي وبيانات التعليمات غنية.
2023
MiniGPT-4
جمّد كامل مسار BLIP-2 — بما فيه Q-Former وViT — ودرّب طبقة خطية واحدة فقط لربطه بالنموذج اللغوي Vicuna، فحصل على محادثة بصرية قريبة من مستوى GPT-4.
2024
BLIP-3 (xGen-MM)
استبدل Q-Former بآلية أبسط لاختيار الرموز البصرية، ووحّد التدريب كله تحت خسارة واحدة للتنبؤ بالرمز التالي، مع دعم مدخلات صور متعددة متشابكة.
الإرث الأهم لـ BLIP-2 ليس البنية نفسها بل النمط الذي أسّسه. قبله، كان الافتراض السائد أن النماذج متعددة الوسائط تحتاج تدريباً شاملاً لأنظمة ضخمة. BLIP-2 أثبت أن وصلة خفيفة تُدرَّب على مراحل مدروسة تستطيع تحقيق نتائج أفضل، بشرط أن تقف على أكتاف قوية موجودة سلفاً. هذا النمط — «جمِّد واربط» — صار القالب الذي اتبعته فعلياً كل الأنظمة الكبرى اللاحقة — من LLaVA إلى GPT-4V إلى Gemini. الدرس الجوهري — أن التصميم النمطي يتفوّق على التدريب الموحّد حين تتوفر مكوّنات أحادية قوية — غيّر جذرياً طريقة بناء أنظمة الرؤية واللغة في المجال.
المرجعLi, Li, Savarese, Hoi. BLIP-2: Bootstrapping Language-Image Pre-training with Frozen Image Encoders and Large Language Models. ICML, 2023.
مصطلحات هذه الورقة
- محوِّل الاستعلامQ-Former
- الأوزان المُجمَّدةFrozen Weights
- مرمِّز بصريVision Encoder
- النموذج اللغوي الكبيرLarge Language Model
- الانتباه التبادليCross-Attention
- التعلم التبايُنيContrastive Learning
- وصف الصورImage Captioning
- الإجابة البصرية عن الأسئلةVisual Question Answering
- مطابقة الصورة والنصImage-Text Matching
- نقل بدون تدريبZero-Shot Transfer
- التمهيد الذاتيBootstrapping
- الضبط الدقيقFine-Tuning
- التضمينEmbedding
- الانتباه الذاتيSelf-Attention
- نقل التعلمTransfer Learning