يُعد تقييم أداء نماذج التصنيف الإحصائي وتعلم الآلة ركيزة جوهرية في مسار بناء الحلول الخوارزمية وتطوير الأنظمة الاستدلالية الموثوقة. في هذا المضمار المعقد، تبرز المساحة تحت منحنى خصائص تشغيل المستقبِل، والمعروفة اختصاراً بـ AUC-ROC، كواحدة من أكثر الأدوات المعيارية رسوخاً وشمولية لقياس القدرة التمييزية للنماذج الاحتمالية. إن الميزة الاستثنائية لهذا المقياس لا تكمن فحسب في قدرته على تلخيص كفاءة النموذج في قيمة قياسية مفردة تتراوح بين الصفر والواحد، بل في كونه مقياساً مستقلاً تماماً عن عتبات اتخاذ القرار التعسفية وغير متأثر بتغير نسب التوزيع المسبق للفئات المدروسة، مما يمنحه تفوقاً منهجياً ساحقاً على مقاييس الأداء التقليدية كالدقة الإجمالية.
تستهدف هذه المقالة الأكاديمية الموسعة تقديم مرجع تأسيسي وتطبيقي شامل باللغة العربية حول كيفية فهم واحتساب وتوظيف مقياس المساحة تحت المنحنى (AUC) برمجياً باستخدام لغة بايثون ومنظومتها العلمية المتطورة. سنتناول في هذا الدليل المتكامل التشريح الرياضي والفيزيائي الدقيق للمنحنى، مروراً بكافة الخطوات الخوارزمية لتنفيذه انطلاقاً من تجهيز البيانات وبناء نماذج التصنيف، وصولاً إلى استراتيجيات التعامل مع الحالات المتقدمة كالتصنيف متعدد الفئات، والبيانات غير المتوازنة، وحساب فترات الثقة عبر تقنيات التمهيد الإحصائي واختبارات الدلالة المقارنة.
سواء كنت باحثاً أكاديمياً تسعى لتوثيق نتائجك المعملية وفق أعلى المعايير النشرية، أو مهندس تعلم آلة تطمح إلى تحسين عتبات التشغيل لنماذجك الإنتاجية المعقدة، فإن هذا الدليل سيزودك بالمعرفة النظرية العميقة والخبرة البرمجية الرصينة لتحقيق أعلى درجات الدقة الإحصائية والنزاهة العلمية في بيئة الحوسبة الإحصائية المعاصرة.
- 1. مقدمة شاملة حول مقياس AUC ومنحنى ROC في التحليل الإحصائي وتعلم الآلة
- 2. الأسس الرياضية والإحصائية لحساب المساحة تحت المنحنى (AUC-ROC)
- 3. إعداد بيئة العمل وتثبيت المكتبات البرمجية الأساسية في بايثون
- 4. بناء نموذج الانحدار اللوجستي الثنائي وتجهيز البيانات
- 5. حساب قيمة AUC خطوة بخطوة باستخدام مكتبة Scikit-Learn
- 6. رسم وتصور منحنى ROC وحساب AUC بصرياً باستخدام Matplotlib
- 7. حساب AUC للتصنيف متعدد الفئات (Multiclass Classification)
- 8. التعامل مع البيانات غير المتوازنة وتأثيرها على مقياس AUC مقابل PR-AUC
- 9. مقارنة نماذج متعددة لتعلم الآلة بناءً على درجات AUC في بايثون
- 10. حساب فترات الثقة لمقياس AUC باستخدام تقنية التمهيد (Bootstrapping)
- 11. الأخطاء الشائعة واستكشاف الأخطاء وإصلاحها عند حساب AUC في بايثون
- 12. التطبيقات المتقدمة وأفضل الممارسات البرمجية لتقييم النماذج عبر AUC
- خاتمة شاملة وتوصيات مستقبلية
- المراجع الأكاديمية (References)
1. مقدمة شاملة حول مقياس AUC ومنحنى ROC في التحليل الإحصائي وتعلم الآلة
1.1 التعريف النظري لمنحنى خصائص تشغيل المستقبِل (ROC)
تعود الجذور التاريخية لمنحنى خصائص تشغيل المستقبِل (Receiver Operating Characteristic – ROC) إلى الحرب العالمية الثانية، وتحديداً في سياق نظرية كشف الإشارة الرادارية (Signal Detection Theory). واجه مهندسو الرادار آنذاك تحدياً تقنياً حرجاً يتمثل في تمييز الإشارات الحقيقية المنعكسة عن طائرات العدو وسط الضجيج الكهرومغناطيسي العشوائي وتشويش العوامل الجوية. أتاح منحنى ROC للمشغلين والمحللين تقييم قدرة المستقبِل على رصد الإشارات الصحيحة مقابل إطلاق الإنذارات الكاذبة عند مختلف مستويات حساسية الأجهزة، مما وفر إطاراً رياضياً موضوعياً لفصل كفاءة المستشعر عن التحيز البشري للمراقبين.
في جوهره الرياضي الحديث، يمثل منحنى ROC دالة هندسية ترسم العلاقة التبادلية الديناميكية بين مقياسين أساسيين: المعدل الإيجابي الحقيقي (True Positive Rate – TPR)، والمعروف بالحساسية، ممثلاً على المحور الرأسي (Y-axis)، والمعدل الإيجابي الكاذب (False Positive Rate – FPR)، ممثلاً على المحور الأفقي (X-axis). تنشأ هذه العلاقة عبر التغيير المستمر والتدريجي لعتبة القرار الاحتمالية (Decision Threshold) من القيمة 1 إلى القيمة 0، حيث تُصنف كافة التنبؤات التي تتجاوز العتبة كحالات إيجابية وتلك التي تقل عنها كحالات سلبية.
يتجلى التفوق المنهجي لمنحنى ROC في تجاوزه للقيود الجوهرية المرتبطة بمصفوفة الارتباك الثابتة (Confusion Matrix). فبينما تقدم مصفوفة الارتباك التقليدية لقطة ثابتة لأداء المصنف عند عتبة تشغيلية وحيدة (غالباً ما تكون العتبة الافتراضية 0.5)، يوفر منحنى ROC تقييماً شمولياً متكاملاً لأداء الخوارزمية عبر كافة السيناريوهات التشغيلية الممكنة، مما يحرر الباحث من قيود التقييم المقيد بعتبة عشوائية قد لا تتناسب مع الطبيعة التوزيعية للمسألة قيد الدراسة.
1.2 المفهوم الرياضي للمساحة تحت المنحنى (AUC)
تُعرف المساحة تحت المنحنى (Area Under the Curve – AUC)، وتحديداً مساحة منحنى ROC، بأنها قيمة عددية قياسية مفردة محصورة في النطاق الرياضي المغلق بين 0 و 1. تمثل هذه القيمة التكامل المحدود لمنحنى ROC عبر كامل مجال معدل الإيجابيات الكاذبة من صفر إلى واحد. تكمن القيمة الاستدلالية البالغة لمقياس AUC في تفسيره الاحتمالي الأنيق: إذ تُعبر قيمة AUC بدقة عن احتمالية أن يقوم نموذج التصنيف بإعطاء درجة تنبؤية احتمالية لعينة إيجابية مختارة عشوائياً أعلى من الدرجة الاحتمالية المعطاة لعينة سلبية مختارة عشوائياً، وهو ما يُصاغ رياضياً بالمعادلة $P(f(x^+) > f(x^-))$.
تخضع جودة النماذج الإحصائية وفق مقياس AUC لتصنيف معياري صارم متعارف عليه في الأدبيات الإحصائية والطبية الحيوية. يُعتبر النموذج الذي يحقق قيمة AUC تساوي 0.50 نموذجاً عشوائياً عديم الفائدة التمييزية، مكافئاً لرمي قطعة نقود غير متحيزة. وتُصنف النماذج التي تتراوح قيمتها بين 0.70 و 0.80 بأنها ذات قدرة تمييزية مقبولة، في حين تُعد القيم المحصورة بين 0.80 و 0.90 ذات أداء تمييزي ممتاز، وتشير القيم التي تتجاوز 0.90 إلى أداء تمييزي استثنائي يتفوق في عزل الحالات بدقة بالغة وصولاً إلى القيمة المثالية 1.0 التي تمثل فصلاً تاماً وخالياً من أي تداخل بين التوزيعين.
تتجلى الأهمية المنهجية الفائقة لمقياس AUC عند مقارنته بمقياس الدقة التقليدي (Accuracy)؛ فمقياس الدقة يعاني من تضليل منهجي فادح عند تطبيقه على مجموعات بيانات تتسم بعدم التوازن التوزيعي (Class Imbalance). فعلى سبيل المثال، في مجتمع إحصائي تبلغ فيه نسبة الحالات الإيجابية 1% فقط، يمكن لنموذج ساذج يتنبأ بالسلبية لجميع العينات أن يحقق دقة إجمالية تبلغ 99%، إلا أن قيمة AUC لمثل هذا النموذج ستكون 0.50 تماماً، مما يكشف عجزه التام عن التمييز ويوفر حماية إحصائية للباحث من استخلاص استنتاجات زائفة.
1.3 سياقات استخدام AUC في الدراسات التجريبية ونماذج التصنيف
يحتل مقياس AUC موقع الصدارة في تقييم نماذج الانحدار اللوجستي الثنائي (Binary Logistic Regression) المستخدمة في الأبحاث السلوكية، والاقتصاد القياسي، والتطبيقات الوبائية والتشخيصية. في هذه السياقات التجريبية، يسعى الباحثون إلى نمذجة احتمالية وقوع حدث ثنائي (مثل الإصابة بمرض، أو التخلف عن سداد قرض، أو اتخاذ قرار استهلاكي معين) استناداً إلى مصفوفة من المتغيرات التفسيرية المستقلة. يتيح مقياس AUC التحقق من القوة الإيضاحية والقدرة التفريقية للنموذج المقترح بمعزل عن نسبة انتشار الحدث في العينة المدروسة.
يمتد توظيف المقياس بشكل محوري إلى مجال القياس النفسي (Psychometrics) وتقييم أدوات الاختبارات الإكلينيكية المعيارية. عند تصميم مقياس تشخيصي جديد للاكتئاب أو القلق أو التدهور المعرفي، يُستخدم منحنى ROC ومساحته AUC لمقارنة كفاءة المقياس الجديد بالمعايير الذهبية (Gold Standards)، وتحديد العتبات القطعية المثالية (Cut-off Scores) التي توازن بدقة بين خطر التشخيص الإيجابي الخاطئ وخطر إغفال الحالات المصابة فعلياً، مما يضمن كفاءة بروتوكولات الفحص والتدخل المبكر.
علاوة على ذلك، يشكل AUC المعيار الحاكم والمفضل للمفاضلة الخوارزمية بين النماذج الخاضعة للإشراف (Supervised Learning Algorithms) في مسابقات علوم البيانات والبحث العلمي المقارن. عند المقارنة بين خوارزميات متباينة في طبيعتها البنائية — مثل الغابات العشوائية (Random Forests)، وآلات المتجهات الداعمة (SVM)، وشبكات التعلم العميق (Deep Neural Networks) — يوفر AUC أرضية تقييمية متكافئة ومحايدة تسمح بفرز النماذج بناءً على جودة الترتيب النسبي للاحتمالات المتوقعة (Ranking Quality)، وليس فقط دقة التصنيف عند نقطة قطعية أحادية.
2. الأسس الرياضية والإحصائية لحساب المساحة تحت المنحنى (AUC-ROC)
2.1 الحساسية (Sensitivity) ومعدل الإيجابيات الحقيقية (TPR)
تُعرف الحساسية (Sensitivity)، والتي تتطابق رياضياً ومفاهيمياً مع معدل الإيجابيات الحقيقية (True Positive Rate – TPR) والاستدعاء (Recall)، بأنها النسبة الاحتمالية لنجاح النموذج في التعرف الصحيح على الحالات الإيجابية الفعلية من بين إجمالي المجتمع الإيجابي الحقيقي. تُصاغ هذه العلاقة عبر المعادلة الرياضية المعيارية:
$$\text{TPR} = \frac{\text{TP}}{\text{TP} + \text{FN}}$$
حيث يمثل $\text{TP}$ عدد الحالات الإيجابية الحقيقية المصنفة بشكل سليم، بينما يمثل $\text{FN}$ عدد الحالات السلبية الكاذبة. ترتبط الحساسية ارتباطاً عكسياً مباشراً مع الخطأ الإحصائي من النوع الثاني (Type II Error – $\beta$)، حيث إن $\text{TPR} = 1 – \beta$. يشير الخطأ من النوع الثاني إلى الإخفاق في رفض الفرضية الصفرية الخاطئة، وهو ما يترجم في سياق التصنيف إلى تفويت رصد حالة إيجابية فعلية وتصنيفها خطأً كحالة سلبية.
تكتسب الحساسية أهمية قصوى وحرجة في التطبيقات التي تترتب فيها تكاليف باهظة وغير مقبولة على تفويت الحالات الإيجابية؛ ومن أمثلة ذلك التشخيص المبكر للأورام الخبيثة، أو أنظمة الكشف عن الهجمات السيبرانية واختراق الشبكات الحساسة. في هذه المنظومات، يؤدي تحريك عتبة القرار الاحتمالية نحو الصفر إلى خفض متطلبات تصنيف الحالة كإيجابية، مما يرفع تلقائياً من معدل الإيجابيات الحقيقية $\text{TPR}$ ليقترب من القيمة 1.0، ولكن على حساب زيادة متزامنة في الإنذارات الكاذبة.
2.2 النوعية (Specificity) ومعدل الإيجابيات الكاذبة (FPR)
تُعبر النوعية (Specificity)، أو معدل السلبيات الحقيقية (True Negative Rate – TNR)، عن قدرة النموذج على الاستبعاد الدقيق للحالات السلبية غير المصابة وتصنيفها بشكل سليم. تُحسب النوعية وفق العلاقة الرياضية التالية:
$$\text{Specificity} = \frac{\text{TN}}{\text{TN} + \text{FP}}$$
حيث يمثل $\text{TN}$ السلبيات الحقيقية، ويمثل $\text{FP}$ الإيجابيات الكاذبة. يرتبط هذا المفهوم مباشرة بمعدل الإيجابيات الكاذبة (False Positive Rate – FPR)، والذي يمثل الإحداثي السيني الأفقي لمنحنى ROC، ويُحسب بطرح النوعية من الواحد الصحيح ($\text{FPR} = 1 – \text{Specificity}$). يرتبط معدل الإيجابيات الكاذبة بنيوياً بالخطأ الإحصائي من النوع الأول (Type I Error – $\alpha$)، والذي يعبر عن احتمالية الرفض الخاطئ للفرضية الصفرية الصائبة.
ينطوي التحليل الإحصائي الرصين على إدارة موازنة دقيقة ومتوازنة بين تقليص معدل الإيجابيات الكاذبة ($\text{FPR}$) وضمان تعظيم معدل الإيجابيات الحقيقية ($\text{TPR}$). فرفع عتبة القرار إلى مستويات عليا يقلل من الإنذارات الكاذبة ويحمي النظام من استنزاف الموارد في ملاحقة أهداف وهمية، إلا أنه يؤدي بالضرورة إلى انخفاض النوعية وارتفاع معدلات التفويت. يتيح التمثيل البياني لهذه الثنائية عبر منحنى ROC رؤية شاملة للمقايضات التشغيلية المتاحة لمتخذ القرار الإحصائي.
2.3 التكامل العددي وإحصاء ويلكوكسون-مان-ويتني
من الناحية الحسابية البحتة، يتم حساب المساحة تحت منحنى ROC عبر التكامل العددي (Numerical Integration) للدالة المستمرة للمنحنى $f(x)$ على الفترة $[0, 1]$. نظراً لأن نقاط المنحنى المستخرجة من عينات البيانات تمثل نقاطاً متقطعة ومنفصلة وليست دالة تحليلية مغلقة، تُستخدم عادة قاعدة شبه المنحرف (Trapezoidal Rule) لحساب هذا التكامل، حيث تُقسم المساحة الإجمالية إلى شرائح شبه منحرفة متجاورة وتُجمع مساحاتها وفق المعادلة:
$$\text{AUC} = \sum_{i=1}^{n-1} \frac{(\text{TPR}_{i} + \text{TPR}_{i+1})}{2} \times (\text{FPR}_{i+1} – \text{FPR}_{i})$$
إلا أن العمق النظري لمقياس AUC يتجلى في تكافئه الرياضي التام مع إحصاء مان-ويتني اللامعلمي (Mann-Whitney U Test)، والمكافئ أيضاً لاختبار رتب ويلكوكسون (Wilcoxon Rank-Sum Test). ينص هذا الإثبات الرياضي على أن قيمة AUC تساوي بدقة إحصاء $U$ مقسوماً على حاصل ضرب حجم العينتين الإيجابية ($n_1$) والسلبية ($n_0$):
$$\text{AUC} = \frac{U}{n_1 \times n_0} = \frac{R_1 – \frac{n_1(n_1 + 1)}{2}}{n_1 \times n_0}$$
حيث يمثل $R_1$ مجموع رتب العينات الإيجابية بعد دمج وترتيب كافة التنبؤات الاحتمالية تصاعدياً. يبرهن هذا التكافؤ الرياضي الرائع على أن مقياس AUC لا يعتمد على القيم المطلقة للاحتمالات المحسوبة، بل يرتكز كلياً على جودة الترتيب التبادلي النسبي (Relative Ranking) بين الفئات، مما يجعله مقياساً لا معلماً شديد المتانة والحصانة ضد التشوهات الناتجة عن المعايرة الاحتمالية غير الدقيقة.
3. إعداد بيئة العمل وتثبيت المكتبات البرمجية الأساسية في بايثون
3.1 المكتبات الأساسية للحسابات العلمية وإدارة البيانات
تتطلب الحوسبة الإحصائية المعاصرة في بيئة بايثون إعداد بنية تحتية برمجية متماسكة تعتمد على حزم علمية عالية الأداء ومكتوبة بلغات منخفضة المستوى مثل C و Fortran لضمان السرعة والكفاءة الحسابية. تأتي في مقدمة هذه الحزم مكتبة NumPy، والتي تشكل العمود الفقري للتعامل مع المصفوفات متعددة الأبعاد وإجراء العمليات الجبرية الخطية والتكامل العددي الموجه بكفاءة متناهية تتجاوز قيود الحلقات التكرارية التقليدية في لغة بايثون.
بموازاة ذلك، تُعد مكتبة Pandas الأداة القياسية لإدارة ومعالجة وتنظيف البيانات الجدولية (DataFrames). تتيح المكتبة معالجة السلاسل الزمنية، وتحويل المتغيرات الفئوية (Categorical Encoding)، والتعامل مع القيم المفقودة، وتنفيذ العمليات التجميعية والفرز الهيكلي للبيانات التجريبية بكفاءة استثنائية تسهم في سلاسة تدفق البيانات إلى نماذج التعلم الإحصائي.
لضمان تجربة برمجية متكاملة وقابلة للتكرار العلمي (Reproducibility)، يُوصى بتهيئة بيئة العمل التفاعلية عبر Jupyter Notebook أو بيئات التطوير المتكاملة المتقدمة (IDEs) مثل VS Code أو PyCharm. تتيح هذه البيئات الدمج المتناسق بين تنفيذ الشيفرات البرمجية وعرض المخرجات البيانية والتحليلات النصية المصاحبة في وثيقة تفاعلية موحدة تلبي متطلبات التوثيق العلمي الرصين.
3.2 مكتبة Scikit-Learn وحزم التقييم الإحصائي
تُمثل مكتبة Scikit-Learn المعيار الذهبي المعتمد عالمياً في بناء نماذج تعلم الآلة وتطبيق المقاييس الإحصائية في لغة بايثون. توفر وحدة التقييم المتخصصة داخل المكتبة، والمعروفة بـ sklearn.metrics، ترسانة متكاملة من الدوال المخصصة لاحتساب مصفوفات الأداء ومنحنيات التقييم المتقدمة بدقة متناهية وسرعة تنفيذ فائقة تعتمد على خوارزميات محسنة حسابياً.
تتضمن هذه الوحدة دالتين محوريتين لحساب مقاييس خصائص تشغيل المستقبِل: الدالة الأولى هي roc_curve، والتي تختص بحساب متجهات الإحداثيات الدقيقة للمنحنى متضمنة قيم معدل الإيجابيات الكاذبة (FPR) ومعدل الإيجابيات الحقيقية (TPR) وسلسلة العتبات التقييمية المقابلة لها. أما الدالة الثانية فهي roc_auc_score، والتي تتولى الحساب المباشر لقيمة المساحة العددية الإجمالية تحت المنحنى عبر تطبيق تكامل شبه المنحرف وإحصاء مان-ويتني تلقائياً وبخطوة برمجية واحدة.
تتميز أدوات Scikit-Learn بمرونتها البالغة وتوافقها الكامل مع مختلف أنواع النماذج الإحصائية والخوارزميات التصنيفية، بالإضافة إلى توفيرها معايير برمجية موحدة للمدخلات والمخرجات تضمن تكاملها السلس مع مسارات المعالجة الآلية وخطوط أنابيب البيانات (Pipelines) المتطورة.
3.3 مكتبات التمثيل البصري البياني
لا يكتمل التحليل الإحصائي لمنحنيات الأداء دون تجسيد بصري عالي الدقة والوضوح؛ وهنا تبرز مكتبة Matplotlib كأداة الرسم التأسيسية الأكثر مرونة وقوة في بايثون. تتيح هذه المكتبة التحكم المطلق في كافة العناصر الهندسية والجمالية للمخططات، بدءاً من أبعاد المحاور وسماكة الخطوط وتدرجات الألوان، وصولاً إلى إدراج الرموز الرياضية المعقدة والتعليقات التوضيحية داخل الرسم.
لإضفاء طابع جمالي وتنسيقي متقدم يتوافق مع المعايير المعاصرة للنشر العلمي، تُستخدم مكتبة Seaborn المرجعية التي تُبنى فوق Matplotlib. توفر Seaborn قوالب تنسيقية رفيعة المستوى تضبط لوحات الألوان وشبكات الإحداثيات والخطوط الطباعية بطريقة تعزز قابلية القراءة البصرية وتقلل من التشويش البياني، مما يضمن خروج المخططات بمظهر أكاديمي احترافي.
يتطلب إنتاج رسوم بيانية صالحة للنشر في الدوريات العلمية المرموقة ضبط معلمات النظام البياني العامة (rcParams) بدقة، ويشمل ذلك تحديد دقة الرسم النقطية (DPI) بما لا يقل عن 300 نقطة في البوصة، واختيار خطوط طباعية واضحة ومقروءة، وتضمين وسوم توضيحية مفصلة للمحاور الإحداثية ومفاتيح المخططات لضمان نقل الرسالة الإحصائية بوضوح لا لبس فيه.
4. بناء نموذج الانحدار اللوجستي الثنائي وتجهيز البيانات
4.1 استيراد وتجهيز مجموعة البيانات التجريبية
تبدأ العملية التطبيقية باستيراد البيانات المهيكلة أو توليد مجموعات بيانات اصطناعية تحاكي الظواهر الواقعية باستخدام دوال متخصصة مثل make_classification المضمنة في Scikit-Learn. تتيح هذه الدالة التوليدية التحكم الدقيق في الخصائص الإحصائية للبيانات المصطنعة، كعدد العينات، وعدد المتغيرات التفسيرية المفيدة وتلك الزائدة أو المشوشة، بالإضافة إلى التحكم في نسبة عدم التوازن بين الفئات ومقدار التداخل العشوائي بين التوزيعات الاحتمالية.
تتضمن المرحلة التحضيرية للبيانات استكشاف التوزيعات التكرارية للفئات المستهدفة، والتأكد من خلو المتغيرات من القيم الشاذة المتطرفة أو البيانات المفقودة، وتنفيذ عمليات التقييس والتحجيم المعياري (Standardization) للمتغيرات الكمية المستمرة لضمان تقارب الخوارزميات التحسينية بكفاءة واستقرار عددي.
يُعد تقسيم البيانات إلى مجموعتي تدريب واختبار مستقلتين ركيزة منهجية حاسمة لتفادي ظاهرة فرط المطابقة (Overfitting). يُنفذ هذا التقسيم عادة بنسب معيارية موثوقة (مثل 80% للتدريب و 20% للاختبار، أو 70:30) مع تطبيق استراتيجية التقسيم الطبقي (Stratified Splitting) التي تضمن الحفاظ على نفس النسبة المئوية لتوزيع الفئات الإيجابية والسلبية عبر المجموعتين الفرعيتين بدقة متناهية.
4.2 تدريب نموذج الانحدار اللوجستي (Logistic Regression)
يمثل نموذج الانحدار اللوجستي الثنائي النموذج الأساسي والمعياري المفضل لتحليل المتغيرات التابعة الثنائية وتوضيح مبادئ حساب AUC. يُهيأ النموذج برمجياً عبر استدعاء الفئة LogisticRegression من حزمة sklearn.linear_model، مع إمكانية تحديد نوع ومقدار التنظيم الرياضي الإحصائي (Regularization مثل $L_1$ أو $L_2$) للتحكم في تعقيد النموذج ومنع تضخم أوزان المعاملات التقديرية في ظل وجود علاقات خطية متداخلة بين المتغيرات.
تعتمد خوارزمية ملاءمة النموذج (Fitting) على تعظيم دالة الإمكان الأعظم (Maximum Likelihood Estimation – MLE) لتقدير متجهات المعاملات والأوزان الإحصائية $\beta$ التي تربط المتغيرات المستقلة بالتحويل اللوغاريتمي للاحتمالية (Log-Odds أو Logit). تضمن هذه المعالجة الرياضية تقارب الخوارزمية نحو الحل الأمثل الذي يقلل من دالة الخسارة اللوجستية (Log-Loss).
عقب إتمام تدريب النموذج، يخضع التركيب الداخلي للمعاملات التقديرية للفحص الإحصائي لتقييم مدى مساهمة كل متغير مستقل في توجيه القرار التصنيفي، حيث تعكس الأوزان الإيجابية المرتفعة زيادة في احتمالية انتماء العينة إلى الفئة المستهدفة، في حين تشير المعاملات السالبة إلى ارتباط طردي مع الفئة المرجعية المقابلة.
4.3 استخراج التنبؤات الاحتمالية بدلاً من التصنيفات القاطعة
يقع العديد من الممارسين المبتدئين في خطأ فادح عند تقييم النماذج الاحتمالية، وهو الاعتماد على التابع predict() الذي يقتصر دوره على إنتاج تسميات تصنيفية قاطعة وثابتة (0 أو 1) بناءً على عتبة افتراضية محددة سلفاً عند 0.50. يؤدي تمرير هذه القيم القاطعة إلى تشويه منحنى ROC واختزاله إلى نقطة تشغيلية وحيدة، مما يفقد مقياس AUC طبيعته الديناميكية ومحتواه الإحصائي الغني.
للحساب الصحيح لمنحنى ROC ومساحته AUC، يجب استخدام التابع التنبؤي الاحتمالي المتصل predict_proba(). يولد هذا التابع مصفوفة ذات بعدين تحتوي على الاحتمالات التنبؤية الصريحة لانتماء كل عينة إحصائية إلى كل فئة من الفئات الممكنة، حيث يمثل العمود الأول احتمالية الفئة السلبية $P(Y=0|X)$ ويمثل العمود الثاني احتمالية الفئة الإيجابية $P(Y=1|X)$، مع ضمان أن يكون مجموع احتمالي كل صف مساوياً للواحد الصحيح بدقة.
يقتضي التحليل الإحصائي السليم استخلاص متجهات العمود الثاني فقط، والممثلة للاحتمالات المتصلة للفئة الإيجابية المستهدفة. تتيح هذه القيم الاحتمالية المستمرة لخوارزميات التقييم ترتيب العينات تنازلياً وتطبيق عدد لانهائي نظرياً من العتبات التقييمية لرسم المسار الهندسي الدقيق والمنسق لمنحنى ROC وحساب مساحته بموثوقية حسابية كاملة.
5. حساب قيمة AUC خطوة بخطوة باستخدام مكتبة Scikit-Learn
5.1 التطبيق المباشر لدالة roc_auc_score
تُمثل دالة roc_auc_score الأداة البرمجية المباشرة والأكثر شيوعاً في بيئة بايثون لاحتساب القيمة العددية لمقياس AUC دون الحاجة لإنشاء كائنات بيانية وسيطة. تتطلب الدالة مدخلين أساسيين غير قابلين للمفاضلة: الأول هو المتجه الفعلي للقيم الحقيقية للعينات المستهدفة (Ground Truth Labels $y_{\text{true}}$)، والثاني هو متجه الاحتمالات التنبؤية المستمرة للفئة الإيجابية ($y_{\text{score}}$) المستخرج من تابع predict_proba()[:, 1].
تنتج الدالة قيمة عددية عشرية وحيدة تلخص الكفاءة التمييزية المطلقة للنموذج. فإذا كانت القيمة الناتجة هي 0.88 على سبيل المثال، فإن التفسير الإحصائي الدقيق هو أن النموذج يمتلك فرصة قدرها 88% لتصنيف عينة إيجابية بدرجة تنبؤية أعلى من عينة سلبية مختارة عشوائياً، مما يعكس كفاءة فصل بنيوية عالية بين التوزيعين الاحتماليين داخل فضاء المتغيرات.
تدعم دالة roc_auc_score وسائط متقدمة إضافية تتيح تخصيص التحليل بما يلائم السياقات البحثية المعقدة؛ ومن أبرزها وسيط أوزان العينات sample_weight الذي يسمح بمراعاة التفاوت في الأهمية النسبية أو التكاليف الاقتصادية المرتبطة بكل عينة، فضلاً عن وسائط التحكم في استراتيجيات التجميع للتصنيفات متعددة الفئات مثل average و multi_class.
5.2 توليد قيم TPR و FPR باستخدام دالة roc_curve
عند الرغبة في التفكيك الهيكلي التفصيلي لمسار المنحنى وفحص سلوك النموذج عند كل نقطة تشغيلية محتملة، يُلجأ إلى دالة roc_curve. عند تمرير القيم الفعلية والاحتمالات التنبؤية إلى هذه الدالة، فإنها تعيد ثلاثة متجهات مصفوفية متناسقة ذات أطوال متطابقة:
- مصفوفة معدل الإيجابيات الكاذبة (fpr): تمثل متوالية القيم المحسوبة على المحور الأفقي وتبدأ حتماً من القيمة 0.0 وتنتهي عند 1.0.
- مصفوفة معدل الإيجابيات الحقيقية (tpr): تمثل متوالية القيم المحسوبة على المحور الرأسي وتبدأ أيضاً من القيمة 0.0 وتنتهي عند 1.0.
- مصفوفة العتبات الاحتمالية (thresholds): تمثل قيم الاحتمال القطعية المستخدمة عند كل نقطة لانقسام التصنيف، وتُرتب ترتيباً تنازلياً مع إدراج عتبة اصطناعية تتجاوز القيمة 1.0 في بداية المتجه لضمان انطلاق المنحنى من نقطة الأصل الإحداثي $(0, 0)$.
عقب الحصول على مصفوفات fpr و tpr، يمكن التحقق من اتساق الحسابات بتطبيق دالة التكامل المباشر auc(fpr, tpr) المتوفرة في sklearn.metrics. تقوم هذه الدالة بتطبيق قاعدة شبه المنحرف التكاملية على المصفوفات الناتجة لتعيد قيمة تطابق تماماً النتيجة المستخرجة من دالة roc_auc_score، مما يثبت التكافؤ المنهجي بين التمثيل البياني والحساب الإحصائي المجرد.
5.3 التحقق من صحة النتائج عبر التحقق المتقاطع (Cross-Validation)
إن الاعتماد على تقسيم منفرد للبيانات إلى تدريب واختبار قد يوقع الباحث في فخ التباين العشوائي (Sampling Variance)، حيث قد تتأثر قيمة AUC الناتجة بطبيعة التوزيع المحظوظ أو السيئ لعينات مجموعة الاختبار المحدودة. للتغلب على هذه المشكلة وضمان موثوقية استدلالية رصينة، يُطبق أسلوب التحقق المتقاطع الطبقي كيم-الطيّات (Stratified K-Fold Cross-Validation).
تضمن استراتيجية StratifiedKFold تقسيم البيانات الكلية إلى $K$ من الأجزاء (عادة 5 أو 10 طيّات)، بحيث تحتفظ كل طية بنفس النسبة التوزيعية الأصلية للفئات. يُدرب النموذج على $K-1$ من الطيات ويُختبر على الطية المتبقية، وتتكرر العملية $K$ مرة بالتناوب لضمان خضوع كل عينة في مجموعة البيانات للاختبار المستقل مرة واحدة بالضبط.
تُنفذ هذه المنهجية برمجياً عبر دالة cross_val_score مع تعيين وسيط القياس الحاكم scoring='roc_auc'. يتيح ذلك استخراج مصفوفة من درجات AUC لكل طية تجريبية، مما يسمح بحساب المتوسط الحسابي لدرجات AUC والانحراف المعياري المصاحب لها، وتقديم تقدير إحصائي غير متحيز ومكتمل الأبعاد يعكس الأداء العام الحقيقي للنموذج وقدرته على التعميم على بيانات مستقبلية غير مرئية.
6. رسم وتصور منحنى ROC وحساب AUC بصرياً باستخدام Matplotlib
6.1 إنشاء مخطط ROC الكلاسيكي خطوة بخطوة
يتطلب بناء مخطط ROC الاحترافي باستخدام مكتبة Matplotlib اتباع تسلسل منهجي دقيق يضمن الوضوح المفاهيمي والجاذبية البصرية. يبدأ الإجراء بإنشاء كائن الشكل البياني والمحاور (Figure and Axes) بأبعاد متناسقة تسمح بظلاهر التفاصيل الهندسية بوضوح (مثل استخدام نسبة أبعاد مربعة 8×8 بوصة لضمان التكافؤ البصري بين المحورين السيني والصادي).
يُرسم مسار المنحنى الفعلي بتمرير متجهات fpr على المحور السيني و tpr على المحور الصادي باستخدام الدالة plt.plot()، مع اختيار لون مميز وسماكة خط مناسبة (مثل سماكة 2 أو 2.5). من الضروري جداً تضمين قيمة AUC المحسوبة مباشرة داخل التسمية التوضيحية (Label) في مفتاح المخطط (Legend) بالصيغة القياسية: label=f"ROC Curve (AUC = {auc_value:.3f})".
يجب تعزيز المخطط بإضافة خط التخمين العشوائي المحايد (Chance Diagonal Line)، وهو خط متقطع بزاوية 45 درجة يمتد من النقطة الإحداثية $(0,0)$ إلى النقطة $(1,1)$ بلون رمادي محايد، ليمثل أداء النموذج العشوائي الذي يمتلك $\text{AUC} = 0.50$. كما يُستكمل المخطط بضبط حدود المحاور بدقة بين $[0.0, 1.0]$، وإضافة عناوين واضحة للمحاور والاسم الرئيسي للمخطط وتفعيل شبكة إحداثيات خفيفة الشدة لتسهيل القراءة الكمية للنقاط.
6.2 استخدام أدوات Scikit-Learn الرسومية المتقدمة
قدمت التحديثات الحديثة لمكتبة Scikit-Learn واجهات برمجية متطورة وموجهة للكائنات تسهل الرسم المباشر لمنحنيات الأداء بأقل قدر من الشيفرات البرمجية ومن خلال كائنات العرض التفاعلية (Display Objects). يبرز في هذا السياق صنفان أساسيان يوفران سرعة فائقة وتكاملاً برمجياً متيناً:
RocCurveDisplay.from_estimator: يقوم هذا التابع الثابت باستقبال النموذج المدرب مباشرة مع مصفوفة متغيرات الاختبار والقيم الفعلية، حيث يتولى داخلياً وبشكل تلقائي استخراج الاحتمالات، وتوليد مصفوفاتfprوtpr، وحساب قيمة AUC ورسم المنحنى الكامل بخطوة واحدة.RocCurveDisplay.from_predictions: يُستخدم هذا التابع عند توفر مصفوفات التنبؤات المسبقة والقيم الفعلية دون الحاجة لتمرير كائن النموذج ذاته، مما يجعله مثالياً للرسم المقارن لمخرجات نماذج مختلفة أو نتائج تم توليدها وحفظها مسبقاً.
تتيح هذه الفئات الرسومية تخصيصاً واسعاً للعناصر الجمالية؛ إذ يمكن تمرير كائن المحاور ax لدمج المنحنى ضمن لوحات رسومية متعددة الإطارات (Subplots)، فضلاً عن إمكانية تعديل الألوان، وأنماط الخطوط، وإخفاء أو إظهار قيم AUC التلقائية في المفتاح، مما يجمع بين سهولة التنفيذ ومرونة التحكم والتخصيص.
6.3 تحديد عتبة القرار المثلى على المنحنى البياني
على الرغم من أن مقياس AUC يقيم النموذج عبر كافة العتبات الممكنة، إلا أن التطبيق العملي ونشر النماذج في بيئات الإنتاج الفعلية يتطلب في نهاية المطاف اختيار عتبة قرار قطعية مفردة لتوجيه الإجراءات التنفيذية. يُعد مؤشر يودن الإحصائي (Youden’s J Statistic) المعيار الرياضي الأكثر شيوعاً لتحديد نقطة التشغيل المثلى على المنحنى، ويُحسب بالمعادلة:
$$J = \text{Sensitivity} + \text{Specificity} – 1 = \text{TPR} – \text{FPR}$$
تمثل النقطة التي تحقق القيمة العظمى لمؤشر $J$ أقصى مسافة رأسية تفصل منحنى ROC عن خط التخمين العشوائي، وهي تعبر عن العتبة الاحتمالية التي تحقق أعلى توازن متزامن بين رصد الإيجابيات وتفادي الإنذارات الكاذبة بافتراض التساوي في تكلفة الخطأين.
توجد طريقة هندسية بديلة شائعة تتمثل في حساب المسافة الإقليدية الأقصر إلى النقطة المثالية العليا $(0, 1)$، والتي تمثل الحساسية والنوعية الكاملتين، عبر المعادلة $\sqrt{\text{FPR}^2 + (1 – \text{TPR})^2}$. برمجياً، يتم حساب هذه المؤشرات عبر مصفوفات Scikit-Learn، وتحديد موقع الفهرس الأمثل للعتبة، وإبراز تلك النقطة بصرياً على الرسم البياني باستخدام علامة مميزة (Marker) مصحوبة بنص توضيحي يحدد القيمة الدقيقة لتلك العتبة وإحداثياتها التشغيلية.
7. حساب AUC للتصنيف متعدد الفئات (Multiclass Classification)
7.1 استراتيجية واحد مقابل البقية (One-vs-Rest / OvR)
عند الانتقال من التصنيف الثنائي إلى المسائل التي تتضمن ثلاثة تصنيفات أو أكثر (Multiclass Classification)، لا يعود منحنى ROC الثنائي البسيط كافياً بمفرده. تبرز استراتيجية واحد مقابل البقية (One-vs-Rest أو One-vs-All) كحل هندسي وإحصائي منهجي يقوم على تفكيك مسألة التصنيف متعددة الفئات التي تحتوي $K$ من الفئات إلى $K$ من المسائل التصنيفية الثنائية المنفصلة.
في كل مسألة ثنائية فرعية، تُعامل إحدى الفئات كفئة إيجابية مستهدفة، بينما تُدمج كافة الفئات الأخرى المتبقية معاً لتشكل الفئة السلبية المرجعية. يُحسب بعد ذلك منحنى ROC ومساحته AUC لكل فئة من الفئات المستقلة على حدة، مما يعكس كفاءة النموذج التمييزية في عزل تلك الفئة بالذات عن النسيج العام لكافة الفئات الأخرى المنافسة.
تُطبق هذه الاستراتيجية برمجياً في دالة roc_auc_score بتعيين الوسيط multi_class='ovr'، مع ضرورة تمرير مصفوفة الاحتمالات التنبؤية الكاملة لجميع الفئات بأبعاد $(N \times K)$، وتمرير القيم الحقيقية إما بتشفير فئوي أو بتشفير ثنائي متعدد الأعمدة (One-Hot Encoded Matrix). يوفر هذا الأسلوب رؤية تشخيصية دقيقة لقدرة النموذج على تفكيك الفئات المتباينة وفهم أي الفئات تتداخل مع الأخرى.
7.2 استراتيجية واحد مقابل واحد (One-vs-One / OvO)
تُمثل استراتيجية واحد مقابل واحد (One-vs-One – OvO) مقاربة إحصائية بديلة وأكثر دقة في حالات محددة، حيث تقوم على إجراء مقارنات ثنائية زوجية شاملة بين كل زوج محتمل من الفئات، متجاهلة تماماً باقي الفئات الأخرى في كل مقارنة فرعية. يبلغ العدد الإجمالي للمصنفات أو المقارنات الزوجية في هذه الاستراتيجية $\frac{K(K-1)}{2}$ مقارنة، حيث يتم تقييم المساحة تحت المنحنى لكل زوج مستقل من الفئات $(C_i, C_j)$.
تتميز استراتيجية OvO بحصانتها الإحصائية العالية ومقاومتها لتأثيرات عدم التوازن التوزيعي للفئات (Class Imbalance)؛ فبينما يؤدي دمج الفئات في استراتيجية OvR إلى تضخيم حجم الفئة السلبية المدمجة بشكل مصطنع، تحافظ مقارنة OvO على التوزيع النسبي الطبيعي والمباشر بين كل فئتين متقابلتين في فضاء القرار التجريبي.
تُفعل هذه المقاربة في دالة roc_auc_score من خلال ضبط الوسيط multi_class='ovo'. على الرغم من أن هذه الاستراتيجية تتطلب تكلفة حسابية أعلى نسبياً بزيادة عدد الفئات $K$، إلا أنها توفر للمحلل تقديراً إحصائياً دقيقاً وعادلاً للقدرة التمييزية الزوجية، لا سيما في البيئات البحثية الصارمة التي تتطلب استبعاد أي تحيز ناتج عن التجميع الفئوي القسري.
7.3 طرق التجميع والترجيح الإحصائي (Macro vs. Weighted Averaging)
عقب حساب درجات AUC الفردية لكافة الفئات أو الأزواج الفئوية، تنشأ الحاجة لتلخيص هذه النتائج في مؤشر رقمي مفرد وشامل يمثل الأداء العام للنظام التصنيفي. يُدار هذا التلخيص عبر استراتيجيتين رياضيتين رئيسيتين للترجيح والتجميع الإحصائي:
- المتوسط الكلي البسيط (Macro-Average): يقوم بحساب المتوسط الحسابي غير الموزون لكافة درجات AUC المحسوبة لكل فئة عبر المعادلة $\text{AUC}_{\text{macro}} = \frac{1}{K}\sum_{i=1}^{K}\text{AUC}_i$. تعامل هذه الطريقة جميع الفئات على قدم المساواة وبأهمية متكافئة بغض النظر عن حجم انتشارها، مما يجعلها حساسة للغاية لأداء النموذج على الفئات النادرة والصغيرة.
- المتوسط المرجح بحجم الفئة (Weighted-Average): يحسب المتوسط التجميعي الموزون وفقاً للوزن النسبي والانتشار الفعلي لكل فئة في العينة ($w_i = \frac{n_i}{N}$)، حيث $\text{AUC}_{\text{weighted}} = \sum_{i=1}^{K} w_i \text{AUC}_i$. يضمن هذا الترجيح عدم تأثر النتيجة الإجمالية بشكل غير متناسب بالتقلبات في أداء فئة هامشية قليلة التكرار.
يتم التحكم في هذه الخيارات برمجياً عبر وسيط average='macro' أو average='weighted' داخل دوال التقييم. كما يمكن رسم كافة منحنيات الفئات المستقلة جنباً إلى جنب مع منحنى المتوسط الكلي ومنحنى المتوسط المرجح في مخطط بياني موحد، مما يوفر لوحة تقييمية بصرية بانورامية وشاملة لأداء النموذج متعدد الفئات.
8. التعامل مع البيانات غير المتوازنة وتأثيرها على مقياس AUC مقابل PR-AUC
8.1 قصور مقياس ROC-AUC عند وجود اختلال شديد في الفئات
على الرغم من المتانة الإحصائية العامة لمقياس ROC-AUC، إلا أنه يعاني من قصور منهجي وجوهري في البيئات التي تتسم بوجود اختلال شديد وغير متكافئ في توزيع الفئات (Extreme Class Imbalance)، مثل أنظمة الكشف عن الاحتيال المالي (Fraud Detection) حيث تمثل العمليات الاحتيالية جزءاً ضئيلاً من الألف، أو التطبيقات التشخيصية للأمراض النادرة جداً في الفحوصات السكانية العامة.
يكمن الخلل البنيوي في اعتماد المحور الأفقي لمنحنى ROC على معدل الإيجابيات الكاذبة ($\text{FPR} = \frac{\text{FP}}{\text{FP} + \text{TN}}$). فعندما يكون عدد الحالات السلبية الحقيقية ($\text{TN}$) هائلاً جداً بملايين السجلات مقارنة بعدد الحالات الإيجابية القليلة، فإن زيادة ملحوظة وخطيرة في عدد الحالات الإيجابية الكاذبة ($\text{FP}$) بمئات الحالات ستؤدي فقط إلى تغير طفيف لا يكاد يُذكر في المقام الكبير للكسر، مما يبقي قيمة $\text{FPR}$ قريبة جداً من الصفر.
يترتب على هذه الظاهرة الرياضية بقاء منحنى ROC مرتفعاً وملاصقاً للزاوية العلوية اليسرى، مما يعطي قيمة AUC خادعة ومفرطة في التفاؤل (Optimistic Bias) قد تتجاوز 0.95، على الرغم من أن النموذج قد يُغرق متخذ القرار الفعلي بآلاف الإنذارات الكاذبة التي تفوق الحالات الإيجابية الحقيقية بأضعاف مضاعفة، مما يشل القدرة التشغيلية للنظام ويخفي عجزه التمييزي العملي.
8.2 حساب المساحة تحت منحنى الدقة والاسترجاع (PR-AUC)
لتجاوز هذا القصور الإحصائي الخطير، تبرز المساحة تحت منحنى الدقة والاسترجاع (Precision-Recall AUC – PR-AUC)، والمعروفة أيضاً بمتوسط الدقة (Average Precision – AP)، كمعيار تقييمي متفوق وبديل منهجي حاسم في سياق البيانات النادرة وغير المتوازنة. يركز هذا المنحنى كلياً على الفئة الإيجابية المستهدفة مستبعداً السلبيات الحقيقية ($\text{TN}$) من حساباته تماماً.
يرسم منحنى PR العلاقة التبادلية بين الدقة (Precision أو Positive Predictive Value: $\frac{\text{TP}}{\text{TP} + \text{FP}}$) على المحور الرأسي، والاسترجاع (Recall أو الحساسية: $\frac{\text{TP}}{\text{TP} + \text{FN}}$) على المحور الأفقي. تتجلى القوة المنهجية للدقة في كونها تضع الحالات الإيجابية الكاذبة في مواجهة مباشرة مع الحالات الإيجابية الحقيقية في المقام، مما يجعل المقياس شديد الحساسية لأي تدهور في نقاء الإنذارات الإيجابية للنموذج.
تُنفذ حسابات هذا المنحنى في بايثون عبر دالتي precision_recall_curve و average_precision_score من وحدة sklearn.metrics. يمثل خط الأساس العشوائي في منحنى PR نسبة انتشار الفئة الإيجابية في المجتمع ($P / (P + N)$) وليس القيمة 0.50 كما في ROC، مما يجعل القيمة المحسوبة لـ PR-AUC دقيقة ومعبرة تعبيراً واقعياً عن جودة كشف الفئات النادرة دون أي تضخيم زائف.
8.3 مقارنة عملية شاملة بين ROC-AUC و PR-AUC في بايثون
لتوضيح الفروق المنهجية الجوهرية عملياً، يمكن بناء محاكاة حاسوبية باستخدام بايثون تتضمن توليد مصفوفة بيانات غير متوازنة بنسبة 95:5 أو 99:1 بين الفئتين السلبية والإيجابية، ومن ثم تطبيق نموذج تصنيفي وتوليد كلا المنحنيين بشكل متزامن وجنباً إلى جنب للمقارنة الاستدلالية المباشرة.
عند تحليل المخرجات البيانية الناتجة، يظهر بوضوح أن منحنى ROC-AUC يعكس صورة متفائلة للغاية بدرجة قد تبلغ 0.92 مشيرة ظاهرياً إلى جودة تصنيفية فائقة، بينما يكشف منحنى PR-AUC المناظر عن قيمة متواضعة قد لا تتجاوز 0.45، مبيناً وجود تراجع حاد في دقة التنبؤات عند محاولة تحقيق استرجاع مرتفع، وفاضحاً الحجم الهائل للإنذارات الكاذبة التي عجز مقياس ROC عن إبرازها بسبب تضخم السلبيات الحقيقية.
تُملي المعايير المنهجية المعاصرة على الباحثين وعلماء البيانات استخدام منحنى ROC-AUC عندما تكون الفئات متوازنة نسبياً وتكون تكاليف الأخطاء متناظرة، والتحول الصارم نحو منحنى PR-AUC ومقياس متوسط الدقة (AP) عندما تكون الفئة الإيجابية نادرة وتكون تكلفة الإنذارات الكاذبة وتفويت الإيجابيات حرجة للأهداف التطبيقية للمشروع.
9. مقارنة نماذج متعددة لتعلم الآلة بناءً على درجات AUC في بايثون
9.1 تدريب نماذج تصنيف متنوعة على نفس مجموعة البيانات
تشكل المفاضلة المنهجية بين الخوارزميات المتنافسة جوهر علم البيانات التطبيقي. لإجراء مقارنة علمية نزيهة وموثوقة، يتم تدريب حزمة متكاملة من النماذج الإحصائية والخوارزميات الخاضعة للإشراف على نفس مجموعة بيانات التدريب المقيسة بدقة، مع الحفاظ على ثبات بذور التوليد العشوائي (Random Seeds) لضمان اتساق المقارنة المنهجية.
تتضمن هذه الترسانة عادة نماذج ذات أسس نظرية متباينة في استقراء العلاقات البيانية، ومنها:
- الانحدار اللوجستي (Logistic Regression): كنموذج خطي مرجعي (Baseline Model) سريع وعالي القابلية للتفسير الإحصائي.
- أشجار القرار (Decision Trees): لتقييم النمذجة القائمة على القواعد المنطقية غير الخطية.
- الغابات العشوائية (Random Forests): كنموذج تجميعي توفيقي (Bagging Ensemble) يعتمد على تقليل التباين عبر تجميع مئات الأشجار العشوائية.
- آلات المتجهات الداعمة (Support Vector Machines – SVM): بالاعتماد على دوال النواة غير الخطية (RBF Kernel) مع تفعيل خيار المعايرة الاحتمالية
probability=True. - نماذج تعزيز التدرج (Gradient Boosting / XGBoost / LightGBM): كنماذج تجميعية تراكمية متقدمة تعمل على تحسين الأداء عبر التصحيح المتسلسل لأخطاء النماذج السابقة.
يضمن هذا التنوع الخوارزمي استكشاف قدرة مختلف الهياكل الرياضية على التقاط الأنماط المعقدة والتفاعلات غير الخطية الكامنة في فضاء المتغيرات التفسيرية، وتوفير قاعدة بيانات صلبة للتحليل المقارن للأداء التمييزي.
9.2 حساب وعرض درجات AUC لجميع النماذج بشكل مقارن
عقب إتمام مراحل التدريب الموحدة، تُستخرج الاحتمالات التنبؤية المتصلة للفئة الإيجابية لكل خوارزمية على حدة باستخدام مصفوفة بيانات الاختبار المستقلة. يتم بعد ذلك تطبيق دالة roc_auc_score لحساب درجات AUC المقابلة لكل نموذج وتسجيل زمن التنفيذ واستهلاك الذاكرة لتقييم الكفاءة الحسابية الشاملة.
تُنظم المخرجات الناتجة في جدول إحصائي مقارن وموحد باستخدام أطر بيانات Pandas (DataFrame)، حيث تُصنف النماذج ترتيبياً وتنازلياً وفقاً لقيمة AUC المحققة. يتيح هذا الجدول المنهجي المقارن رصد الفوارق الاستدلالية بدقة بين النماذج الخطية المقيدة والنماذج غير الخطية المعقدة، ويوفر أرضية موضوعية لاختيار النموذج الأنسب الذي يوازن بين القدرة التمييزية المطلقة وقابلية التفسير والتعقيد الهندسي.
تُظهر هذه التحليلات المقارنة غالباً تفوق خوارزميات التعزيز التدرجي والغابات العشوائية في تحقيق أعلى درجات AUC بفضل قدرتها الفائقة على ملاءمة الحدود الفاصلة شديدة التعقيد في فضاء المتغيرات، بينما يحتفظ الانحدار اللوجستي بمكانته كنموذج منافس متين في البيئات ذات العلاقات الخطية السائدة ومحدودية حجم العينات المتاحة.
9.3 الرسم التجميعي لمنحنيات ROC لعدة نماذج على مخطط واحد
يُعد التمثيل البياني المجمع لكافة منحنيات ROC على لوحة رسم واحدة الأسلوب الأكثر بلاغة وإقناعاً في الأوراق العلمية والتقارير التقنية لعرض نتائج المفاضلة بين الخوارزميات. يتم ذلك برمجياً عبر تكرار حلقات الرسم واستخدام ألوان مميزة وأنماط خطوط متباينة (صلبة، متقطعة، منقطة) لكل خوارزمية لتفادي التداخل البصري والالتباس.
يُدرج اسم كل نموذج مقترناً بدرجة AUC المحسوبة له في مفتاح المخطط (Legend) وفق تنسيق مرتب تنازلياً، مع الحفاظ على خط التخمين العشوائي المحايد في الخلفية كمعيار مرجعي أساسي. يتيح هذا الرسم التجميعي فحصاً بصرياً دقيقاً للمساحات النسبية وتفوق منحنى على آخر عبر كامل نطاق معدل الإيجابيات الكاذبة.
علاوة على ذلك، يكشف الرسم المجمع عن ظاهرة هامة وهي تقاطع المنحنيات (Crossing ROC Curves). ففي بعض الحالات، قد يمتلك نموذج معين قيمة AUC إجمالية أعلى، إلا أن نموذجاً آخر قد يتفوق عليه في نطاق محدد من معدلات الإيجابيات الكاذبة المنخفضة جداً (مثل $\text{FPR} < 0.05$)، وهو ما يوفر لمتخذ القرار بصيرة هندسية حاسمة لاختيار النموذج الأنسب وفقاً لمتطلبات القيود التشغيلية الفعلية للتطبيق الميداني.
10. حساب فترات الثقة لمقياس AUC باستخدام تقنية التمهيد (Bootstrapping)
10.1 الأساس النظري لتقنية إعادة أخذ العينات (Bootstrapping)
في المنهجية الإحصائية الأكاديمية الرصينة، لا يكفي تقديم تقدير نقطي مفرد (Point Estimate) لقيمة AUC؛ فالقيمة المحسوبة تظل متغيراً عشوائياً يخضع لخطأ المعاينة ويتأثر بالتباين الإحصائي للعينة المتاحة. تقتضي معايير النزاهة العلمية إرفاق القيمة بـ فترة ثقة (Confidence Interval – CI)، غالباً عند مستوى ثقة 95%، لتحديد نطاق عدم اليقين المحيط بالتقدير الاستدلالي.
نظراً لأن التوزيع الاحتمالي النظري الدقيق لإحصاء AUC يخضع لتعقيدات رياضية بالغة تعتمد على بنية الارتباط الداخلي للبيانات، تفشل الطرق المعلمية التقليدية أحياناً في تقديم تقديرات متسقة لتباين المقياس. هنا تبرز تقنية التمهيد اللامعلمي (Non-Parametric Bootstrapping) كحل إحصائي رصين وشديد المرونة يعتمد على إعادة أخذ العينات المتكرر مع الاستبدال (Sampling with Replacement) من مجموعة الاختبار الأصلية لتوليد التوزيع التجريبي للعينات دون فرض أي افتراضات مسبقة حول طبيعة التوزيع الاحتمالي للمجتمع الأصلي.
يتيح هذا النهج الحسابي القائم على المحاكاة الكثيفة إعادة بناء التوزيع التجريبي لإحصاء AUC، ومن ثم حساب الأخطاء المعيارية وفترات الثقة بدقة متناهية تعكس التباين الحقيقي وتستوعب أي التواء أو تشوه في بنية البيانات التجريبية المدروسة.
10.2 كتابة خوارزمية التمهيد لحساب فترة ثقة 95% في بايثون
يتم تنفيذ خوارزمية التمهيد لحساب فترات الثقة في بايثون عبر كتابة دالة معيارية متخصصة تعتمد على الحسابات المتجهية ومكتبة NumPy. تبدأ الخوارزمية بتحديد عدد التكرارات التمهيدية (Bootstrap Iterations $B$)، وعادة ما يُحدد بما لا يقل عن 1000 إلى 2000 تكرار لضمان الاستقرار الإحصائي للتقديرات الطرفية.
في كل تكرار $b$، تقوم الخوارزمية بما يلي:
- توليد عينة تمهيدية مطابقة في الحجم للعينة الأصلية عبر السحب العشوائي للمؤشرات مع الاستبدال باستخدام الدالة
np.random.randintأوsklearn.utils.resample. - التحقق من احتواء العينة التمهيدية المسحوبة على عينة إيجابية واحدة وسلبية واحدة على الأقل لضمان إمكانية حساب المنحنى وتفادي أخطاء القسمة على صفر.
- حساب درجة AUC للعينة التمهيدية باستخدام دالة
roc_auc_scoreوتخزين القيمة المحسوبة في مصفوفة النتائج التراكمية.
عقب اكتمال كافة التكرارات، تُحسب الحدود الدنيا والعليا لفترة الثقة 95% بتطبيق طريقة المئينات (Percentile Method) عبر الدالة np.percentile؛ حيث يمثل المئين 2.5% الحد الأدنى لفترة الثقة، بينما يمثل المئين 97.5% الحد الأعلى لها. يُصاغ التقرير النهائي بالصيغة الإحصائية المعيارية: $\text{AUC} = 0.865 \text{ [95% CI: 0.812 – 0.918]}$، مما يمنح البحث العلمي موثوقية إحصائية كاملة ورصانة منهجية لا غنى عنها.
10.3 مقارنة دلالة الفروق الإحصائية بين درجتي AUC لنموذجين (DeLong Test)
عند المفاضلة بين نموذجين تصنيفيين تم تقييمهما على نفس مجموعة بيانات الاختبار، لا يكفي القول بأن النموذج الأول أفضل من الثاني لمجرد أن قيمة AUC لديه أعلى بفارق طفيف (مثل 0.88 مقابل 0.85). يجب إخضاع هذا الفارق لاختبار فرضيات إحصائي صارم للتحقق مما إذا كان الفارق ذا دلالة إحصائية حقيقية (Statistically Significant) أم أنه مجرد نتاج للتباين العشوائي في العينة.
يُعد اختبار دي لونغ (DeLong’s Test for Comparing ROC Curves) الاختبار المعياري الذهبي المعتمد عالمياً في هذا السياق. يعتمد الاختبار على نظرية الدوال الإحصائية اللامعلمية من النوع U (U-Statistics) لتقدير مصفوفة التغاير الهيكلي (Variance-Covariance Matrix) بين درجات AUC المقترنة للنموذجين دون الحاجة لإجراء محاكاة التمهيد المكثفة حوسبياً.
يتم تنفيذ اختبار DeLong في بايثون عبر حزم إحصائية متخصصة لحساب إحصاء الاختبار المعياري $Z$ والقيمة الاحتمالية المقابلة ($p\text{-value}$). إذا كانت القيمة الاحتمالية المحسوبة أقل من مستوى المعنوية المعتاد ($\alpha = 0.05$)، يرفض الباحث الفرضية الصفرية القائلة بتكافؤ النموذجين، ويستنتج بثقة إحصائية وجود تفوق نوعي حقيقي لأحد النموذجين على الآخر، مما يوفر سنداً رياضياً قاطعاً لدعم الاستنتاجات العلمية والقرارات الهندسية في الأبحاث والمشاريع التطبيقية.
11. الأخطاء الشائعة واستكشاف الأخطاء وإصلاحها عند حساب AUC في بايثون
11.1 تمرير التصنيفات القاطعة بدلاً من الاحتمالات التنبؤية
يُعد تمرير التصنيفات الثنائية القاطعة المستخرجة من التابع predict() بدلاً من الاحتمالات التنبؤية المستمرة المستخرجة من predict_proba() الخطأ المنهجي والبرمجي الأكثر شيوعاً وتكراراً في الأوساط التطبيقية. ينشأ هذا الخطأ غالباً عن خلط مفاهيمي بين المقاييس التي تتطلب قرارات قطعية مثل مصفوفة الارتباك ومقياس F1، والمقاييس الترتيبية المتصلة مثل AUC.
عند تمرير قيم تصنيفية صلبة (0 و 1)، تعامل خوارزمية حساب المنحنى هذه القيم كنقطة تشغيلية وحيدة ومفردة، مما يؤدي إلى رسم منحنى ROC مشوه وخشن للغاية يتكون من قطعتين مستقيمتين فقط تلتقيان عند نقطة الإحداثيات المقابلة لتلك العتبة، متجاهلاً كافة التدرجات الاحتمالية الدقيقة. يترجم هذا برمجياً إلى انخفاض حاد ومصطنع في قيمة AUC المحسوبة مقارنة بالقدرة التمييزية الحقيقية الكامنة في النموذج.
لتشخيص وتفادي هذا الخطأ، يجب التحقق دائماً من الأبعاد ونطاق قيم المتغير الممرر إلى الدالة؛ حيث يجب أن يكون مصفوفة أحادية البعد من الأعداد العشرية ذات القيم المستمرة المحصورة بدقة داخل المجال $[0.0, 1.0]$، والتأكد المنهجي من استدعاء العمود الثاني للتابع predict_proba()[:, 1] لضمان الحساب الدقيق والسليم للمساحة الهندسية للمنحنى.
11.2 تسريب البيانات (Data Leakage) وتضخيم قيم AUC زائفاً
يُمثل تسريب البيانات (Data Leakage) أحد أخطر التهديدات المنهجية التي تقوض مصداقية النماذج الإحصائية وتؤدي إلى نتائج تفاؤلية وهمية وتضخيم زائف لقيم مقياس AUC. يحدث التسريب عندما تتسرب معلومات من مجموعة الاختبار أو من المستقبل إلى النموذج أثناء مراحل المعالجة القبلية أو التدريب، مما يجعل النموذج قادراً على تحقيق درجات AUC تكاد تلامس الكمال ($> 0.99$) أثناء التقييم المعملي، ثم ينهار أداؤه انهياراً دراماتيكياً عند تشغيله على بيانات العالم الحقيقي.
تتعدد صور التسريب الشائعة، ومن أبرزها:
- حساب معلمات التطبيع والتقييس المعياري (مثل المتوسط الحسابي والانحراف المعياري) على كامل مجموعة البيانات قبل إجراء تقسيم التدريب والاختبار.
- تنفيذ تقنيات اختيار المتغيرات (Feature Selection) أو معالجة القيم المفقودة باستخدام مجمل البيانات المتاحة.
- تقييم النموذج على نفس البيانات التي استُخدمت في ملاءمته وتدريبه دون عزل صارم لمجموعة اختبار مستقلة، مما يقيس الحفظ الآلي (Memorization) بدلاً من التعميم التنبؤي (Generalization).
للوقاية الصارمة من تسريب البيانات في بايثون، يجب حصر كافة عمليات المعالجة واستخراج الخصائص داخل كائنات أنابيب المعالجة (sklearn.pipeline.Pipeline). يضمن استخدام خطوط الأنابيب تطبيق خطوات التحويل والمعايرة فقط على بيانات التدريب المتاحة في كل طية تجريبية بشكل معزول وتلقائي، وتطبيق نفس التحويلات المستنتجة دون أي تعديل على بيانات الاختبار، مما يضمن نزاهة وموثوقية درجات AUC المستخرجة.
11.3 سوء تفسير قيم AUC القريبة من أو الأقل من 0.5
يواجه بعض الممارسين مواقف محيرة يظهر فيها نموذج التصنيف بقيمة AUC تقل بشكل ملحوظ عن 0.50 (مثل $\text{AUC} = 0.15$). يفسر البعض هذا الرقم خطأً على أنه مؤشر على نموذج سيئ تماماً أو عاجز عن التعلم، إلا أن التفسير الرياضي الحقيقي ينطوي على دلالة مغايرة تماماً: فالنموذج الذي يحقق $\text{AUC} = 0.15$ يمتلك في الواقع قدرة تمييزية ممتازة وتكافئ $\text{AUC} = 0.85$، ولكنه يعاني من مشكلة انعكاس التسميات الفئوية (Label Inversion).
ينشأ هذا الانعكاس البرمجي عادة عند تمرير احتمالات الفئة السلبية $P(Y=0|X)$ عن طريق الخطأ بدلاً من احتمالات الفئة الإيجابية $P(Y=1|X)$ إلى دالة التقييم، أو بسبب ترميز عكسي للمتغير التابع في مرحلة تجهيز البيانات. في هذه الحالة، يتنبأ النموذج بالحالات الإيجابية بدرجات احتمالية منخفضة والسلبية بدرجات مرتفعة بشكل منظم ومتسق، ويكفي تصحيح اتجاه المتجه أو عكس الفئات لإعادة قيمة AUC إلى نطاقها الصحيح المرتفع ($1 – \text{AUC}$).
في المقابل، عندما تستقر قيمة AUC بدقة حول النطاق $0.48 – 0.52$، فإن التفسير الإحصائي القاطع هو أن النموذج عشوائي تماماً وعديم الفائدة الاستدلالية (Random Guessing)، مما يشير إلى أن المتغيرات المستقلة المستخدمة لا تمتلك أي قدرة إيضاحية أو ارتباط حقيقي مع المتغير التابع، أو أن النموذج يعاني من نقص حاد في المطابقة (Underfitting) يتطلب إعادة النظر في صياغة الفرضيات والبيانات المدخلة بالكامل.
12. التطبيقات المتقدمة وأفضل الممارسات البرمجية لتقييم النماذج عبر AUC
12.1 تحسين المعلمات الفائقة (Hyperparameter Tuning) بالاعتماد على AUC
يمثل تحسين المعلمات الفائقة (Hyperparameter Tuning) خطوة متقدمة لرفع الكفاءة التنبؤية للنماذج المعقدة إلى حدودها القصوى. في هذه المرحلة، يجب توجيه خوارزميات البحث والاستمثال التلقائي للتركيز المباشر على تعظيم مقياس AUC بدلاً من الدقة العامة، لضمان استخراج أفضل قدرة تمييزية للمصنف.
يتم دمج هذا المعيار بسلاسة داخل أدوات البحث الشبكي المنظم (GridSearchCV) أو البحث العشوائي التوزيعي (RandomizedSearchCV) أو منصات التحسين البايزي (مثل Optuna) من خلال ضبط وسيط القياس scoring='roc_auc' (أو scoring='roc_auc_ovr' في المسائل متعددة الفئات). يوجه هذا الإعداد خوارزمية التحسين لاختيار توليفة المعلمات الفائقة — مثل عمق الأشجار، ومعدل التعلم، وقيم معاملات التنظيم — التي تحقق أقصى مساحة تكاملية للمنحنى عبر طيات التحقق المتقاطع.
تقتضي الممارسة المتقدمة مراقبة استقرار درجات AUC وانحرافها المعياري عبر التكرارات المختلفة لعملية التحسين، وتجنب الإفراط في تعقيد المعلمات الفائقة بما يضمن عدم وقوع النموذج في فرط المطابقة مع مجموعة التحقق المتقاطع، وتحقيق التوازن الأمثل بين الأداء التمييزي والقدرة على التعميم المستقبلي.
12.2 حساب المساحة الجزئية تحت المنحنى (Partial AUC – pAUC)
في العديد من التطبيقات الإكلينيكية والصناعية فائقة الحساسية، لا يحمل الحساب الكلي للمساحة عبر كامل نطاق $\text{FPR} in [0, 1]$ قيمة عملية ذات جدوى؛ إذ لا يمكن لأي نظام تشخيصي طبي أو نظام كشف احتيال بنكي أن يسمح بالعمل عند معدلات إنذار كاذب مرتفعة تتجاوز 10% أو 20%، لما يترتبه على ذلك من تكاليف فادحة واستنزاف خطير للموارد التشغيلية.
هنا تبرز الأهمية المنهجية لحساب المساحة الجزئية تحت المنحنى (Partial AUC – pAUC)، والتي تركز على حساب التكامل العددي للمنحنى محصوراً فقط داخل نطاق محدد ومقبول تشغيلياً لمعدل الإيجابيات الكاذبة، مثل الفترة $[0, \text{\max_fpr}]$ حيث تكون $\text{\max_fpr} = 0.10$ أو $0.05$.
تُنفذ هذه الحسابات برمجياً في مكتبة Scikit-Learn عبر دالة roc_auc_score من خلال تفعيل الوسيط المخصص max_fpr وتمرير العتبة القصوى المطلوبة (مثل max_fpr=0.1). تتيح هذه المقاربة المتخصصة مقارنة النماذج والمفاضلة بينها بناءً على أدائها في النطاق التشغيلي الحرج والواقعي للتطبيق الميداني، مما يوفر تقييماً عالي الدقة يتناسب مباشرة مع متطلبات بيئات العمل الفعلية.
12.3 أفضل الممارسات لصياغة وتوثيق نتائج AUC في الأوراق العلمية
تتطلب كتابة وتوثيق نتائج تقييم النماذج في المجلات والدوريات العلمية المحكمة الالتزام بمعايير نشر صارمة تضمن الشفافية الإحصائية وإمكانية إعادة الإنتاج العلمي (Scientific Reproducibility). يجب أن يتجاوز التوثيق الأكاديمي مجرد ذكر رقم AUC المجرد ليشمل حزمة متكاملة من المؤشرات الداعمة والمواصفات المنهجية.
تشمل أفضل الممارسات التوثيقية المعتمدة ما يلي:
- تقديم قيمة AUC مقترنة بفترة ثقة 95% محسوبة بتقنية التمهيد وحجم العينة المستخدمة بدقة (مثال: $\text{AUC} = 0.892$, $95% \text{ CI } [0.845, 0.938]$, $N=1,500$).
- تضمين القيمة الاحتمالية ($p\text{-value}$) لاختبار الدلالة الإحصائية المقارن (مثل اختبار DeLong) عند الادعاء بتفوق نموذج مقترح على نموذج مرجعي قائم.
- إرفاق رسوم بيانية عالية الوضوح (لا تقل دقتها عن 300 DPI) تتضمن تسميات محددة وواضحة للمحاور، ونقاط العتبات التشغيلية المختارة، وتوضيح خط الأساس العشوائي ومفتاح المخطط التفصيلي.
- مشاركة الشيفرات البرمجية المنفذة في مستودعات مفتوحة موثوقة (مثل GitHub أو Zenodo) مع تحديد أرقام إصدارات المكتبات المستخدمة ومولدات الأرقام العشوائية لضمان تكرار واستنساخ الحسابات بدقة تامة.
خاتمة شاملة وتوصيات مستقبلية
يُمثل مقياس المساحة تحت منحنى خصائص تشغيل المستقبِل (AUC-ROC) حجر الزاوية في التقييم الموضوعي لنماذج التصنيف الإحصائي وتعلم الآلة في بيئات البحث العلمي والتطوير التقني المعاصر. من خلال استقلاله المنهجي عن عتبات اتخاذ القرار الفردية وتجاوزه لقيود المقاييس الثابتة المضللة، يوفر هذا المقياس أداة استدلالية فريدة تلخص القدرة التمييزية والتفاضلية للنماذج الاحتمالية بكفاءة ورصانة رياضية لا تضاهى.
لقد استعرضنا في هذا الدليل المتكامل البنية الرياضية المتينة للمقياس، وتكافؤه الجوهري مع إحصاء مان-ويتني اللامعلمي، وكيفية تنفيذه واحتسابه خطوة بخطوة في لغة بايثون باستخدام مكتبات Scikit-Learn و NumPy و Matplotlib. كما تناولنا آليات التعامل مع التحديات المتقدمة، بدءاً من التصنيف متعدد الفئات والبيانات غير المتوازنة والانتقال المنهجي نحو مقياس PR-AUC، وصولاً إلى تدقيق فترات الثقة عبر تقنيات التمهيد وتطبيق اختبارات المقارنة الدقيقة وتجنب مزالق تسريب البيانات والتفسيرات الخاطئة.
إن إتقان هذه الأدوات النظرية والبرمجية يمنح الباحثين والمطورين القدرة على بناء حلول ذكاء اصطناعي ونمذجة إحصائية تتسم بأعلى معايير الدقة العلمية، والموثوقية التشغيلية، والشفافية الاستدلالية التي تتطلبها التطبيقات الحيوية في عصر البيانات الضخمة.
المراجع الأكاديمية (References)
- DeLong, E. R., DeLong, D. M., & Clarke-Pearson, D. L. (1988). Comparing the areas under two or more correlated receiver operating characteristic curves: A nonparametric approach. Biometrics, 44(3), 837–845. https://doi.org/10.2307/2531595
- Efron, B., & Tibshirani, R. J. (1994). An introduction to the bootstrap. CRC press. https://doi.org/10.1201/9780429246593
- Fawcett, T. (2006). An introduction to ROC analysis. Pattern Recognition Letters, 27(8), 861–874. https://doi.org/10.1016/j.patrec.2005.10.010
- Hanley, J. A., & McNeil, B. J. (1982). The meaning and use of the area under a receiver operating characteristic (ROC) curve. Radiology, 143(1), 29–36. https://doi.org/10.1148/radiology.143.1.7063747
- Pedregosa, F., Varoquaux, G., Gramfort, A., Michel, V., Thirion, B., Grisel, O., Blondel, M., Prettenhofer, P., Weiss, R., Dubourg, V., Vanderplas, J., Passos, A., Cournapeau, D., Brucher, M., Perrot, M., & Duchesnay, É. (2011). Scikit-learn: Machine learning in Python. Journal of Machine Learning Research, 12, 2825–2830. https://jmlr.csail.mit.edu/papers/v12/pedregosa11a.html
- Saito, T., & Rehmsmeier, M. (2015). The precision-recall plot is more informative than the ROC plot when evaluating imbalanced datasets. PLOS ONE, 10(3), e0118432. https://doi.org/10.1371/journal.pone.0118432
- Youden, W. J. (1950). Index for rating diagnostic tests. Cancer, 3(1), 32–35. <a href="https://doi.org/10.1002/1097-0142(1950)3:13.0.CO;2-3″ target=”_blank” rel=”noopener noreferrer”>https://doi.org/10.1002/1097-0142(1950)3:1<32::AID-CNCR2820030106>3.0.CO;2-3