المعايرة، لا قوة الكشف
كدنا نُطلق نسخة تفشل في هذا الاختبار. وهذا هو القياس الذي أمسك بها قبل أن تلمسها بيانات عميل حقيقي.
في هذه الصفحة
تُقاس معظم كواشف الانحراف برقم واحد: كم مرة تلتقط شذوذًا حقيقيًا. وذلك الرقم مهم، لكنه يُخفي السؤال الذي يهم مشغِّلًا أكثر: حين يقول الكاشف إن احتمال إنذاره الكاذب 5%، هل هو 5% فعلًا؟
تنفيذنا الأول نفسه فشل في هذا الاختبار. كان يستخدم بناءً قياسيًا تمامًا، من الكتب، لدرجة انحراف — من النوع الذي ما زالت معظم الأدوات تشحنه. وحين طُلب منه معدَّل إيجابيات كاذبة 5%، أعطى ما هو أسوأ من ذلك بكثير على بيانات غير جاوسية.
| شكل البيانات | الهدف | النهج الأسبق | Kirelta (المشحون) |
|---|---|---|---|
| جاوسي | 0.050 | 0.049 | 0.053 |
| خصائص مترابطة | 0.050 | 0.049 | 0.053 |
| ثقيل الذيل (t₃) | 0.050 | 0.192 | 0.051 |
| ملتوٍ (لوغاريتمي طبيعي) | 0.050 | 0.294 | 0.053 |
على بيانات جاوسية حقيقية، يبدو المسار الساذج جيدًا. أما على بيانات ثقيلة الذيل أو ملتوية — وهي ما تكونه معظم خصائص الإنتاج الحقيقية — فإنه ينذر بما يصل إلى 6 أضعاف الحدّ. وكل رقم في عمود «المشحون» هو معايرة كيرلتا تؤدي عملها الفعلي: الحفاظ على المعدَّل الموعود أيًّا كان شكل البيانات.
كيف يقارَن ذلك بالبدائل القياسية
البروتوكول نفسه، والأشكال الأربعة نفسها، مقابل كواشف scikit-learn حقيقية — بلا ضبط خاص لكل طريقة، والجميع طُلب منهم الضمان نفسه.
| الطريقة | خطأ المعايرة | متوسط الكشف (قفزة 6σ) |
|---|---|---|
| EllipticEnvelope | 0.0010 | 0.991 |
| Kirelta | 0.0023 | 0.991 |
| LOF (novelty) | 0.0024 | 0.977 |
| IsolationForest | 0.0019 | 0.612 |
| OneClassSVM | 0.0282 | 0.983 |
اقرأ صفَّ IsolationForest بتمعُّن: فهو معايَر جيدًا نسبيًا (خطأ 0.0019) ومع ذلك يُغفل قرابة 40% من الشذوذات الكبيرة — فالمعايرة وقوة الكشف خاصيتان منفصلتان فعلًا، ويمكن لطريقة أن تملك إحداهما دون الأخرى.
وعلى المعايرة أن تصمد حين يتغيَّر شكل البيانات
المعايرة الثابتة صحيحة فقط للنظام الذي ضُبطت عليه. وبيانات الإنتاج الحقيقية لا تبقى في نظام واحد.
| النظام | بلا تكيُّف | مع التكيُّف |
|---|---|---|
| هادئ | 0.0625 | 0.0504 |
| انحراف بطيء | 0.0465 | 0.0500 |
| إزاحة مفاجئة | 0.0478 | 0.0501 |
| انفجار تباين | 0.1177 | 0.0495 |
| موسمي | 0.0529 | 0.0502 |
| ذيل ثقيل | 0.0634 | 0.0506 |
| مترابط ذاتيًا | 0.0449 | 0.0499 |
الهدف 0.050 في كل صف. وبلا تكيُّف، تكفي قفزة مفاجئة في التباين وحدها لدفع المعدَّل المتحقِّق إلى 0.1177 — أي أكثر من ضعف ما وُعد به.
ما لا يُظهره هذا القياس: عدد خصائص واحد (p=4)، وحجم عينة واحد، ونوع شذوذ واحد (إزاحة منتظمة 6σ)، ومعاملات افتراضية لكل منافس. وهو قياس للمعايرة، لا حكم عام على الطرق المقارَنة. ويمكنك فحص المعايرة على بياناتك: درِّب خط أساس على جزء من فترة سليمة، وقيِّم جزءًا سليمًا آخر، وينبغي ألا يُعلَّم أكثر من نحو 5% من الصفوف.
معدَّل الإنذار الكاذب، مقيسًا
على خط أساس من 2,400 صفًّا (3 خصائص، توزيع طبيعي معياري)، قيَّمنا 300 دفعة نظيفة مستقلة من 80 صفًّا: أُطلق إنذار الانحراف في 2 منها — أي 0.7%، مقابل حدٍّ قدره 5%. وفي 60 دفعة أُزيحت كل خصائصها بمقدار انحراف معياري واحد، أُطلق في 60. ويمكنك إجراء الشقِّ النظيف من هذا الفحص على بياناتك عبر جرِّبه.
300 دفعة نظيفة: أُطلق الإنذار في 2 منها (0.7%، والحد 5%)
60 دفعة مُزاحة بانحراف معياري واحد: أُطلق الإنذار في 60 منها