Bayesian Network
استكشف الشبكات البايزية ودورها في الاستدلال الاحتمالي. تعلم كيف تعزز هذه النماذج الرسومية الذكاء الاصطناعي القابل للتفسير وتتكامل مع Ultralytics YOLO26.
شبكة بايزية Bayesian Network هي نوع من نموذج رسومي احتمالاتي تستخدم بياناً مووجهاً لا دورياً (DAG) لتمثيل مجموعة من المتغيرات وتبعياتها الشرطية. على عكس خوارزميات "الصندوق الأسود" التي تقوم ببساطة بربط المدخلات بالمخرجات، تصمم هذه الشبكات صراحةً علاقات السبب والنتيجة بين العوامل المختلفة. يتيح هذا الهيكل لعلماء البيانات إجراء نمذجة تنبؤية والاستدلال في ظل عدم اليقين، مما يجعلها فعالة للغاية في السيناريوهات التي قد تكون فيها البيانات غير مكتملة أو حيث يلزم دمج معرفة المجال الخبير مع الأدلة الإحصائية.
المفاهيم الأساسية والأهمية#
في قلب هذه الشبكات توجد مبرهنة بايز، وهي صيغة رياضية تستخدم لتحديث احتمالات الفرضية كلما توفر المزيد من الأدلة أو المعلومات. في شبكة بايزية، تمثل العقد المتغيرات — مثل عرض أو قراءة مستشعر أو تصنيف — بينما تمثل الحواف (الأسهم) التبعيات الاحتمالية. إذا وُجد رابط من العقدة A إلى العقدة B، فهذا يشير إلى أن A له تأثير مباشر على B. هذه البنية بالغة الأهمية لـ الذكاء الاصطناعي القابل للتفسير (XAI) لأنها تتيح للمستخدمين تتبع مسار الاستدلال للنموذج، مما يوفر شفافية يصعب غالباً تحقيقها مع بنيات التعلم العميق المعقدة.
هذه النماذج ذات صلة خاصة في المجالات التي تتطلب تقييماً صارماً للمخاطر. من خلال استخدام توزيعات الاحتمال الشرطي، يمكن لشبكة بايزية الإجابة عن استفسارات حول حالة متغير معين بالنظر إلى الأدلة المرصودة حول متغيرات أخرى. هذه العملية، التي غالباً ما تسمى الاستدلال الاحتمالي، تختلف عن تقريب الدالة الذي تنفذه الشبكات العصبية القياسية.
تطبيقات العالم الحقيقي#
يتم نشر الشبكات البايزية على نطاق واسع في الصناعات التي تتطلب فيها عملية اتخاذ القرار موازنة عوامل متعددة غير مؤكدة.
-
التشخيص الطبي: في مجال الذكاء الاصطناعي في الرعاية الصحية، تُستخدم هذه الشبكات لدعم أنظمة دعم القرار السريري. قد تقوم الشبكة بنمذجة العلاقات بين الأمراض (متغيرات خفية) والأعراض أو نتائج الاختبارات (متغيرات مرصودة). على سبيل المثال، قد يوفر تحليل الصور الطبية أدلة تحدث احتمال تشخيص معين، مما يساعد الأطباء في التنقل عبر تاريخ المريض المعقد.
-
تشخيص الأعطال الصناعية: ضمن الذكاء الاصطناعي في التصنيع، تُعد الشبكات البايزية أساسية لـ اكتشاف الشذوذ وتحليل السبب الجذري. إذا اكتشف نظام التصنيع الذكي قراءة حرارة غير عادية، يمكن للشبكة حساب الاحتمال البعدي للفشل لمكونات الآلة المختلفة، مما يوجه فرق الصيانة بكفاءة.
التمييز عن المفاهيم ذات الصلة#
من المهم التمييز بين الشبكات البايزية ونماذج التعلم الآلي والإحصاء الأخرى:
- مصنف بايز الساذج: هذه حالة مبسطة وخاصة من شبكة بايزية. الفرضية "الساذجة" هي أن جميع ميزات التنبؤ مستقلة بشكل متبادل بالنظر إلى متغير الفئة. على الرغم من كفاءتها الحسابية لمهام مثل تحليل المشاعر، إلا أنها لا تستطيع التقاط التبعيات المتبادلة المعقدة التي تستطيع الشبكة البايزية الكاملة التقاطها.
- عملية اتخاذ القرار ماركوف: بينما يستخدم كلاهما هياكل الرسوم البيانية، تُستخدم MDPs بشكل أساسي في التعلم التعزيزي لنمذجة صنع القرار التسلسلي بمرور الوقت، بينما تركز الشبكات البايزية عادةً على العلاقات الاحتمالية بين المتغيرات في لقطة زمنية محددة.
- Deep Learning Models (e.g., YOLO): Models like YOLO26 are optimized for high-dimensional perceptual tasks like object detection. They learn abstract feature representations from raw data (pixels). In contrast, Bayesian Networks are better suited for high-level reasoning with structured variables.
المخرجات الاحتمالية في الذكاء الاصطناعي الحديث#
بينما تتعامل الشبكات البايزية مع الرسوم البيانية السببية الصريحة، فإن نماذج التعلم العميق الحديثة تُخرج أيضاً درجات ثقة احتمالية تعكس اليقين. عند استخدام أدوات مثل Ultralytics Platform لتدريب النماذج على مجموعات بيانات مخصصة، يُعد فهم هذه الاحتمالات أمراً أساسياً لتفسير أداء النموذج.
يوضح كود Python التالي كيفية الوصول إلى توزيع الاحتمالية (الثقة) لمهمة تصنيف باستخدام نموذج مُدرب مسبقاً. ويوضح هذا كيفية قياس اليقين في سير عمل الاستدلال الحديث.
from ultralytics import YOLO
# Load the YOLO26n-cls classification model
model = YOLO("yolo26n-cls.pt")
# Run inference on an image source
# This returns a results object containing probability data
results = model("https://ultralytics.com/images/bus.jpg")
# Iterate through results to display class probability
for result in results:
# Access the 'probs' attribute for classification probabilities
top_class_index = result.probs.top1
confidence = result.probs.top1conf
print(f"Predicted Class Index: {top_class_index}, Confidence: {confidence:.4f}")





