प्रतिनिधि इंटरव्यू विषय

डेटा साइंस इंटरव्यू: आप MCAR, MAR और MNAR मिसिंग डेटा को कैसे संभालते हैं?

डेटामध्यम
Offer.cc संपादकीय टीमप्रकाशित अपडेट किया गया

प्रश्न

एक चर्न मॉडल में 18% इनकम वैल्यूज मिसिंग हैं। आप मिसिंगनेस मैकेनिज्म का विश्लेषण कैसे करेंगे, डिलीशन, इम्प्यूटेशन या मिसिंगनेस सिग्नल में से चुनाव कैसे करेंगे, और यह कैसे साबित करेंगे कि इस ट्रीटमेंट से जानकारी लीक नहीं होती है?

प्रॉम्प्ट और संदर्भ

यह परिदृश्य डेटा साइंस, डेटा एनालिटिक्स और मशीन लर्निंग इंटरव्यू के लिए उपयुक्त है। डेटासेट में यूजर बिहेवियर, रीजन, इनकम और एक चर्न लेबल शामिल है; 18% पंक्तियों के लिए इनकम मिसिंग है। कोई भी ट्रीटमेंट चुनने से पहले आपको यह समझाना होगा कि यह मिसिंग क्यों है। केवल प्रतिशत अपने आप में निर्णय लेने का नियम नहीं है।

इंटरव्यूअर क्या टेस्ट करता है

  • प्रत्येक null को एक ही समस्या मानने के बजाय MCAR, MAR और MNAR में अंतर करना।
  • मिसिंगनेस इंडिकेटर्स, इम्प्यूटेशन मॉडल्स और ट्रेन-वैलिडेशन सीमाओं की व्याख्या करना।
  • मिसिंगनेस में सिग्नल, सेलेक्शन बायस और इन्फॉर्मेशन लीकेज की पहचान करना।

उत्तर देने से पहले स्पष्ट करने वाले प्रश्न

  • क्या इनकम यूजर द्वारा दर्ज की गई है, डेटा कलेक्शन विफलता के कारण खो गई है, या केवल कुछ क्षेत्रों में दिखाई जाती है? मैकेनिज्म यह बदल देता है कि क्या पहचाना जा सकता है।
  • क्या लक्ष्य प्रेडिक्शन है या कॉज़ल एस्टीमेशन? प्रेडिक्शन मिसिंगनेस सिग्नल को बनाए रख सकता है; कॉज़ल एनालिसिस के लिए मजबूत मान्यताओं और संवेदनशीलता विश्लेषण (sensitivity analysis) की आवश्यकता होती है।
  • क्या इनकम प्रोडक्शन इनफरेंस के समय भी अनुपलब्ध है? एक ऑफलाइन बैकफिल जो ऑनलाइन मौजूद नहीं होगा, फीचर मिसमैच पैदा करता है।
  • क्या डेटा का विभाजन (split) यूजर, समय या रैंडम रो के आधार पर है? कई सेट्स में एक ही यूजर होने से इम्प्यूटेशन और मूल्यांकन के माध्यम से जानकारी लीक हो सकती है।

30-सेकंड का उत्तर ढांचा

मैं मिसिंगनेस इंडिकेटर को ऑब्जर्व्ड फील्ड्स और टारगेट के साथ मैप करूंगा, जिसमें ज्ञात कारणों, ऑब्जर्व्ड डेटा द्वारा समर्थित MAR स्पष्टीकरणों और MNAR मान्यताओं को अलग किया जाएगा जिन्हें ऑब्जर्व्ड डेटा सत्यापित नहीं कर सकता। मैं इम्प्यूटर्स को केवल ट्रेनिंग डेटा पर फिट करूंगा, एक मिसिंगनेस इंडिकेटर रखूंगा और मूल मिसिंगनेस पैटर्न के आधार पर मूल्यांकन करूंगा। यदि मैकेनिज्म अनिश्चित है, तो मैं डिलीशन, सिंपल इम्प्यूटेशन, मॉडल-आधारित इम्प्यूटेशन और सेंसिटिविटी परिदृश्यों की तुलना करूंगा, फिर उस विकल्प को चुनूंगा जिसकी व्यावसायिक लागत और वैलिडेशन साक्ष्य स्वीकार्य हों।

चरण-दर-चरण गहन विश्लेषण

1. nulls को विश्लेषण योग्य घटनाओं में बदलें

प्रत्येक फील्ड के लिए एक मिसिंगनेस इंडिकेटर M बनाएं और समय, क्षेत्र, डिवाइस, चैनल और टारगेट लेबल के आधार पर इसका प्रोफाइल तैयार करें। सबसे पहले लॉग्स, फॉर्म फ्लो और अपस्ट्रीम स्कीमा का निरीक्षण करें। यदि किसी रिलीज के बाद मिसिंगनेस अचानक बढ़ जाती है, तो इम्प्यूटेशन से घटना को छिपाने के बजाय डेटा कलेक्शन को ठीक करें।

2. तीन मैकेनिज्म सीमाओं की व्याख्या करें

MCAR का अर्थ है कि मिसिंगनेस ऑब्जर्व्ड और अनऑब्जर्व्ड वैल्यूज दोनों से असंबंधित है। उस धारणा और अन्य आवश्यक शर्तों के तहत, कम्प्लीट-केस एनालिसिस मैकेनिज्म द्वारा पक्षपाती (biased) नहीं होता है, लेकिन इससे सैंपल साइज का नुकसान होता है। MAR का अर्थ है कि ऑब्जर्व्ड वेरिएबल्स को ध्यान में रखने के बाद, मिसिंगनेस स्वयं मिसिंग वैल्यू से असंबंधित है, जैसे कि इनकम का इस तरह से मिसिंग होना जिसे क्षेत्र और डिवाइस द्वारा समझाया जा सके। MNAR का अर्थ है कि ऑब्जर्व्ड वेरिएबल्स को नियंत्रित करने के बाद भी, मिसिंगनेस अनऑब्जर्व्ड इनकम या उसके कारण से संबंधित रहती है, जैसे कि उच्च आय वाले यूजर्स का जवाब देने से इनकार करना।

ये मैकेनिज्म ऐसे लेबल नहीं हैं जिन्हें एक प्लॉट द्वारा साबित किया जा सके। लॉग्स और ऑब्जर्व्ड वेरिएबल्स किसी स्पष्टीकरण का समर्थन कर सकते हैं; MNAR के लिए अक्सर डोमेन मान्यताओं, बाहरी डेटा या संवेदनशीलता विश्लेषण की आवश्यकता होती है।

3. ट्रीटमेंट का चुनाव करें

  • यदि किसी सुधारने योग्य कलेक्शन विफलता के कारण डेटा मिसिंग हुआ है, तो सोर्स को बैकफिल करें या पाइपलाइन को ठीक करें और रिपेयर का वर्जन तय करें।
  • प्रेडिक्शन के लिए जब मिसिंगनेस में सिग्नल होता है, तो ट्रेनिंग स्टैटिस्टिक्स या ट्रेनिंग मॉडल पर एक इम्प्यूटर फिट करें, एक मिसिंगनेस इंडिकेटर जोड़ें और सत्यापित करें कि प्रोडक्शन में भी वही सिग्नल है।
  • यदि दर कम है और MCAR विश्वसनीय है, तो डिलीशन स्वीकार्य हो सकता है, लेकिन सैंपल लॉस और स्लाइस प्रभावों की रिपोर्ट करें।
  • जब अनिश्चितता मायने रखती है या MNAR संभावित है, तो मल्टीपल इम्प्यूटेशन, एक स्पष्ट मिसिंगनेस मॉडल, बाउंड्स और पैटर्न-मिक्सचर सेंसिटिविटी की तुलना करें; केवल एक मीन फिल कोई साक्ष्य नहीं है।

scikit-learn के SimpleImputer, KNNImputer और IterativeImputer अलग-अलग मान्यताओं के तहत उपकरण हैं; वे स्वचालित रूप से मैकेनिज्म की पहचान नहीं करते हैं। उन्हें ट्रेनिंग डेटा पर फिट करें और उन्हें वैलिडेशन, टेस्ट और प्रोडक्शन डेटा पर लागू करें।

4. वैलिडेशन और लीकेज डिफेंस डिज़ाइन करें

इम्प्यूटेशन, स्केलिंग और एन्कोडिंग को एक ही ट्रेनिंग पाइपलाइन में रखें। प्रत्येक क्रॉस-वैलिडेशन फोल्ड के अंदर दोबारा फिट करें; डेटा स्प्लिट करने से पहले कभी भी ग्लोबल मीन, मीडियन या नेबर सेट की गणना न करें। टाइम डेटा को समय के आधार पर और यूजर डेटा को यूजर के आधार पर स्प्लिट करें। मूल मिसिंगनेस, इम्प्यूटेशन के बाद के डिस्ट्रीब्यूशन, इंडिकेटर कोएफिशिएंट्स, कैलिब्रेशन और स्लाइस मेट्रिक्स की तुलना करें। प्रोडक्शन डिग्रेडेशन का अनुकरण करने के लिए वैलिडेशन में अतिरिक्त मिसिंगनेस इंजेक्ट करें।

5. परिणाम स्वीकार करने के लिए व्यावसायिक लागत का उपयोग करें

यदि किसी हाई-वैल्यू यूजर को गलत वर्गीकृत करने की लागत एक सामान्य यूजर को मिस करने से अधिक है, तो केवल AUC पर्याप्त नहीं है। अलग-अलग मिसिंगनेस पैटर्न्स के तहत रिकॉल, कैलिब्रेशन, थ्रेशोल्ड कॉस्ट, रिव्यू वॉल्यूम और रिजेक्शन रिस्क की रिपोर्ट करें। लॉन्च से पहले इम्प्यूटर वर्जन, स्कीमा और पॉलिसी को फ्रीज करें; मिसिंगनेस ड्रिफ्ट की निगरानी करें और ड्रिफ्ट द्वारा थ्रेशोल्ड पार करने पर स्वचालित निर्णयों को रोकें या एक सुरक्षित नियम (fallback rule) पर वापस लौटें।

उच्च गुणवत्ता वाला नमूना उत्तर

"मैं केवल 18% की दर के आधार पर डिलीट करने या भरने का निर्णय नहीं लूंगा। मैं यह निर्धारित करूंगा कि क्या इनकम कलेक्शन विफलता, यूजर की पसंद या किसी चैनल-विशिष्ट फ्लो के कारण मिसिंग है, फिर समय, क्षेत्र, डिवाइस और चर्न के आधार पर मिसिंगनेस इंडिकेटर का प्रोफाइल तैयार करूंगा। यदि ऑब्जर्व्ड फील्ड्स इसे समझाते हैं, तो मैं MAR धारणा का उपयोग करूंगा, प्रत्येक ट्रेनिंग फोल्ड के अंदर हर इम्प्यूटर को फिट करूंगा और इंडिकेटर को बनाए रखूंगा। यदि डोमेन साक्ष्य से पता चलता है कि उच्च आय वाले यूजर्स जवाब देने के कम इच्छुक हैं, तो मैं MNAR को एक ऐसी धारणा मानूंगा जिसे वर्तमान डेटा साबित नहीं कर सकता और पैटर्न-मिक्सचर या बाउंड सेंसिटिविटी एनालिसिस चलाऊंगा। मैं यूजर- या टाइम-आइसोलेटेड वैलिडेशन सेट पर डिलीशन, सिंपल और मॉडल-आधारित इम्प्यूटेशन की तुलना करूंगा, और कैलिब्रेशन, स्लाइस कॉस्ट और प्रोडक्शन मिसिंगनेस की रिपोर्ट करूंगा। यदि प्रोडक्शन इनकम प्राप्त नहीं कर सकता है, तो मैं ऑफलाइन बैकफिल पर निर्भर नहीं रहूंगा।"

सामान्य गलतियाँ

  • दर 18% होने के कारण डिलीट करना → सैंपल लॉस और सेलेक्शन बायस को मापा नहीं गया है → पहले मैकेनिज्म, स्लाइस और व्यावसायिक लागत का विश्लेषण करें।
  • डेटा स्प्लिट करने से पहले ग्लोबल मीन की गणना करना → वैलिडेशन जानकारी ट्रेनिंग में प्रवेश कर जाती है → प्रत्येक ट्रेनिंग फोल्ड के अंदर इम्प्यूटेशन फिट करें।
  • मिसिंगनेस इंडिकेटर को MNAR का प्रमाण कहना → कोरिलेशन अनऑब्जर्व्ड कारण को प्रकट नहीं करता है → धारणा स्पष्ट करें और सेंसिटिविटी एनालिसिस चलाएं।
  • केवल AUC की तुलना करना → थ्रेशोल्ड कॉस्ट, कैलिब्रेशन और ड्रिफ्ट छिपे रह जाते हैं → स्लाइस, निर्णय लागत और प्रोडक्शन मॉनिटरिंग की रिपोर्ट करें।

फॉलो-अप प्रश्न और उत्तर

क्या होगा यदि प्रोडक्शन में इनकम पूरी तरह से अनुपलब्ध हो?

प्रोडक्शन में उपलब्ध फील्ड्स के साथ ट्रेनिंग और वैलिडेशन को फिर से तैयार करें। मिसिंगनेस इंडिकेटर को केवल तभी रखें जब यह एक स्थिर प्रोडक्शन सिग्नल हो, अन्यथा उस फीचर को हटा दें। बैकफिल की गई इनकम के साथ केवल-ऑफलाइन लाभ न बनाएं जब तक कि प्रोडक्शन उसी निर्णय समय पर इसे प्राप्त न कर ले।

आप MNAR सेंसिटिविटी का परीक्षण कैसे करते हैं?

इसके लिए एक संभावित रेंज परिभाषित करें कि मिसिंग वैल्यूज ऑब्जर्व्ड वैल्यूज से कैसे भिन्न हैं, उस शिफ्ट या मिसिंगनेस मॉडल को बदलें, और मेट्रिक्स तथा व्यावसायिक लागत की पुनर्गणना करें। यदि निष्कर्ष एक उचित सीमा के भीतर उलट जाता है, तो इसे धारणा-निर्भर के रूप में चिह्नित करें और बाहरी डेटा एकत्र करें या अतिरिक्त सैंपलिंग डिज़ाइन करें।

मल्टीपल और मॉडल-आधारित इम्प्यूटेशन में क्या अंतर है?

मॉडल-आधारित इम्प्यूटेशन अक्सर एक पूरा डेटासेट बनाता है, जो प्रेडिक्शन के लिए काम कर सकता है लेकिन अनिश्चितता को कम आंकता है। मल्टीपल इम्प्यूटेशन कई संभावित डेटासेट बनाता है और अनुमानों को जोड़ता है, जिससे अनिश्चितता स्पष्ट हो जाती है। दोनों को ट्रेनिंग सीमा के भीतर फिट होना चाहिए और टारगेट लीकेज से बचना चाहिए।

जब मिसिंगनेस 18% से बढ़कर 30% हो जाती है तो आप सबसे पहले क्या करते हैं?

सामान्य स्कोरिंग को रोकें, स्कीमा, क्लाइंट वर्जन्स, इंस्ट्रूमेंटेशन और अपस्ट्रीम जॉब्स का निरीक्षण करें, और प्रभावित स्लाइस को चिन्हित करें। यदि यह एक डेटा कलेक्शन घटना है, तो दोबारा ट्रेनिंग देने से पहले मरम्मत या बैकफिल करें। यदि यह एक व्यावसायिक परिवर्तन है, तो मैकेनिज्म, थ्रेशोल्ड और फॉलबैक पॉलिसी का पुनर्मूल्यांकन करें।

सार्वजनिक स्रोत

संबंधित प्रश्न