चार चीजों का version साथ में रखें: code, डेटा, configuration और environment। MLflow या Weights and Biases जैसा tracking टूल इस्तेमाल करें ताकि हर run के parameters, metrics और artifacts log हों; डेटा को live query के बजाय तारीख वाले snapshot से पिन करें; hyperparameters को git के नीचे config files में रखें; और package versions दर्ज करें। model artifact के साथ वह git SHA चलना चाहिए जिसने उसे बनाया।
इंटरव्यूअर यह क्यों पूछते हैं
reproducibility के सवाल उन लोगों को अलग करते हैं जिन्होंने किसी model को चलाए रखा है, उनसे जिन्होंने सिर्फ बनाया है। इंटरव्यूअर चारों धुरियों के नाम चाहता है, खास तौर पर डेटा का versioning, क्योंकि यही वह है जिसे ज्यादातर लोग भूल जाते हैं और यही चुपचाप दोबारा बनाने की कोशिश तोड़ देता है। model artifact को किसी खास commit से जोड़ना वह ठोस आदत है जो साबित करती है कि आपको यह गुस्से में करना पड़ा है।
अपना जवाब कैसे स्ट्रक्चर करें
- उन चार चीजों के नाम लें जिनका version साथ रखना जरूरी है।
- बताएं कि run स्तर के tracking के लिए आप कौन सा टूल इस्तेमाल करते हैं और क्या log करते हैं।
- समझाएं कि आप सिर्फ code नहीं, डेटा भी कैसे पिन करते हैं।
- environment और artifact पर git SHA का जिक्र करें।
उदाहरण जवाब
जिस नियम पर मैं चलता हूं वह यह है कि model तभी reproducible है जब code, डेटा, config और environment चारों पिन हों। code आसान है, वह git है। config मैं notebook cells के बजाय repo में YAML में रखता हूं, ताकि ठीक ठीक hyperparameters commit history में रहें। environment एक lock file और container image tag है। डेटा वह चीज है जो लोगों को पकड़ती है, और उसने मुझे भी पकड़ा: एक बार मैंने चार महीने पुराने model को दोबारा बनाने की कोशिश की, मेरे पास ठीक वही code और parameters थे, और नतीजा अलग आया, क्योंकि training query जिस table से खींचती थी वह बीच में backfill हो चुका था। अब training तारीख वाले snapshot से पढ़ती है जिसकी row count और checksum दर्ज है, कभी किसी live query से नहीं। run tracking के लिए मैं MLflow इस्तेमाल करता हूं, हर run के parameters, metrics, feature list और model artifact log करता हूं, और artifact अपने metadata में git SHA और डेटा snapshot ID लेकर चलता है। इस तरह production में मौजूद कोई भी model एक खास run तक जाता है और वह run दोबारा चलाया जा सकता है। इसमें करीब एक घंटे का सेटअप है और इसने मेरे हफ्ते बचाए हैं।
जल्दी ही यह इंटरव्यू देने जा रहे हैं? GhostPilot आपकी लाइव कॉल सुनता है, सवाल पूछे जाते ही उसे पकड़ लेता है, और रियल-टाइम में एक स्ट्रक्चर्ड जवाब आपकी स्क्रीन पर डाल देता है। अगले मॉक में इसे आजमाएं, या ले लें एक $29 Session Pass, कोई सब्सक्रिप्शन नहीं, असली इंटरव्यू के लिए।
देखें यह कैसे काम करता हैफॉलो-अप सवाल जिनकी उम्मीद रखें
- जो dataset सचमुच snapshot करने के लिए बहुत बड़ा हो, उसका version आप कैसे रखेंगे?
- नाकाम हुए run के लिए आप क्या log करते हैं?
- पचास tuning runs की तुलना आप उनमें डूबे बिना कैसे करेंगे?
डेटा साइंटिस्ट के और सवाल
आपका इंटरव्यूअर इसका अपना वर्ज़न पूछेगा। फ्री Question Predictor में अपना असली जॉब डिस्क्रिप्शन पेस्ट कीजिए और वो 20 सवाल पाइए जो उस रोल में सबसे ज्यादा पूछे जाने की संभावना है, साथ में यह भी कि हर सवाल असल में क्या टटोल रहा है।
मेरे सवाल प्रेडिक्ट करें