HeadlinesBriefing favicon HeadlinesBriefing.com

التحقق العدوي لاكتشاف تحرك بيانات مخفي

Towards Data Science •
×

يحدث نوع معين من الهدوء بعد تشغيل تحقق جيد. الأرقام على الشاشة، AUC عند 0.91، وجميعهم يهتزون في الاجتماع الصباحي لأن، لمرة واحدة، لم يكن لدى أحد سبب لطرح سؤال متابعة. احترافي، إنه شعور جيد. لكنه أيضًا شيء تعلمت ألا أتمسك به أو أثق فيه كثيرًا. أخيرًا، تم نشر النموذج في ذلك الجمعة. لا شيء مثير للاهتمام في ذلك، لا غرفة حرب، لا ليالٍ لاحقة. فقط نشر بدا يبدو تمامًا مثل العشرة قبله. بحلول الثلاثاء، حدث شيء خطأ بطريقة استغرت وقتًا للانتباه إليه. دقة الحالات المعلمة انخفضت بشكل كبير، ولم يظهر أي شيء من ذلك كخطأ. لا انهيار، لا تنبيه، لا خط أحمر على أي لوحة قيامت يراقبها أحد. ببساطة كان هناك، يزداد سوءًا، حتى تعبت فريقًا لاحقًا من قائمة مراجعة مليئة بعلامات غير مفيدة وسأل لماذا. هكذا وُجد. ليس نظامًا يكتشف نفسه. شخص، منزعج بما يكفي للبحث. وهنا الجزء الذي لا يزال يزعجني قليلاً: لم يتغير أي شيء في الكود. النموذج والخط الفاصل كانا تمامًا مثل اليوم السابق. ما تغير هو العالم تحتهم. تم إطلاق مستوى تسعير جديد قبل بضعة أيام، وكان العملاء فيه يقومون بعمليات أكثر، بمبالغ أقل في كل مرة. فحصت ميزة واحدة في كل مرة، ولم يبدُ أي شيء خطأ: قيمة المعاملة كانت في نطاق طبيعي، وكذلك تكرار المعاملات. كان ذلك فقط عندما نظرت إلى الاثنين معًا أن البيانات بشكل واضح أصبحت شيئًا آخر، ولم يكن هناك أي فحص في الخط الفاصل لبناء للكتشاف عن ذلك. كنت قد أنشأت مراقبة انحراف مسبقًا وكنت بالفعل أعتقد أنني مغطى. حسنًا، أظهر ذلك أنني لم أكن. الفحص الذي كان لدي كان يفعل تمامًا ما طلبت منه أن يفعله، مراقبة كل ميزة بشكل منفرد، تمامًا كما بنيت له، وكان سيجلس هناك يبلغ عن الأخضر طوال العملية. وهذا أمر غريب للواقع. المراقبة لم تكن معطلة. ولم تكن كسلانة أو نصف منشأة أيضًا. كانت ببساطة تجيب على سؤال أضيق من السؤال الذي كان يهم حقًا. الجزء الذي يخطئ بصمت هذا السؤال الأضيق هو السؤال الذي يطرحه معظم مراقبة الانحراف، بما في ذلك مراقبتي في ذلك الوقت. هل تغير توزيع أي ميزة واحدة؟ خذ قيم هذا الأسبوع وقيم التدريب، ضعها في شكل مقارن، واحصل على رقم. على الورق، هذه ليست فكرة سيئة. إنها مجرد غير مكتملة. تعمل جيدًا حتى يصبح الفشل غير في أي ميزة واحدة، بل في كيفية تحرك ميزتين معًا، وهذا طريقة أسهل بكثير للبيانات الحقيقية للانكسار مما تعترف به معظم التقارير. مثال مستوى التسعير هو مثال نظيف لأنه لا شيء في ذلك يبدو خطأ في العزل. شغل PSI على avg_transaction_value وحده، جيد. شغل PSI على num_transactions_30d وحده، أيضًا جيد. العلاقة بينهما انقلبت، وPSI، بتصميمها، لا تنظر عمودين في وقت واحد. لا يمكنها. هذا ليس عيبًا في المقياس مقدقدًا بقدر ما هو حد لم يتم بناؤه لعبوره. إذن الأسئلة تصبح: كيف تتحقق من علاقة بدلاً من توزيع؟ يبدو أن الإجابة ليست إحصاءات غريبة تحتاج إلى تعلمها. إنها مجرد طلب من نموذج أن يلاحظ ذلك نيابةً عنك. دع مصنفًا يلاحظ. الخدعة لها اسم، التحقق العدوي، وهو يجعلك تبدو أكثر ذكاءً مما هو. ضع صفوف التدريب على 0، وضع دفعة طازجة من صفوف الإنتاج على 1، وتدرب مصنفًا للتمييز بينهما. إذا كانت المجموعتان حقًا مستخلصة من نفس التوزيع، لا يمكنه أن يفعل أفضل من التخمين، AUC قريب من 0.5. إذا كان بإمكانه فصلهما، فهذا يعني أن شيئًا تحرك، وبما أن المصنف يحصل على جميع الميزات في وقت واحد، فهو يلتقط تمامًا نوع التغيير المشترك.