Evolutionary Algorithms
استكشف كيف تستخدم الخوارزميات التطورية (Evolutionary Algorithms) الانتقاء الطبيعي لحل مشاكل الذكاء الاصطناعي. تعلم تحسين المعاملات الفائقة (hyperparameters) لـ Ultralytics YOLO26 وتعزيز أداء النموذج.
الخوارزميات التطورية (EAs) هي عائلة قوية من خوارزميات التحسين التي تحاكي المبادئ البيولوجية للانتقاء الطبيعي وعلم الوراثة لحل المشكلات الحسابية المعقدة. على عكس التقنيات الرياضية التقليدية التي تعتمد على المشتقات القائمة على التفاضل والتكامل، مثل الانحدار العشوائي (SGD)، صُممت الخوارزميات التطورية للتنقل في مساحات بحث واسعة أو وعرة أو غير مفهومة جيداً. وهي تعمل عن طريق الحفاظ على مجموعة من الحلول المحتملة التي تتنافس وتتكاثر وتتحور بمرور الوقت. هذا النهج يجعلها فعالة بشكل خاص للمهام في الذكاء الاصطناعي (AI) حيث يصعب تحديد الحل "الأفضل" تحليلياً، مما يسمح للأنظمة بالتطور تكرارياً نحو نتيجة مثالية.
Link to this sectionالإلهام البيولوجي والآليات الأساسية#
تستند وظائف الخوارزمية التطورية إلى مفهوم البقاء للأصلح. وتتحرك العملية عبر دورة من المعاملات المصممة لمحاكاة التطور الجيني الطبيعي، مما يعمل على تحسين الحلول المرشحة تدريجياً:
-
التهيئة (Initialization): يولد النظام مجموعة أولية من المرشحين العشوائيين. وفي سياق التعلم الآلي (ML)، قد تمثل هذه المرشحات مجموعات مختلفة من معاملات النموذج.
-
تقييم اللياقة (Fitness Evaluation): يتم اختبار كل مرشح مقابل هدف محدد، يُعرف باسم دالة اللياقة. بالنسبة لنموذج الرؤية الحاسوبية (CV)، تقيم هذه الدالة عادةً مقاييس مثل الدقة أو متوسط الدقة (mAP).
-
الاختيار (Selection): يتم اختيار المرشحين ذوي درجات اللياقة الأعلى احتمالية ليكونوا آباء، مما يضمن الحفاظ على السمات الناجحة للجيل القادم.
-
التكاثر والتباين (Reproduction and Variation): يتم إنشاء حلول جديدة من خلال التقاطع (إعادة دمج السمات من والدين) والطفرات (إدخال تغييرات عشوائية). يُعد إدخال التنوع الجيني هذا أمراً بالغ الأهمية، لأنه يمنع الخوارزمية من الركود في مستوى أمثل محلي، مما يساعدها على استكشاف مساحة البحث للوصول إلى النهاية العظمى العالمية.
Link to this sectionتطبيقات العالم الحقيقي في الذكاء الاصطناعي#
تتميز الخوارزميات التطورية بالمرونة وقد تم تطبيقها بنجاح في مجالات مختلفة ضمن التعلم العميق (DL) والهندسة.
Link to this sectionضبط المعاملات الفائقة الآلي#
أحد أكثر تطبيقات الخوارزميات التطورية عملية هو ضبط المعاملات الفائقة. تتطلب الشبكات العصبية الحديثة تكوين عشرات المعاملات—مثل معدل التعلم، وتلاشي الوزن، والزخم—التي تؤثر بشكل كبير على الأداء. يمكن للخوارزميات التطورية أتمتة عملية التجربة والخطأ المملة هذه من خلال تطوير إعدادات التكوين. على سبيل المثال، تستخدم الطريقة tune() في مكتبة Ultralytics خوارزمية جينية لاكتشاف أفضل المعاملات الفائقة للتدريب لنماذج YOLO26 على مجموعات البيانات المخصصة.
Link to this sectionالبحث عن بنية الشبكة العصبية (NAS)#
تعد الخوارزميات التطورية حجر الزاوية في البحث عن بنية الشبكة العصبية (NAS). بدلاً من قيام المهندسين البشر بتصميم بنية الشبكة العصبية (NN) يدوياً، يمكن لخوارزمية تطورية "تنمية" البنية. فهي تختبر مجموعات مختلفة من الطبقات والخلايا العصبية والوصلات، وتطور هياكل فعالة توازن بين السرعة والدقة. وقد أدت هذه التقنية إلى إنشاء هياكل أساسية عالية الكفاءة، مثل EfficientNet، والتي تم تحسينها لقيود أجهزة معينة.
Link to this sectionالخوارزميات التطورية مقابل ذكاء السرب#
على الرغم من أن كلاهما من استراتيجيات التحسين المستوحاة من الطبيعة، فمن المفيد التمييز بين الخوارزميات التطورية وذكاء السرب (SI).
- الخوارزميات التطورية: تعتمد على التغيير الجيلي. الأفراد (الحلول) يعيشون، ويتكاثرون بناءً على اللياقة، ويموتون، ويتم استبدالهم بنسلهم. المحركات الأساسية هي المعاملات الجينية مثل الطفرات والتقاطع.
- ذكاء السرب: يحاكي التفاعل الاجتماعي داخل مجموعة، مثل سرب من الطيور أو أسراب الأسماك. تتضمن خوارزميات مثل تحسين سرب الجسيمات (PSO) مجموعة من العوامل التي تتحرك عبر مساحة البحث وتعدل مواقعها بناءً على تجربتها الخاصة ونجاح جيرانها، دون استبدال جيلي.
Link to this sectionتنفيذ التحسين باستخدام Ultralytics#
يمكن للممارسين الاستفادة من الخوارزميات الجينية مباشرة لتحسين نماذج اكتشاف الأجسام الخاصة بهم. تقوم طريقة tune في Ultralytics بتشغيل عملية تطورية لتحوير المعاملات الفائقة عبر عدة أجيال، وتحديد الإعدادات التي تحقق أعلى أداء على بيانات التحقق الخاصة بك تلقائياً.
from ultralytics import YOLO
# Load the standard YOLO26 model
model = YOLO("yolo26n.pt")
# Run hyperparameter tuning using a genetic algorithm approach
# The tuner evolves parameters (lr, momentum, etc.) over 30 generations
model.tune(data="coco8.yaml", epochs=10, iterations=30, plots=False)يسمح هذا التحسين الآلي للمطورين بتجاوز التخمين اليدوي. بالنسبة للفرق التي توسع عملياتها، يمكن تبسيط إدارة هذه التجارب وتتبع تطور أداء النموذج باستخدام منصة Ultralytics، والتي تصور مقاييس التدريب وتسهل نشر النموذج.






