Link to this sectionYOLOv8 مقابل YOLOv7#
يتطور مجال الرؤية الحاسوبية باستمرار، حيث تعمل البنيات الجديدة على دفع حدود الممكن في اكتشاف الأشياء في الوقت الفعلي. في هذا التحليل العميق، نقارن بين نموذجين مؤثرين للغاية: Ultralytics YOLOv8 و YOLOv7. أثر كلا النموذجين بشكل كبير على مجتمع المطورين والبحوث الأكاديمية، حيث قدما طرقًا فريدة لحل المهام البصرية المعقدة.
يعد فهم الاختلافات الهيكلية والمنهجية بين هذين النموذجين أمرًا بالغ الأهمية لمهندسي تعلم الآلة الذين يتطلعون إلى تحسين خطوط أنابيب النشر الخاصة بهم. في حين قدم YOLOv7 نهج "مجموعة المزايا المجانية" (bag-of-freebies) المصمم للإنتاجية الخام، ركز Ultralytics YOLOv8 على إنشاء نظام بيئي شامل وسهل الاستخدام يوازن بين الدقة العالية واستهلاك الذاكرة المنخفض وتعدد المهام.
Link to this sectionUltralytics YOLOv8: معيار النظام البيئي متعدد الاستخدامات#
تم إصدار YOLOv8 بواسطة Ultralytics في أوائل عام 2023، وهو يمثل تحولًا هيكليًا رئيسيًا عن سابقاته. لقد صُمم من الألف إلى الياء ليكون أكثر من مجرد كاشف للأشياء في الوقت الفعلي؛ إنه إطار عمل موحد قادر على التعامل مع مجموعة واسعة من مهام الرؤية بشكل جاهز.
- المؤلفون: Glenn Jocher، وAyush Chaurasia، وJing Qiu
- المنظمة: Ultralytics
- التاريخ: 2023-01-10
- GitHub: ultralytics/ultralytics
- المستندات: توثيق YOLOv8
Link to this sectionالابتكارات المعمارية#
قدم YOLOv8 رأس اكتشاف مبتكرًا بدون نقاط ربط (anchor-free). هذا يبسط عملية التدريب بشكل أساسي من خلال التخلص من الحاجة إلى تكوين صناديق الربط (anchor boxes) يدويًا بناءً على التوزيع المحدد لمجموعة البيانات المخصصة الخاصة بك. يجعل هذا الاختيار التصميمي النموذج قويًا للغاية وأسهل في التعميم عبر بيئات مختلفة.
بالإضافة إلى ذلك، تتميز البنية بـ وحدة C2f (عنق الزجاجة الجزئي عبر المراحل مع عمليتين التفافيتين)، وهي ترقية هيكلية تعمل على تحسين تدفق التدرج وتسمح للشبكة العصبية بتعلم تمثيلات ميزات أغنى دون زيادة كبيرة في التكلفة الحسابية. هذا يجعل النموذج فعالًا للغاية عند تشغيل الاستدلال عبر أطر عمل التعلم العميق القياسية مثل PyTorch.
تم تصميم نماذج Ultralytics YOLO لتحقيق أقصى قدر من كفاءة التدريب. وعادة ما تتطلب ذاكرة CUDA أقل بكثير أثناء التدريب مقارنة بالبنيات القائمة على المحولات (transformer-based) أو شبكات CNN الأثقل. يتيح لك هذا التدريب باستخدام أحجام دفعات أكبر على أجهزة المستهلكين، مما يسرع دورة التطوير الخاصة بك.
Link to this sectionYOLOv7: نهج "مجموعة المزايا المجانية"#
تم تقديم YOLOv7 في منتصف عام 2022 وسرعان ما أصبح خط أساس شائعًا في الأوساط الأكاديمية. ركز بشكل كبير على إعادة معلمات البنية وتحسين مسار التدرج لدفع حدود اكتشاف الأشياء في الوقت الفعلي على وحدات معالجة الرسومات (GPUs) المتطورة.
- المؤلفون: Chien-Yao Wang و Alexey Bochkovskiy و Hong-Yuan Mark Liao
- المنظمة: معهد علوم المعلومات، أكاديمية سينيكا، تايوان
- التاريخ: 2022-07-06
- Arxiv: 2207.02696
- GitHub: WongKinYiu/yolov7
Link to this sectionالابتكارات المعمارية#
يستخدم YOLOv7 شبكة تجميع الطبقات الفعالة الموسعة (E-ELAN)، والتي تسمح للنموذج بتعلم ميزات أكثر تنوعًا بشكل مستمر. وهو يعتمد بشكل كبير على نموذج قائم على نقاط الربط (anchor-based) ويقدم "مجموعة مزايا مجانية" قابلة للتدريب - وهي مجموعة من طرق التحسين التي تحسن الدقة دون زيادة تكلفة الاستدلال.
بينما يحقق YOLOv7 أداءً ممتازًا على معايير المقارنة الأكاديمية القياسية مثل مجموعة بيانات MS COCO، فإن بنيته محسنة بشكل كبير للمسرعات على مستوى الخادم. قد يتطلب تصدير هذه النماذج ونشرها على أجهزة الحافة أحيانًا مزيدًا من التكوين اليدوي مقارنة بأطر العمل الأكثر حداثة وانسيابية.
Link to this sectionمقارنة مفصلة للأداء#
عند تقييم هذه النماذج، يعد المقايضة بين السرعة والدقة وحجم النموذج هو الاعتبار الأساسي. يسلط الجدول أدناه الضوء على مقاييس كلا النموذجين.
| النموذج | الحجم (بكسل) | mAPval 50-95 | السرعة CPU ONNX (ms) | السرعة T4 TensorRT10 (ms) | المعلمات (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
كما يظهر في البيانات، يحقق YOLOv8x أعلى دقة مطلقة (53.9 mAP)، بينما يوفر البديل النانوي (YOLOv8n) سرعات استدلال استثنائية وبصمة خفيفة الوزن للغاية. يجعل هذا التنوع YOLOv8 أكثر قدرة على التكيف مع بيئات الأجهزة المحدودة.
Link to this sectionميزة Ultralytics: سهولة الاستخدام والنظام البيئي#
في حين يوفر YOLOv7 مقاييس اكتشاف خام قوية، فإن Ultralytics YOLOv8 يتفوق عليه بشكل كبير من حيث تجربة المطور وتكامل النظام البيئي وقدرات تعدد المهام.
Link to this sectionتنوع لا مثيل له#
YOLOv7 هو في المقام الأول نموذج اكتشاف، مع فروع تجريبية لمهام أخرى. على النقيض من ذلك، يدعم YOLOv8 أصليًا اكتشاف الأشياء، وتجزئة المثيلات، وتصنيف الصور، وتقدير الوضعية، وصناديق التحديد الموجهة (OBB). يعني هذا النهج الموحد أن الفريق يمكنه تعلم API واحد ونشره عبر متطلبات مشاريع مختلفة تمامًا.
Link to this sectionالنشر والتكاملات المبسطة#
غالبًا ما يكون تصدير نموذج للإنتاج عنق زجاجة. تتيح حزمة Ultralytics للمطورين التصدير إلى تنسيقات مثل ONNX و TensorRT و CoreML بسطر واحد من كود Python. وهذا يتجنب مشكلات دعم المشغل التي يتم مواجهتها أحيانًا عند تصدير الرسوم البيانية المعقدة القائمة على نقاط الربط.
علاوة على ذلك، يتكامل YOLOv8 بسلاسة مع أدوات MLOps. سواء كنت تتتبع التجارب باستخدام Weights & Biases أو تختبر عمليات النشر على Hugging Face Spaces، فإن نظام Ultralytics البيئي يتولى المهام الشاقة.
Link to this sectionمثال برمجي: تدريب وتصدير YOLOv8#
يوضح الكود التالي بساطة Ultralytics Python API. يمكنك الانتقال من تهيئة نموذج إلى تدريبه وتصديره للنشر على الحافة في أقل من عشرة أسطر من الكود.
from ultralytics import YOLO
# Load a pretrained YOLOv8 nano model for fast inference
model = YOLO("yolov8n.pt")
# Train the model on the COCO8 dataset
# The API handles data loading, augmentation, and logging automatically
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on a test image
predictions = model("https://ultralytics.com/images/bus.jpg")
# Export the trained model to ONNX format for deployment
model.export(format="onnx")يوفر استخدام وظيفة model.export() جسرًا فوريًا لمحركات الاستدلال عالية الأداء، مما يسمح لك بدمج YOLOv8 بسهولة في تطبيقات الهاتف المحمول أو الأنظمة المضمنة أو خوادم السحابة عالية الإنتاجية.
Link to this sectionحالات الاستخدام في العالم الحقيقي#
تحدد الاختلافات الهيكلية بين النموذجين سيناريوهات النشر المثالية لكل منهما.
متى تختار YOLOv8:
- الذكاء الاصطناعي على الحافة وأجهزة IoT: توفر نماذج Nano و Small فائقة السرعة تجعل YOLOv8 مثاليًا للأجهزة ذات القدرات الحسابية المحدودة، مثل الكاميرات الذكية أو الطائرات بدون طيار.
- مشاريع تعدد المهام: إذا كان خط الأنابيب الخاص بك يتطلب تتبع مفاصل الإنسان (تقدير الوضعية) مع رسم خرائط للعوائق في نفس الوقت (التجزئة)، فإن YOLOv8 يتعامل مع هذا أصليًا.
- النماذج الأولية السريعة إلى الإنتاج: تسمح وثائق Ultralytics الشاملة و Python API السلس للفرق بجلب المنتجات إلى السوق بشكل أسرع.
متى تفكر في YOLOv7:
- المقارنة المعيارية الأكاديمية: غالبًا ما يستخدم الباحثون الذين يدرسون تأثيرات تقنيات إعادة المعلمات YOLOv7 كخط أساس قياسي، كما ينعكس ذلك في شعبيته على Papers With Code.
- خطوط أنابيب الخادم القديمة: إذا كان خط أنابيب الحوسبة الثقيلة الحالي محسّنًا بالفعل بشكل صارم حول مخرجات نقاط الربط المحددة لـ YOLOv7، فقد يكون من العملي صيانته على المدى القصير.
Link to this sectionنظرة مستقبلية: الجيل القادم#
بينما يظل YOLOv8 قوة متعددة الاستخدامات، يتحرك مشهد الذكاء الاصطناعي بسرعة. بالنسبة للفرق التي تبدأ مشاريع جديدة، نوصي بشدة باستكشاف أحدث التطورات في تشكيلة Ultralytics.
يمثل أحدث جيل، YOLO26، قمة الذكاء الاصطناعي للرؤية الحالي. يتميز بتصميم من طرف إلى طرف بدون NMS، مما يلغي معالجة Non-Maximum Suppression اللاحقة لنشر أبسط وأسرع. مع إزالة Distribution Focal Loss (DFL) وإدخال مُحسِّن MuSGD المستوحى من نماذج اللغة الكبيرة (LLM)، يوفر YOLO26 تدريبًا أكثر استقرارًا واستدلالًا على CPU أسرع بنسبة تصل إلى 43%. تعمل وظائف الخسارة المتقدمة ProgLoss + STAL على تحسين التعرف على الأشياء الصغيرة بشكل كبير، مما يجعله الخيار الأمثل لحوسبة الحافة الحديثة وصور الطيران.
بالنسبة للمستخدمين الذين ينتقلون من أنظمة قديمة، يظل كل من YOLO11 القوي للغاية و YOLOv5 الكلاسيكي مدعومين بالكامل داخل نظام Ultralytics البيئي الموحد، مما يضمن أنه مهما كانت قيود أجهزتك، هناك نموذج انسيابي وعالي الأداء جاهز للنشر.