deterministic हिस्सों को ढंग से टेस्ट कीजिए और stochastic हिस्सों को बर्ताव के हिसाब से। feature transforms का fixtures के मुकाबले unit test कीजिए, inputs पर schema और range के contracts लागू कीजिए, एक golden row test रखिए जो serialized pipeline load करके जांचे कि जाने हुए inputs जाने हुए scores देते हैं, और मॉडल के outputs पर सटीक accuracy आंकड़े का दावा करने की जगह बर्ताव वाले टेस्ट लिखिए (invariance, दिशा की उम्मीदें)।
इंटरव्यूअर यह क्यों पूछते हैं
बहुत सारे कैंडिडेट कहते हैं कि machine learning को सचमुच टेस्ट किया ही नहीं जा सकता, जो गलत जवाब है। इंटरव्यूअर सुनना चाहते हैं कि pipeline का ज्यादातर हिस्सा आम deterministic कोड है जो अच्छी तरह टेस्ट होता है, और खुद मॉडल भी बर्ताव के हिसाब से टेस्ट किए जा सकते हैं। golden row regression test और data validation contracts का जिक्र दिखाता है कि आपने कोई outage रोका है, सिर्फ उससे निपटा नहीं है।
अपना जवाब कैसे स्ट्रक्चर करें
- बताएं कि pipeline का ज्यादातर हिस्सा deterministic कोड है।
- transforms पर unit tests और inputs पर schema contracts का नाम लें।
- serialized artifact पर golden row test बताएं।
- सटीक metric का दावा करने की जगह बर्ताव वाले टेस्ट जोड़ें।
- बताएं कि CI में क्या जाता है और schedule पर क्या चलता है।
उदाहरण जवाब
pipeline का ज्यादातर हिस्सा आम कोड है और वह आम कोड की तरह ही टेस्ट होता है। feature transforms को छोटे fixtures के मुकाबले unit tests मिलते हैं, बदसूरत मामलों समेत: nulls, ट्रेनिंग में कभी न दिखी category, और वह negative वैल्यू जहां सिर्फ positive की उम्मीद थी। input डेटा पर contract जांच होती है, यानी schema, types, ranges और अपेक्षित null दरें, जो बाद में अजीब मॉडल के रूप में पता चलने की बजाय ट्रेनिंग से पहले एक गेट की तरह चलती हैं। फिर golden row test, जहां मैं एक serialized pipeline और गिने चुने तय inputs उनके अपेक्षित scores के साथ रखता हूं, और अगर किसी refactor से वे बदलें तो CI फेल हो जाती है। इसने मेरे लिए एक से ज्यादा बार चुपचाप हुए preprocessing बदलाव पकड़े हैं। खुद मॉडल के लिए मैं किसी आंकड़े से ऊपर accuracy का दावा नहीं करता, क्योंकि वह flaky होता है और खराब गेट है। उसकी जगह मैं बर्ताव वाले टेस्ट लिखता हूं: invariance, यानी किसी गैरजरूरी field को बदलने पर score मुश्किल से हिले, और दिशा की उम्मीदें, यानी जिस feature का संबंध monotonic पता है उसे बढ़ाने पर prediction सही तरफ हिले। पूरे training runs हर commit के लिए बहुत धीमे हैं, तो वे रोज रात चलते हैं, और CI में एक छोटे sample पर तेज smoke training चलती है ताकि साबित हो कि pipeline अब भी end to end चलती है।
जल्दी ही यह इंटरव्यू देने जा रहे हैं? GhostPilot आपकी लाइव कॉल सुनता है, सवाल पूछे जाते ही उसे पकड़ लेता है, और रियल-टाइम में एक स्ट्रक्चर्ड जवाब आपकी स्क्रीन पर डाल देता है। अगले मॉक में इसे आजमाएं, या ले लें एक $29 Session Pass, कोई सब्सक्रिप्शन नहीं, असली इंटरव्यू के लिए।
देखें यह कैसे काम करता हैफॉलो-अप सवाल जिनकी उम्मीद रखें
- जो मॉडल वाजिब तौर पर nondeterministic है, उसके लिए टेस्ट आप कैसे लिखेंगे?
- आप कौन सा data validation टूल इस्तेमाल करेंगे, और किस पर गेट लगाएंगे?
- golden row tests को रखरखाव का शोर बनने से आप कैसे रोकते हैं?
मशीन लर्निंग इंजीनियर के और सवाल
आपका इंटरव्यूअर इसका अपना वर्ज़न पूछेगा। फ्री Question Predictor में अपना असली जॉब डिस्क्रिप्शन पेस्ट कीजिए और वो 20 सवाल पाइए जो उस रोल में सबसे ज्यादा पूछे जाने की संभावना है, साथ में यह भी कि हर सवाल असल में क्या टटोल रहा है।
मेरे सवाल प्रेडिक्ट करें