Neural Architecture Search (NAS)
تعرف على كيفية أتمتة تصميم نماذج التعلم العميق باستخدام البحث في البنية العصبية (NAS). اكتشف آلياته الأساسية واستكشف النماذج المحسّنة مثل Ultralytics YOLO26.
يعد البحث عن بنية الشبكة العصبية (NAS) تقنية متطورة في مجال التعلم الآلي المؤتمت (AutoML) تعمل على أتمتة تصميم الشبكات العصبية الاصطناعية. تاريخياً، كان هندسة بنى التعلم العميق (DL) عالية الأداء يتطلب خبرة بشرية واسعة، وبداهة، وعمليات تجربة وخطأ تستغرق وقتاً طويلاً. تستبدل تقنية NAS هذه العملية اليدوية باستراتيجيات خوارزمية تستكشف بشكل منهجي نطاقاً واسعاً من توبولوجيا الشبكات لاكتشاف البنية الأمثل لمهمة محددة. من خلال اختبار مجموعات متنوعة من الطبقات والعمليات، يمكن لتقنية NAS تحديد بنى تتفوق بشكل ملحوظ على النماذج المصممة بشرياً من حيث الدقة، أو الكفاءة الحسابية، أو سرعة الاستدلال.
Link to this sectionالآليات الأساسية لتقنية NAS#
تتضمن عملية اكتشاف بنية متفوقة عموماً ثلاثة أبعاد أساسية تتفاعل معاً لإيجاد أفضل شبكة عصبية (NN):
-
مساحة البحث: تحدد هذه المساحة مجموعة كل البنى الممكنة التي يمكن للخوارزمية استكشافها. إنها تعمل كمكتبة من اللبنات الأساسية، مثل مرشحات الالتفاف، وطبقات التجميع، ودوال التنشيط المتنوعة. تعمل مساحة البحث المحددة جيداً على تقييد التعقيد لضمان بقاء البحث قابلاً للتنفيذ حسابياً مع السماح بمرونة كافية للابتكار.
-
استراتيجية البحث: بدلاً من اختبار كل الاحتمالات (البحث الشامل)، توظف تقنية NAS خوارزميات ذكية للتنقل في مساحة البحث بكفاءة. تشمل الأساليب الشائعة التعلم التعزيزي، حيث يتعلم الوكيل إنشاء بنى أفضل بمرور الوقت، والخوارزميات التطورية، التي تقوم بتبديل ودمج النماذج ذات الأداء العالي لإنتاج مرشحين متفوقين.
-
استراتيجية تقدير الأداء: يعد تدريب كل شبكة مرشحة من الصفر أمراً بطيئاً للغاية. لتسريع ذلك، تستخدم تقنية NAS تقنيات تقدير - مثل التدريب على عدد أقل من الحقب (epochs)، أو استخدام مجموعات بيانات بديلة منخفضة الدقة، أو توظيف مشاركة الأوزان - لترتيب إمكانات البنية المرشحة بسرعة.
Link to this sectionتطبيقات العالم الحقيقي#
أصبحت تقنية NAS بالغة الأهمية في الصناعات التي تكون فيها قيود الأجهزة أو متطلبات الأداء صارمة، مما يدفع حدود الرؤية الحاسوبية (CV) ومجالات الذكاء الاصطناعي الأخرى.
- حوسبة الحافة الفعالة: يتطلب نشر الذكاء الاصطناعي على الأجهزة المحمولة نماذج خفيفة وسريعة في آن واحد. تُستخدم تقنية NAS على نطاق واسع لاكتشاف بنى مثل MobileNetV3 و EfficientNet التي تقلل من زمن انتقال الاستدلال مع الحفاظ على دقة عالية. هذا أمر حيوي لتطبيقات ذكاء الحافة (edge AI)، مثل تحليل الفيديو في الوقت الفعلي على الكاميرات الذكية أو الطائرات بدون طيار ذاتية القيادة.
- التصوير الطبي: في تحليل الصور الطبية، تعتبر الدقة أمراً بالغ الأهمية. يمكن لتقنية NAS تخصيص الشبكات لاكتشاف الشذوذات الدقيقة في الأشعة السينية أو فحوصات التصوير بالرنين المغناطيسي، وغالباً ما تجد مسارات جديدة لاستخراج الميزات قد يغفل عنها المهندسون البشريون. يؤدي هذا إلى أدوات أكثر موثوقية لتحديد حالات مثل أورام الدماغ أو الكسور بحساسية أعلى.
Link to this sectionتقنية NAS مقابل المفاهيم ذات الصلة#
لفهم الدور المحدد لتقنية NAS، من المفيد تمييزها عن تقنيات التحسين المماثلة:
- تقنية NAS مقابل ضبط المعلمات الفائقة: بينما تتضمن كلتاهما التحسين، يركز ضبط المعلمات الفائقة على تعديل إعدادات التكوين (مثل معدل التعلم أو حجم الدفعة) لبنية ثابتة. في المقابل، تقوم تقنية NAS بتغيير الهيكل الأساسي للنموذج نفسه، مثل عدد الطبقات أو كيفية اتصال العصبونات.
- تقنية NAS مقابل التعلم بنقل المعرفة: يأخذ التعلم بنقل المعرفة نموذجاً موجوداً ومُدرباً مسبقاً ويكيف أوزانه لمهمة جديدة. أما تقنية NAS فتقوم بإنشاء بنية النموذج من الصفر (أو البحث عن عمود فقري (backbone) أفضل) قبل بدء التدريب.
Link to this sectionاستخدام النماذج المشتقة من تقنية NAS#
في حين أن تشغيل بحث كامل بتقنية NAS يتطلب موارد حوسبة GPU كبيرة، يمكن للمطورين بسهولة استخدام النماذج التي تم إنشاؤها عبر NAS. على سبيل المثال، تم اكتشاف بنية YOLO-NAS باستخدام مبادئ البحث هذه للتحسين من أجل مهام اكتشاف الكائنات.
يوضح مثال Python التالي كيفية تحميل واستخدام نموذج NAS تم البحث عنه مسبقاً باستخدام حزمة ultralytics:
from ultralytics import NAS
# Load a pre-trained YOLO-NAS model (architecture found via NAS)
# 'yolo_nas_s.pt' refers to the small version of the model
model = NAS("yolo_nas_s.pt")
# Run inference on an image to detect objects
# This utilizes the optimized architecture for fast detection
results = model("https://ultralytics.com/images/bus.jpg")
# Print the top detected class
print(f"Detected: {results[0].names[int(results[0].boxes.cls[0])]}")بالنسبة لأولئك الذين يتطلعون إلى تدريب نماذج متطورة دون تعقيد تقنية NAS، توفر Ultralytics YOLO26 بنية محسنة للغاية وجاهزة للاستخدام، وتتضمن أحدث التطورات في الأبحاث. يمكنك بسهولة إدارة مجموعات البيانات، والتدريب، والنشر لهذه النماذج باستخدام منصة Ultralytics، التي تبسط دورة حياة MLOps بالكامل.






