الرؤية الحاسوبية2021متوسط14 دقيقة قراءة
خصائص ناشئة في محوِّلات الرؤية ذاتية الإشراف
Emerging Properties in Self-Supervised Vision Transformers
Caron, M. · Touvron, H. · Misra, I. · Jégou, H. · Mairal, J. · Bojanowski, P. · Joulin, A. — ICCV
المشكلة
بحلول عام 2021، كانت محوِّلات الرؤية (ViT) قد حققت نتائج قوية في الصور، لكن ذلك كان مشروطاً بتدريبها بإشراف كامل على مجموعات بيانات ضخمة مُعنونة مثل ImageNet-21k أو JFT-300M. في الوقت نفسه، كان المسبق ذاتي الإشراف — وهو السر وراء نجاح المحوِّلات في معالجة اللغة الطبيعية — لم يُستكشَف بشكل كافٍ في مجال الرؤية الحاسوبية. الأساليب ذاتية الإشراف المتوفرة آنذاك (SimCLR وMoCo وBYOL) بُنيت أساساً حول الشبكات الالتفافية، واعتمدت على دوال خسارة تبايُنية تحتاج عيّنات سلبية، أو بنوك ذاكرة كبيرة، أو شبكات تنبؤ متخصصة. السؤال الذي لم يطرحه أحد كان: هل يُفضي الجمع بين ومحوِّلات الرؤية إلى خصائص لا تظهر حين نستخدم كلاً منهما على حدة؟
الإسهام
قدّمت الورقة إطار DINO ( بدون عنونة): منهج بسيط للتعلم ذاتي الإشراف يتعلّم فيه نموذج «الطالب» أن يُطابق التوزيع الاحتمالي الذي يُنتجه نموذج «المعلّم»، علماً بأن المعلّم ليس سوى متوسط متحرك أُسّي لأوزان الطالب ذاته. المعلّم لا يرى إلا اقتصاصين شاملين من الصورة، بينما يعالج الطالب الاقتصاصات الشاملة والمحلية معاً، فيتعلّم ربط التفاصيل المحلية بالسياق الشامل عبر خسارة الإنتروبيا التقاطعية. آليتا التمركز والشحذ تمنعان انهيار التمثيل دون الحاجة إلى عيّنات سلبية أو دوال خسارة تبايُنية أو بنوك ذاكرة. الاكتشاف الأبرز: محوِّلات الرؤية المُدرَّبة ذاتياً بـ DINO تُظهر خصائص ناشئة — خرائط ترسم حدود الأجسام بوضوح كأنها أقنعة تجزئة دلالية، وسماتها تعمل كمصنِّف أقرب جيران (k-NN) بدقة 78.3% على ImageNet مع ViT-S، دون أي ضبط دقيق.
الأثر
أثبت DINO أن محوِّلات الرؤية حين تُدرَّب ذاتياً تُنتج تمثيلات مختلفة نوعياً عمّا يُنتجه التدريب المُشرَف — تمثيلات «ترى» حدود الأجسام دون أن يُخبرها أحد بمواقعها. شكّل DINO الأساس الذي بُني عليه DINOv2، والذي وسّع المنهج ببيانات مُنقَّحة وأهداف مُركَّبة لإنتاج سمات بصرية عامة الأغراض تُنافس CLIP. ألهم نموذج التقطير الذاتي في DINO موجة من الأساليب اللاحقة (iBOT وMSN وEsViT)، وباتت خرائط انتباهه الدليل المرجعي على أن المحوِّلات قادرة على اكتساب فهم مكاني من الصور وحدها.
تخيّل حصة رقص بترتيب غريب: المعلّم والتلميذ هما الشخص نفسه لكن في لحظتين مختلفتين. التلميذ يرقص الآن، أمّا المعلّم فهو ذاكرة مُمهَّدة ومستقرة لكل رقصاته السابقة. التلميذ أحياناً يشاهد المسرح كاملاً من نافذة بانورامية (المناظر الشاملة)، وأحياناً لا يرى إلا أجزاء صغيرة من خلال ثقوب ضيّقة (المناظر المحلية) — يداً هنا أو قدماً هناك. القاعدة بسيطة: مهما كان الجزء الذي يلمحه التلميذ من ثقب صغير، عليه أن يستنتج الرقصة الكاملة التي يراها المعلّم من النافذة الواسعة. بعد أسابيع من التمرين، يستوعب التلميذ الرقصة كاملةً من شذرات فقط — ويحدث شيء لافت: عينه تتجه تلقائياً نحو الراقص وتتجاهل الخلفية، رغم أن أحداً لم يقل له «ركّز على الراقص وتجاهل الستائر».
المشكلة: محوِّلات الرؤية المُشرَف عليها تُغفل البنية الخفية
حين تُدرَّب بطريقة — مثلاً على تصنيف 1000 فئة في ImageNet — فإنها تتعلّم التصنيف بدقة، لكن خرائط الانتباه الذاتي الداخلية تبدو مشوَّشة ومبعثرة. لو سألت النموذج «إلى أين تنظر بالضبط؟» لحصلت على خريطة حرارية فوضوية تُضيء في كل مكان بدل أن ترسم حدوداً واضحة للأجسام.
في المقابل، نجحت في معالجة اللغة الطبيعية تحديداً بفضل التعلم ذاتي الإشراف المسبق (كالرموز المُقنَّعة في BERT، والتنبؤ بالكلمة التالية في GPT). فطرح مؤلفو DINO السؤال: ماذا يحدث لو طبّقنا المنهج ذاته على محوِّلات الرؤية؟ ليس فقط «هل ينجح الأمر؟» بل «هل يكشف شيئاً جديداً لم نره من قبل؟»
الإجابة فاجأت الجميع. محوِّلات الرؤية المُدرَّبة ذاتياً طوّرت خصائص ناشئة — قدرات لم يُدرِّبها عليها أحد صراحةً. رؤوس تعلّمت من تلقاء نفسها فصل الأجسام عن الخلفيات. وفضاء السمات انتظم بشكل نظيف لدرجة أن بحثاً بسيطاً بأسلوب — بلا أي تدريب إضافي — كان كافياً لتصنيف الصور بدقة تقترب من المصنِّف الخطي المُدرَّب.
إطار DINO: تقطير ذاتي بدون عنونة
DINO اختصار لـ self-DIstillation with NO labels أي التقطير الذاتي بدون عنونة. الاسم يلخّص الفكرة بالكامل: خُذ تقنية — حيث يتعلّم من — ثم تخلَّص من العنصرين اللذين يبدوان لا غنى عنهما: العنونات، والمعلّم المُدرَّب مسبقاً بشكل منفصل.
في تقطير المعرفة التقليدي، يكون المعلّم نموذجاً كبيراً مُدرَّباً مسبقاً يُنتج أهدافاً احتمالية ناعمة يتعلّم منها طالب أصغر حجماً. DINO يقلب هذا المفهوم رأساً على عقب: المعلّم والطالب يتشاركان البنية نفسها، والمعلّم ليس إلا لأوزان الطالب ذاته. الطالب يُحدَّث بـ، والمعلّم يُحدَّث بامتصاص أوزان الطالب ببطء. لا توجد عنونات في أي مرحلة من مراحل المعالجة.
لماذا ينجح هذا أصلاً؟ لأن المعلّم — بوصفه نسخة مُمهَّدة من الطالب — يقدّم هدفاً أكثر استقراراً واتساقاً من مخرجات الطالب التي تتقلّب بسرعة مع كل دفعة بيانات. تخيّل أنك تتعلّم الرسم لا بمقارنة رسمتك بصورة فوتوغرافية، بل بمتوسط تراكمي لأفضل محاولاتك السابقة — نسخة مصقولة من نفسك تكون دائماً أفضل قليلاً لأنها أقل تأثراً بالضوضاء.
الاقتصاص المتعدد: تعليم الفهم من المحلي إلى الشامل
استراتيجية في DINO تخلق تفاوتاً مقصوداً بين ما يراه المعلّم وما يراه الطالب. من كل صورة تدريب، يُولِّد DINO:
اقتصاصين شاملين بدقة 224×224 بكسل، يغطي كل منهما أكثر من 50% من الصورة. هذه مُدخلات المعلّم — يرى الصورة الكبيرة دائماً.
عدة اقتصاصات محلية (عادةً من 6 إلى 8) بدقة 96×96 بكسل، تغطي 5% إلى 50% فقط من الصورة. هذه القصاصات الصغيرة قد لا تحتوي إلا على جناح أو عجلة أو رقعة فراء.
الطالب يعالج كل الاقتصاصات، الشاملة والمحلية. أمّا المعلّم فلا يعالج إلا الشاملة فقط. تطرح السؤال: هل يستطيع الطالب — وهو لا يرى إلا رقعة صغيرة من خلال ثقب — أن يُنتج المخرج نفسه الذي يُنتجه المعلّم حين ينظر إلى المشهد بأكمله؟
هذا الربط بين المحلي والشامل هو المحرِّك الأساسي لتعلُّم DINO. الطالب مُطالَب باستنتاج المعنى الكلّي من تفاصيل جزئية — «هذا النسيج وهذا الشكل لا يمكن أن ينتميا إلا لطائر، إذن يجب أن يتطابق مخرجي مع ما يراه المعلّم». مع تقدُّم التدريب، يبني النموذج تسلسلاً هرمياً من السمات: من الأنسجة، إلى الأجزاء، إلى الأجسام الكاملة — كل ذلك بلا أي عنونات.
دالة الخسارة: مطابقة التوزيعات الاحتمالية
كلا الشبكتين تُنتجان متجهاً بأبعاد K (حيث K = 65,536 افتراضياً). يُمرَّر هذا المتجه عبر دالة مع معامل لإنتاج توزيع احتمالي. حرارة الطالب τ_s مرتفعة نسبياً (مثلاً 0.1) فتُعطي توزيعات ناعمة ومنتشرة، بينما حرارة المعلّم τ_t أخفض (مثلاً 0.04) فتُعطي توزيعات حادّة وواثقة. هذا الشحذ بالغ الأهمية — وكأنه يقول للطالب: «المعلّم متأكد جداً من إجابته، فانتبه إلى أين يُركِّز احتمالاته».
الخسارة هي بين مخرج المعلّم (الهدف) ومخرج الطالب (التنبؤ)، مُجمَّعة على كل أزواج المناظر المتقاطعة. والنقطة الجوهرية هنا: الأزواج الذاتية مستبعدة. أي إذا رأى المعلّم الاقتصاص الشامل الأول، فإن خسارة الطالب تُحسَب فقط على الاقتصاص الشامل الثاني وجميع الاقتصاصات المحلية — وليس على الاقتصاص نفسه الذي رآه المعلّم. هذا الاستبعاد يمنع النموذج من الاكتفاء بنسخ المدخل كما هو.
تجنُّب الانهيار: التمركز والشحذ
بدون عنونات أو عيّنات سلبية، ما الذي يمنع الشبكة من الاستسلام لحل تافه — كأن تُخرج المتجه نفسه لكل صورة بصرف النظر عن محتواها؟ هذه هي مشكلة ، وهي العقبة الأساسية أمام التعلم ذاتي الإشراف.
أساليب (مثل SimCLR وMoCo) تعالج المشكلة بأزواج سلبية صريحة: «اجعل تمثيل هذه الصورة مختلفاً عن تلك». أمّا BYOL فيتجنّب العيّنات السلبية باستخدام شبكة تنبؤ وإيقاف . DINO يسلك طريقاً ثالثاً بآليتين تعملان معاً:
يطرح المتوسط الجاري لمخرجات المعلّم على مستوى الدُّفعة. الفائدة: منع أي بُعد واحد من السيطرة على المخرج — بدون هذه الخطوة، قد ينمو بُعد واحد ويلتهم كل القيم بينما تتقلّص البقية إلى الصفر. لكن التمركز وحده يدفع التوزيع نحو الانتظام التام، بحيث يحصل كل نموذج أوّلي على الاحتمال ذاته.
الشحذ يعاكس هذا الأثر باستخدام حرارة منخفضة τ_t في سوفتماكس المعلّم. الحرارة المنخفضة تجعل التوزيع حادّاً ومُركَّزاً — أي تُجبر المعلّم على اختيار عدد قليل من النماذج الأوّلية بدل توزيع الاحتمال بالتساوي على الجميع.
الآليتان معاً تُشكِّلان توازناً دقيقاً: التمركز يمنع هيمنة بُعد واحد، والشحذ يمنع الانهيار إلى توزيع منتظم. هما كجدارين يسندان قوساً — أزِل أحدهما وينهار البناء كله.
المعلّم بالزخم: نسخة أكثر نعومة من الذات
شبكة المعلّم لا تتلقّى تدرُّجات أبداً. بدلاً من ذلك، بعد كل خطوة تحديث للطالب، تُزاح أوزان المعلّم قليلاً نحو أوزان الطالب عبر المتوسط المتحرك الأُسّي. معامل الزخم λ يبدأ عند 0.996 ويرتفع تدريجياً إلى 1.0 خلال التدريب وفق جدول جيب تمامي.
لماذا تكون النسخة الأبطأ من الطالب معلّماً أفضل؟ لأن الانحدار التدريجي عملية صاخبة بطبيعتها — كل دفعة بيانات تسحب الطالب في اتجاه مختلف قليلاً. المعلّم بالمتوسط المتحرك يمتص هذه التقلُّبات تدريجياً، فيكون في المحصلة نسخة أنظف وأكثر استقراراً. في مراحل التدريب الأولى يكون λ أصغر (0.996) ليتكيّف المعلّم أسرع، ومع نضج التدريب يقترب λ من 1.0 فيتباطأ المعلّم كثيراً ويصبح هدفاً ثابتاً تقريباً.
هذا هو المبدأ ذاته المعروف في نظرية التحسين بمتوسط بولياك: متوسط عدد كبير من التكرارات الصاخبة يكون أقرب إلى الحل الأمثل من أي تكرار بمفرده.
البنية: عمود فقري ViT + رأس إسقاط
يعمل DINO مع الشبكات الالتفافية (ResNet-50) ومحوِّلات الرؤية على حدٍّ سواء، لكن الخصائص الناشئة لا تظهر إلا عند استخدام ViT. البنية تتألف من جزأين رئيسيين:
الجزء الأول هو ، وهو محوِّل رؤية قياسي. تُقسَّم الصورة إلى رقع غير متداخلة (16×16 أو 8×8 بكسل)، تُحوَّل كل رقعة إلى خطي، ويُضاف في بداية التسلسل مع ، ثم يمرّ التسلسل عبر طبقات . مخرج رمز [CLS] هو ما يُمثِّل الصورة بأكملها.
الجزء الثاني هو ، الذي يأتي بعد العمود الفقري مباشرة. يأخذ مخرج [CLS] ويُسقطه إلى فضاء بأبعاد K حيث يُطبَّق التمركز والسوفتماكس. هذا الرأس عبارة عن من 3 طبقات بتنشيطات GELU، تليها تطبيع L2 وطبقة كاملة الاتصال بأوزان مُطبَّعة. يُستخدم هذا الرأس أثناء التدريب المسبق ثم يُستغنى عنه عادةً في المهام اللاحقة.
الورقة جرّبت ViT-S/16 (21 مليون معامل) وViT-B/16 (86 مليون معامل). ومن النتائج المهمة: استخدام رقع أصغر (8×8 بدل 16×16) يُحسِّن جودة السمات بوضوح، لأن النموذج يستطيع التقاط تفاصيل مكانية أدق.
الخصائص الناشئة: ما يراه DINO دون أن يُخبره أحد
أبرز ما في الورقة ليس رقماً على جدول مقارنات — بل اكتشاف نوعي. حين نعرض خرائط الانتباه الذاتي لـرمز [CLS] في الطبقة الأخيرة، نجد أن محوِّلات الرؤية المُدرَّبة بـ DINO تُنتج أقنعة تجزئة نظيفة تُحدِّد الأجسام بوضوح. رؤوس الانتباه المختلفة تتخصص تلقائياً: رأس يُركِّز على الجسم في المقدمة، وآخر على الخلفية، وثالث على أجزاء دقيقة من الجسم.
اللافت أن هذه التجزئة لم يُدرَّب عليها النموذج. لم يرَ قناع واحداً طوال تدريبه. لكنه تعلّم فصل الأجسام عن الخلفيات لأن ذلك هو ما يخدم هدف التقطير الذاتي على أفضل وجه: حتى يُطابق الطالب ما يراه المعلّم من اقتصاص محلي صغير، عليه أن يفهم ماهية الجسم بصرف النظر عن موقعه في الصورة.
على الصعيد الكمّي أيضاً، النتائج مبهرة. مصنِّف أقرب الجيران البسيط على سمات DINO المُجمَّدة يحقق 78.3% دقة أولى على ImageNet مع ViT-S — بلا ولا رأس مُدرَّب، مجرد مقارنة بالجيران في مجموعة التدريب. وبـ (طبقة خطية واحدة قابلة للتدريب فوق سمات مُجمَّدة)، يصل ViT-B إلى 80.1%. هذه الأرقام تعني أن فضاء السمات الذي يبنيه DINO منظَّم بشكل ممتاز: الصور المتشابهة دلالياً تقع قريبة من بعضها هندسياً.
تجميع الأجزاء: حلقة التدريب
مبسَّط لإظهار الفكرة — ليس التنفيذ الحقيقي.
# الشيفرة الزائفة لـ DINO — بأسلوب PyTorch
# الطالب والمعلّم يتشاركان البنية نفسها
student = ViT()
teacher = copy(student) # الأوزان نفسها في البداية
teacher.requires_grad_(False) # المعلّم لا يتلقّى تدرُّجات
for x in dataloader:
# توليد مناظر الاقتصاص المتعدد
global_views = [augment_global(x), augment_global(x)]
local_views = [augment_local(x) for _ in range(n_local)]
all_views = global_views + local_views
# المعلّم يعالج المناظر الشاملة فقط
t_out = [teacher(v) for v in global_views]
# الطالب يعالج كل المناظر
s_out = [student(v) for v in all_views]
# خسارة الإنتروبيا التقاطعية على أزواج المناظر المتقاطعة
loss = 0
for t_view in t_out:
t_probs = softmax((t_view - center) / tau_t) # تمركز + شحذ
for s_view in s_out:
if s_view is not t_view: # استبعاد الأزواج الذاتية
s_probs = softmax(s_view / tau_s)
loss += cross_entropy(t_probs, s_probs)
loss.backward()
optimizer.step() # تحديث الطالب فقط
# تحديث المعلّم بالمتوسط المتحرك الأُسّي
with torch.no_grad():
for tp, sp in zip(teacher.parameters(), student.parameters()):
tp.data = lambda_ * tp.data + (1 - lambda_) * sp.data
# تحديث المركز
center = m * center + (1 - m) * mean(t_out)ما الأهم: دروس من دراسة الاجتزاء
في الورقة توضِّح أيّ المُكوِّنات لا غنى عنه وأيّها مفيد لكن ليس حتمياً:
إزالة التمركز ← التدريب ينهار. المخرج يتحوّل إلى توزيع منتظم — كل صورة تُعطي التوزيع الاحتمالي نفسه مهما اختلف محتواها.
إزالة الشحذ (رفع حرارة المعلّم) ← التدريب ينهار بطريقة مختلفة: نموذج أوّلي واحد يستحوذ على كل الكتلة الاحتمالية وتموت البقية.
إزالة ← الدقة تنخفض بمقدار 2–3%. النموذج يظل يعمل لكنه يتعلّم أقل عن الربط بين التفاصيل المحلية والسياق الشامل.
استبدال المتوسط المتحرك بالنسخ المباشر (بلا زخم) ← المعلّم يتغيّر بسرعة مفرطة فيفقد التدريب استقراره أو ينهار.
إضافة شبكة تنبؤ (كما في BYOL) ← لا تحسُّن يُذكر. التمركز والشحذ يوفِّران ما يكفي من عدم التماثل.
الخلاصة: بساطة DINO ليست عشوائية. كل مُكوِّن يؤدي دوراً محدداً لا يُغني عنه غيره، وإزالة أي آلية من آليات منع الانهيار تُسبِّب فشلاً.
النتائج الأساسية
حقّق DINO نتائج تنافسية عبر عدة بروتوكولات تقييم:
تصنيف أقرب الجيران على ImageNet (بلا أي تدريب إضافي، مجرد مقارنة بالجيران): 78.3% دقة أولى مع ViT-S/16، و77.4% مع ViT-B/16. هذه الأرقام بحدّ ذاتها دلالة قوية على أن فضاء السمات منظَّم بشكل ممتاز — المسافة الهندسية وحدها تكفي للتصنيف.
الاستقصاء الخطي (طبقة خطية واحدة فوق سمات مُجمَّدة): 77.0% مع ViT-S/16، و80.1% مع ViT-B/16. نتيجة ViT-B تُكافئ أو تتفوق على معظم النماذج المُشرَف عليها في تلك الفترة.
التجزئة الدلالية (عبر الانتباه، بلا تدريب): خرائط الانتباه الذاتي لـرمز [CLS] في الطبقة الأخيرة تُنتج أقنعة تجزئة ترتبط ارتباطاً وثيقاً بحدود الأجسام الحقيقية — وهذه خاصية فريدة بـمحوِّلات الرؤية المُدرَّبة بـ DINO.
الرقع الأصغر تُساعد: الانتقال من رقع 16×16 إلى 8×8 (ViT-S/8) يرفع دقة k-NN إلى 78.3% ويُحسِّن الدقة المكانية لخرائط الانتباه بشكل واضح، ممّا يُتيح تجزئة أدق.
السياق والإرث
2020
BYOL — ابدأ من تمثيلك الكامن
أثبت أن التعلم ذاتي الإشراف يمكن أن ينجح بدون عيّنات سلبية، وذلك باستخدام مُرمِّز بالزخم وشبكة تنبؤ. DINO بنى مباشرةً على هذه الفكرة.
2020
ViT — محوِّل الرؤية
أظهر أن بنية المحوِّل وحدها قادرة على مُضاهاة الشبكات الالتفافية في تصنيف الصور، لكنها كانت تحتاج تدريباً مسبقاً مُشرَفاً على بيانات ضخمة.
2021
DINO — التقطير الذاتي بدون عنونة
جمع بين التعلم ذاتي الإشراف ومحوِّلات الرؤية، فاكتشف ظهور تجزئة تلقائية في خرائط الانتباه وحقّق تصنيفاً قوياً بأسلوب أقرب الجيران دون أي عنونات.
2021
MAE — المرمِّزات التلقائية المُقنَّعة
منهج بديل للتعلم ذاتي الإشراف مع ViT: أخفِ 75% من الرقع ثم أعِد بناءها. فلسفته مختلفة عن DINO — توليدية في مقابل تمييزية.
2023
DINOv2 — توسيع DINO
دمج منهج DINO مع هدف الرقع المُقنَّعة من iBOT، ودرَّبه على مجموعة LVD-142M المُنقَّحة. النتيجة: سمات بصرية عامة الأغراض تُنافس CLIP دون الحاجة إلى نصوص.
أثر DINO يمتد في اتجاهين. الاتجاه الأول: أثبت أن الجمع بين التعلم ذاتي الإشراف ومحوِّلات الرؤية يُنتج ما هو أكبر من مجموع أجزائه — سلوكيات جديدة نوعياً كالتجزئة الناشئة لا يُنتجها أيّ من المُكوِّنين بمفرده. الاتجاه الثاني: قدّم منهجاً بسيطاً بشكل لافت — بلا خسارة تبايُنية ولا بنوك ذاكرة ولا شبكات تنبؤ — يتوسّع بسلاسة لنماذج ومجموعات بيانات أكبر، كما أكّد DINOv2 لاحقاً.
المرجعCaron, Touvron, Misra, Jégou, Mairal, Bojanowski, Joulin. Emerging Properties in Self-Supervised Vision Transformers. ICCV, 2021.
مصطلحات هذه الورقة
- التقطير الذاتيSelf-Distillation
- التعلم ذاتي الإشرافSelf-Supervised Learning
- محوِّل الرؤية (ViT)Vision Transformer (ViT)
- تقطير المعرفةKnowledge Distillation
- مُرمِّز الزخمMomentum Encoder
- المتوسط المتحرك الأُسِّيExponential Moving Average (EMA)
- تعزيز الاقتصاص المتعددMulti-Crop Augmentation
- التوسيطCentering
- نموذج المعلمTeacher Model
- نموذج الطالبStudent Model
- رأس الإسقاطProjection Head
- خوارزمية الجيران الأقرب (KNN)k-Nearest Neighbors
- التجزئة الدلالية للصورةSemantic Segmentation
- الاختبار الخطيLinear Probing
- انهيار التمثيلاتRepresentation Collapse