Mean Average Precision (mAP)
تعرف على كيفية تقييم متوسط الدقة (mAP) لنماذج رؤية الحاسوب. استكشف IoU، والدقة (precision)، والاسترجاع (recall)، واحسب mAP مع Ultralytics YOLO26 اليوم.
متوسط الدقة الوسطي (mAP) هو مقياس شامل يُستخدم على نطاق واسع لتقييم أداء نماذج الرؤية الحاسوبية، وتحديداً في مهام مثل اكتشاف الكائنات وتجزئة المثيلات. على عكس الدقة البسيطة، التي تقتصر على التحقق مما إذا كانت الصورة مُصنفة بشكل صحيح أم لا، يُقيِّم مقياس mAP مدى جودة عثور النماذج على الكائنات ومدى دقة تحديدها لموضع مربع التحديد حولها. هذا ما يجعله المعيار الأساسي للمقارنة بين الهندسات الحديثة مثل YOLO26 والأجيال السابقة. من خلال تلخيص المقايضة بين الدقة والاستدعاء عبر جميع الفئات، يوفر mAP درجة واحدة تعكس متانة النموذج في سيناريوهات العالم الحقيقي.
مكونات mAP#
لحساب mAP، من الضروري أولاً فهم ثلاثة مفاهيم أساسية تحدد جودة الكشف:
- التقاطع على الاتحاد (IoU): يقيس هذا المقياس التداخل المكاني بين المربع المتوقع وتعيين الحقيقة الأرضية. وهو نسبة تتراوح من 0 إلى 1. غالباً ما يُعتبر التنبؤ "نتيجة إيجابية صحيحة" فقط إذا تجاوز مقياس IoU عتبة محددة، مثل 0.5 أو 0.75.
- الدقة (Precision): يجيب هذا المقياس على التساؤل: "من بين جميع الكائنات التي ادعى النموذج اكتشافها، ما هي النسبة التي كانت صحيحة بالفعل؟" تعني الدقة العالية أن النموذج ينتج عددًا قليلاً جدًا من النتائج الإيجابية الخاطئة.
- الاستدعاء (Recall): يسأل هذا المقياس: "من بين جميع الكائنات الموجودة بالفعل في الصورة، ما هي النسبة التي عثر عليها النموذج؟" يشير الاستدعاء العالي إلى أن النموذج يتجنب النتائج السلبية الخاطئة ونادراً ما يفوت أي كائن.
منهجية الحساب#
تبدأ عملية الحساب بحساب متوسط الدقة (AP) لكل فئة محددة (مثل: "شخص"، "سيارة"، "كلب"). يتم تحقيق ذلك من خلال إيجاد المساحة تحت منحنى الدقة والاستدعاء، الذي يُمثل الدقة مقابل الاستدعاء عند عتبات ثقة مختلفة. تشير كلمة "المتوسط" في متوسط الدقة الوسطي ببساطة إلى أخذ متوسط درجات AP هذه عبر جميع الفئات في بيانات التدريب.
تُبلغ المعايير البحثية القياسية، مثل مجموعة بيانات COCO، بشكل متكرر عن نوعين رئيسيين:
-
mAP@50: يعتبر هذا المقياس عملية الكشف صحيحة إذا كان IoU لا يقل عن 0.50. وهو مقياس متساهل.
-
mAP@50-95: هذا هو متوسط mAP المحسوب عند عتبات IoU تتراوح من 0.50 إلى 0.95 بزيادات قدرها 0.05. يكافئ هذا المقياس الدقيق النماذج التي تحقق دقة تحديد مواضع عالية.
mAP مقابل المقاييس ذات الصلة#
من المهم التمييز بين mAP والدقة. تعتبر الدقة مناسبة لـ تصنيف الصور حيث تكون المخرجات تسمية واحدة للصورة بأكملها، لكنها تفشل في اكتشاف الكائنات لأنها لا تأخذ في الاعتبار الموضع المكاني للكائن أو فئة الخلفية. وبالمثل، في حين أن مؤشر F1 يوفر متوسطاً توافقياً للدقة والاستدعاء عند عتبة ثقة واحدة، فإن mAP يدمج الأداء عبر جميع مستويات الثقة، مما يقدم نظرة أكثر شمولاً لاستقرار النموذج.
تطبيقات العالم الحقيقي#
تعد درجات mAP العالية حاسمة في البيئات التي تعتبر فيها السلامة والكفاءة أمراً بالغ الأهمية.
- المركبات ذاتية القيادة: في تكنولوجيا القيادة الذاتية، يعتمد الأمان على اكتشاف المشاة وإشارات المرور باستدعاء عالٍ (عدم تفويت أي شيء) ودقة عالية (تجنب الفرملة الوهمية). يضمن mAP أن نظام الإدراك يوازن بين هذه الاحتياجات بفعالية.
- تحليل الصور الطبية: عند تحديد الأورام أو الكسور في الأشعة السينية، يعتمد أخصائيو الأشعة على الذكاء الاصطناعي في الرعاية الصحية للإشارة إلى المشكلات المحتملة. يشير ارتفاع درجات mAP إلى أن النموذج يسلط الضوء بמוثوقية على الشذوذ دون إرهاق الطبيب بالإنذارات الكاذبة، مما يسهل التشخيص الدقيق.
قياس mAP باستخدام Ultralytics#
تُسطر الأطر الحديثة حساب هذه المقاييس أثناء مرحلة التحقق من الصحة. يوضح المثال التالي كيفية تحميل نموذج وحساب mAP باستخدام حزمة Python ultralytics.
from ultralytics import YOLO
# Load the YOLO26 model (recommended for new projects)
model = YOLO("yolo26n.pt")
# Validate the model on a dataset to compute mAP
# This runs inference and compares predictions to ground truth
metrics = model.val(data="coco8.yaml")
# Print mAP@50-95 (map) and mAP@50 (map50)
print(f"mAP@50-95: {metrics.box.map:.3f}")
print(f"mAP@50: {metrics.box.map50:.3f}")يعد فهم والتحسين لمقياس mAP أمراً بالغ الأهمية قبل نشر النموذج. لتبسيط هذه العملية، تقدم منصة Ultralytics تتبُّعاً تلقائياً لـ mAP، ومنحنيات الخسارة، ومؤشرات الأداء الرئيسية الأخرى أثناء التدريب، مما يسمح للمطورين بتصور التقدم واختيار أفضل نقطة تفتيش للنموذج للإنتاج.






