MLOps, या मशीन लर्निंग ऑपरेशंस, मशीन लर्निंग वर्कफ़्लो का एक अनिवार्य हिस्सा है और स्वयं में एक क्षेत्र के रूप में स्थापित हो रहा है। यह मशीन लर्निंग को सॉफ्टवेयर इंजीनियरिंग की सर्वोत्तम प्रथाओं के साथ जोड़ता है ताकि मॉडल प्रयोग से लेकर प्रोडक्शन तक पाइपलाइन में आगे बढ़ सकें, साथ ही डेटा टीमों में तकनीकी देनदारी कम हो।
बड़े पैमाने पर मशीन लर्निंग में सफल होने के लिए, आपकी संस्था के MLOps परिपक्वता स्तर पर विचार करना आवश्यक है। अक्सर, मॉडल को तैनात करने में बुनियादी ढाँचे, संगठनात्मक संस्कृति, या मॉडल के ड्रिफ्ट होने पर उसे फिर से प्रशिक्षित न कर पाना जैसी बाधाएँ होती हैं। इससे मशीन लर्निंग से अपेक्षित मूल्य में कमी आ सकती है (या बदतर यह कि आपके मॉडलों के साथ इंटरैक्ट करने वाले हितधारकों को नुकसान पहुँचे)। इससे डेटा टीम की मशीन लर्निंग के माध्यम से मूल्य देने की क्षमता पर अविश्वास भी पैदा हो सकता है। मशीन लर्निंग और AI की पूरी क्षमता का लाभ उठाने के लिए MLOps के प्रति एक सुविचारित दृष्टिकोण जरूरी है।
MLOps डेटा वैज्ञानिकों को उस पर ध्यान केंद्रित करने में भी सक्षम बनाता है जो वास्तव में महत्वपूर्ण है: डेटा एकत्र करना और साफ़ करना, मॉडल विकसित करना, और सही तकनीकों का उपयोग करना। इसका कारण यह है कि MLOps मशीन लर्निंग जीवनचक्र के हर चरण में स्वचालन को काफी बढ़ा देता है।
यह लेख मानकर चलता है कि आपको MLOps का कार्यसाधक ज्ञान है और आप इसकी महत्ता समझते हैं; MLOps के बारे में अधिक जानकारी के लिए हमारे लेख Getting Started with MLOps और MLOps Best Practices देखें।
परिपक्वता स्तर क्यों रखें?
MLOps केवल टूल अपनाने या काम करने के तरीके बदलने के बारे में नहीं है। कार्यान्वयन के लिए टूल और तकनीक के समग्र उपयोग की आवश्यकता होती है ताकि तकनीकी टीमों के भीतर साइलो टूटें और स्वचालन बढ़े। इसका अर्थ संगठन का पुनर्गठन करना या लोगों की भूमिकाएँ बदलना भी हो सकता है, लेकिन हर कंपनी का समाधान अलग और विशिष्ट होगा।
परिपक्वता के नजरिये से, या इस माप से कि आपकी कंपनी MLOps कार्यान्वयन प्रक्रिया में कितनी आगे है, MLOps पर विचार करना यह तय करने में मदद करता है कि कोई संस्था कहाँ खड़ी है और परिपक्वता बढ़ाने के लिए वह क्या कर सकती है, साथ ही यह वृद्धि क्या प्रदान करेगी। इसका मतलब यह भी है कि MLOps परिपक्वता संगठन के साथ स्केल कर सकती है। कम मॉडलों वाली छोटी कंपनियों को बड़े, जटिल संगठनों के समान परिपक्वता स्तर पर होने की आवश्यकता नहीं है। हालाँकि, छोटे संगठन भी, जिनका मुख्य मूल्य प्रस्ताव मशीन लर्निंग पर निर्भर है, उन्हें अपेक्षाकृत परिपक्व MLOps प्रैक्टिस की आवश्यकता होगी।
यह ध्यान देने योग्य है कि परिपक्वता मॉडल में ऊपर बढ़ना रैखिक नहीं है। आपकी संस्था में MLOps प्रैक्टिस के कुछ तत्वों में उच्च परिपक्वता हो सकती है, जबकि अन्य क्षेत्रों में कम। नीचे दिए गए खंड में, हम Microsoft के MLOps परिपक्वता मॉडल की रूपरेखा प्रस्तुत करेंगे, जो बताता है कि किसी संस्था में MLOps कैसे विकसित होता है।
Microsoft का MLOps परिपक्वता मॉडल
Microsoft का MLOps परिपक्वता मॉडल, MLOps परिपक्वता का आकलन करने के लिए तीन व्यापक आयामों को परिभाषित करता है:
- लोग: डेटा टीम के भीतर विभिन्न भूमिकाएँ, और वे एक-दूसरे के साथ कैसे इंटरैक्ट करती हैं
- मशीन लर्निंग जीवनचक्र: डेटा संग्रह से लेकर मॉडल निर्माण और रिलीज़ तक, मशीन लर्निंग जीवनचक्र का प्रबंधन कैसे होता है।
- एप्लिकेशन: मशीन लर्निंग मॉडलों का परीक्षण, कार्यान्वयन, परिनियोजन और पुनःप्रशिक्षण कैसे किया जाता है।
साथ ही, Microsoft का MLOps परिपक्वता मॉडल MLOps प्रैक्टिस के लिए पाँच परिपक्वता चरणों को परिभाषित करता है, इस प्रकार:
- कोई MLOps नहीं: बिखरी हुई, ब्लैक-बॉक्स सिस्टम, साइलो में बंटी डेटा टीमें, और मॉडलों का मैन्युअल प्रशिक्षण, परिनियोजन और परीक्षण।
- DevOps है पर MLOps नहीं: डेटा टीम मॉडल प्रशिक्षित करती है, जबकि एक अलग टीम उन्हें परिनियोजित करती है। मॉडल प्रदर्शन पर फीडबैक लूप अस्पष्ट है और पुनरुत्पादन सीमित है।
- स्वचालित प्रशिक्षण: मॉडल पुनरुत्पादक हैं और रिलीज़ कम मैन्युअल हैं। प्रशिक्षण स्वचालित है और पाइपलाइन व्यापक रूप से उपयोग होती हैं।
- स्वचालित परिनियोजन: परिनियोजन स्वचालित है और उसे मूल डेटा तक ट्रेस किया जा सकता है। परिनियोजन के बाद मॉडलों का A/B परीक्षण हो सकता है और परीक्षण स्वचालित हैं।
- पूर्ण MLOps: डेटा इनजेशन से लेकर मॉडल परिनियोजन और परीक्षण तक सिस्टम पूरी तरह स्वचालित है, और मॉडल प्रदर्शन पर निगरानीयुक्त, केंद्रीकृत एनालिटिक्स उपलब्ध हैं। ये सिस्टम अक्सर विशेष रूप से बनाए जाते हैं।
नीचे दिया गया खंड प्रत्येक परिपक्वता स्तर को कवर करेगा, साथ ही मुख्य बिंदुओं की एक सारांश तालिका होगी।
कोई MLOps नहीं
इस चरण में स्वचालन बहुत कम है और डेटा टीम व्यापक संगठन से और अपने भीतर भी साइलो में बँटी हुई है। टूल्स का अपनाव कम है और डेटा इंजीनियरिंग जैसी कुछ भूमिकाएँ मौजूद नहीं भी हो सकती हैं या डेटा वैज्ञानिक ही उन्हें निभाते हैं। इस परिपक्वता स्तर पर, एक भी मॉडल को परिनियोजित करना कठिन और समय लेने वाला है, और मॉडलों का पुनःप्रशिक्षण करने के लिए पूरी तरह से विश्लेषण और प्रशिक्षण जॉब्स को फिर से चलाना पड़ता है। परिनियोजन के बाद मॉडल का ट्रैकिंग नहीं होता, इसलिए उसके प्रभाव का अध्ययन करना संभव नहीं हो सकता।
|
लोग
|
डेटा वैज्ञानिक
|
विस्तृत टीम से संचार में नहीं, स्वतंत्र रूप से काम करते हैं।
|
|
डेटा इंजीनियर
|
मौजूद नहीं भी हो सकते हैं।
|
|
सॉफ्टवेयर इंजीनियर
|
डेटा वैज्ञानिकों से मॉडल प्राप्त करते हैं और डेटा टीम से साइलो में हैं।
|
|
ML जीवनचक्र
|
डेटा तैयारी
|
हालाँकि डेटाबेस हो सकते हैं, मॉडल प्रशिक्षण के लिए डेटा मैन्युअल रूप से एकत्र किया जाता है।
|
|
मॉडल प्रशिक्षण
|
प्रयोगों का ट्रैक नहीं रखा जाता, और कोई डेटा तथा मशीन लर्निंग पाइपलाइन स्थापित नहीं हैं।
|
|
मॉडल परिनियोजन
|
मॉडल आमतौर पर इनपुट और आउटपुट के साथ मैन्युअल रूप से डिलीवर किए जाते हैं। कोई संस्करण नियंत्रण नहीं है और स्कोरिंग स्क्रिप्ट मैन्युअल रूप से बनाई जाती है, परिनियोजन आमतौर पर डेटा वैज्ञानिकों द्वारा संभाला जाता है।
|
|
एप्लिकेशन
|
एकीकरण
|
हर बार जब कोई मॉडल परिनियोजन के लिए तैयार होता है तो पूरी तरह मैन्युअल परीक्षण और रिलीज़, और डेटा वैज्ञानिकों पर अत्यधिक निर्भरता।
|
DevOps है पर MLOps नहीं
DevOps सर्वोत्तम प्रथाओं के एकीकरण के साथ, डेटा टीम अभी भी साइलो में है, हालाँकि समर्पित डेटा इंजीनियर हो सकते हैं। क्लाउड कंप्यूटिंग तकनीकों को अपनाया जा सकता है, लेकिन उनका पूर्ण क्षमता तक उपयोग नहीं हो रहा। इस चरण में, डेटाबेस से डेटा एकत्र करना और उसे मशीन लर्निंग के लिए तैयार करना, पुन: प्रयोज्य पाइपलाइन में स्वचालित होगा। मॉडलों के परिनियोजन पर एकीकरण परीक्षण भी हो सकते हैं। डेटा वैज्ञानिक कई भूमिकाएँ निभाएँगे और परिनियोजन के बाद मॉडलों के परीक्षण में गहराई से शामिल रहेंगे।
|
लोग
|
डेटा वैज्ञानिक
|
विस्तृत टीम से संचार में नहीं, स्वतंत्र रूप से काम करते हैं।
|
|
डेटा इंजीनियर
|
विस्तृत टीम से संचार में नहीं, स्वतंत्र रूप से काम करते हैं।
|
|
सॉफ्टवेयर इंजीनियर
|
डेटा वैज्ञानिकों से मॉडल प्राप्त करते हैं और डेटा टीम से साइलो में हैं।
|
|
ML जीवनचक्र
|
डेटा तैयारी
|
स्वचालित डेटा पाइपलाइन उपलब्ध हैं और प्रबंधित क्लाउड संसाधनों पर चल सकती हैं।
|
|
मॉडल प्रशिक्षण
|
प्रयोग पुनरुत्पादक नहीं हैं और सभी का व्यवस्थित ट्रैक नहीं रखा जाता।
|
|
मॉडल परिनियोजन
|
मॉडल आमतौर पर इनपुट और आउटपुट के साथ मैन्युअल रूप से डिलीवर किए जाते हैं। संस्करण नियंत्रण है और स्कोरिंग स्क्रिप्ट अभी भी मैन्युअल रूप से बनाई जाती है, परिनियोजन आमतौर पर डेटा वैज्ञानिकों या इंजीनियरों द्वारा संभाला जाता है।
|
|
एप्लिकेशन
|
एकीकरण
|
रिलीज़ स्वचालित हैं और बुनियादी एकीकरण परीक्षण मौजूद हैं, लेकिन डेटा वैज्ञानिकों की विशेषज्ञता पर भारी निर्भरता रहती है।
|
स्वचालित प्रशिक्षण
इस चरण में, डेटा टीम के भीतर सहयोग काफी बढ़ जाता है। डेटा वैज्ञानिक अब इंजीनियरों के साथ मिलकर अपने मॉडल प्रशिक्षण कोड को पुनरावृत्ति योग्य स्क्रिप्ट में बदलेंगे जो स्वचालित डेटा पाइपलाइन का उपयोग करती हैं। प्रयोगों का ट्रैक रखा जाएगा और संस्करण नियंत्रण कहीं अधिक व्यापक होगा। परिनियोजन अधिक स्वचालित है, जबकि मॉडल फ़ाइलें अब भी सॉफ्टवेयर इंजीनियरों को सौंपी जाती हैं।
|
लोग
|
डेटा वैज्ञानिक
|
डेटा वैज्ञानिक, डेटा इंजीनियरों के साथ मिलकर प्रयोग कोड को पुनरावृत्ति योग्य स्क्रिप्ट में बदलते हैं।
|
|
डेटा इंजीनियर
|
|
सॉफ्टवेयर इंजीनियर
|
डेटा वैज्ञानिकों से मॉडल प्राप्त करते हैं और डेटा टीम से साइलो में हैं।
|
|
ML जीवनचक्र
|
डेटा तैयारी
|
स्वचालित डेटा पाइपलाइन जो प्रबंधित क्लाउड संसाधनों पर चलती हैं।
|
|
मॉडल प्रशिक्षण
|
प्रयोगों का ट्रैक रखा जाता है और प्रशिक्षण कोड व मॉडल संस्करण नियंत्रण में हैं।
|
|
मॉडल परिनियोजन
|
मॉडल अभी भी मैन्युअल रूप से परिनियोजित किए जाते हैं, हालाँकि स्कोरिंग स्क्रिप्ट संस्करण नियंत्रण में है और अब रिलीज़ सॉफ्टवेयर इंजीनियरिंग टीमों द्वारा प्रबंधित होती है।
|
|
एप्लिकेशन
|
एकीकरण
|
रिलीज़ स्वचालित हैं और बुनियादी एकीकरण परीक्षण मौजूद हैं, लेकिन डेटा वैज्ञानिकों की विशेषज्ञता पर भारी निर्भरता रहती है।
|
स्वचालित मॉडल परिनियोजन
सॉफ्टवेयर इंजीनियर अब डेटा इंजीनियरों के साथ बहुत निकटता से सहयोग कर रहे हैं ताकि मॉडल, साथ ही उनके प्रशिक्षण और डेटा संग्रह पाइपलाइन, परिनियोजित किए जा सकें। प्रयोग पूरी तरह ट्रैक किए जाते हैं और प्रत्येक मॉडल रिलीज़ तथा एप्लिकेशन के लिए स्वचालित यूनिट और इंटीग्रेशन टेस्ट मौजूद हैं। कुछ क्षेत्रों में CI/CD भी हो सकता है।
|
लोग
|
डेटा वैज्ञानिक
|
डेटा वैज्ञानिक, डेटा इंजीनियरों के साथ मिलकर प्रयोग कोड को पुनरावृत्ति योग्य स्क्रिप्ट में बदलते हैं।
|
|
डेटा इंजीनियर
|
|
सॉफ्टवेयर इंजीनियर
|
एप्लिकेशन में मॉडल एकीकरण को स्वचालित करने के लिए डेटा इंजीनियरों के साथ काम कर रहे हैं।
|
|
ML जीवनचक्र
|
डेटा तैयारी
|
स्वचालित डेटा पाइपलाइन जो प्रबंधित क्लाउड संसाधनों पर चलती हैं।
|
|
मॉडल प्रशिक्षण
|
प्रयोगों का ट्रैक रखा जाता है और प्रशिक्षण कोड व मॉडल संस्करण नियंत्रण में हैं।
|
|
मॉडल परिनियोजन
|
मॉडल स्वचालित रूप से परिनियोजित किए जाते हैं, स्कोरिंग स्क्रिप्ट संस्करण नियंत्रण में है और रिलीज़ अब एक सतत डिलीवरी (CI/CD) पाइपलाइन द्वारा प्रबंधित होती है
|
|
एप्लिकेशन
|
एकीकरण
|
एप्लिकेशन कोड में एकीकरण डेटा वैज्ञानिकों पर कम निर्भर है, और प्रत्येक मॉडल रिलीज़ के लिए यूनिट तथा इंटीग्रेशन टेस्ट मौजूद हैं
|
पूर्ण MLOps, स्वचालित पुनःप्रशिक्षण
अंतिम परिपक्वता चरण में, डेटा इंजीनियर, डेटा वैज्ञानिक, और सॉफ्टवेयर इंजीनियर विकास और परिनियोजन प्रक्रिया में यथासंभव अधिक स्वचालन सुनिश्चित करने के लिए साथ मिलकर काम करते हैं। साथ ही, प्रयोग और मॉडल प्रशिक्षण व पुनःप्रशिक्षण प्रोडक्शन मेट्रिक्स के आधार पर स्वचालित होते हैं, मॉडल स्वचालित रूप से रिलीज़ किए जाते हैं और एक CI/CD पाइपलाइन द्वारा प्रबंधित होते हैं, और मॉडलों का परीक्षण एप्लिकेशन कोड में किया जाता है।
|
लोग
|
डेटा वैज्ञानिक
|
डेटा वैज्ञानिक, डेटा इंजीनियरों के साथ मिलकर प्रयोगों को पुनरावृत्ति योग्य स्क्रिप्ट में बदलते हैं और प्रक्रियाओं को स्वचालित करने के लिए सॉफ्टवेयर इंजीनियरों के साथ काम करते हैं।
डेटा इंजीनियर और सॉफ्टवेयर इंजीनियर मिलकर किसी एप्लिकेशन में मॉडल एकीकरण को स्वचालित करते हैं और परिनियोजन के बाद प्रदर्शन मेट्रिक्स एकत्र करते हैं।
|
|
डेटा इंजीनियर
|
|
सॉफ्टवेयर इंजीनियर
|
|
ML जीवनचक्र
|
डेटा तैयारी
|
स्वचालित डेटा पाइपलाइन जो प्रबंधित क्लाउड संसाधनों पर चलती हैं।
|
|
मॉडल प्रशिक्षण
|
प्रयोगों का ट्रैक रखा जाता है और प्रशिक्षण कोड व मॉडल संस्करण नियंत्रण में हैं, और परिनियोजन के बाद प्रदर्शन मेट्रिक्स के आधार पर मॉडलों को स्वचालित रूप से पुनःप्रशिक्षित किया जाता है।
|
|
मॉडल परिनियोजन
|
मॉडल स्वचालित रूप से परिनियोजित किए जाते हैं, स्कोरिंग स्क्रिप्ट संस्करण नियंत्रण में है और रिलीज़ अब एक सतत डिलीवरी (CI/CD) पाइपलाइन द्वारा प्रबंधित होती है
|
|
एप्लिकेशन
|
एकीकरण
|
एप्लिकेशन कोड में एकीकरण डेटा वैज्ञानिकों पर कम निर्भर है, और प्रत्येक मॉडल रिलीज़ के लिए यूनिट तथा इंटीग्रेशन टेस्ट मौजूद हैं
|
लोकप्रिय MLOps मॉडलों के बीच अंतर
इस MLOps परिपक्वता मॉडल और Google के मॉडल के बीच एक उल्लेखनीय अंतर CI/CD अवधारणाओं के कार्यान्वयन का है। Google सुझाव देता है कि ये आमतौर पर अंतिम परिपक्वता स्तर पर होते हैं, जबकि Microsoft के अनुसार पुनःप्रशिक्षण अंतिम चरण है।
वास्तव में, पुनःप्रशिक्षण MLOps अपनाने के प्रमुख प्रेरकों में से एक है और अंतिम चरण से पहले भी एकीकृत किया जा सकता है। हालाँकि, मॉडल पुनःप्रशिक्षण के लिए पूर्वापेक्षाएँ होती हैं, जैसे मजबूत स्वचालन और बुनियादी ढाँचा, साथ ही उच्च गुणवत्ता वाली डेटा और मॉडल प्रशिक्षण पाइपलाइन। CI/CD अवधारणाएँ MLOps परिपक्वता के अंतिम चरणों तक निरंतर सुधरती रहेंगी।
Google और Microsoft जैसी अत्यधिक परिपक्व संस्थाओं के पास आमतौर पर विशेष रूप से बना सॉफ्टवेयर होता है जो उनके अपने क्लाउड कंप्यूटिंग समाधानों पर चलता है और विशिष्ट टूल्स का उनकी सर्वोच्च क्षमता तक उपयोग करता है। सॉफ्टवेयर इंजीनियर अक्सर कहते हैं कि इन कंपनियों की तकनीक ‘बस काम करती है’, जिसमें बिना रुकावट के मॉडल परिनियोजन और डेटा तक कुशल पहुँच होती है। यह इसलिए आवश्यक है क्योंकि इन कंपनियों के पास उनके व्यापक उत्पाद-परास के लिए प्रोडक्शन में सैकड़ों मॉडल होते हैं।
अपनी MLOps परिपक्वता कैसे बढ़ाएँ
MLOps अभी भी डेटा साइंस के सबसे महत्वपूर्ण क्षेत्रों में से एक है, क्योंकि कई संगठन मॉडलों को प्रोडक्शन में ले जाने में संघर्ष करते हैं। MLOps परिपक्वता मॉडल यह समझने के लिए एक उत्कृष्ट रूपरेखा प्रदान करते हैं कि डेटा टीमें वर्तमान में अपनी मशीन लर्निंग क्षमताओं में कहाँ खड़ी हैं और आगे कैसे विकसित हो सकती हैं।
MLOps के बारे में अधिक जानने के लिए, ये संसाधन देखें:
MLOps, या मशीन लर्निंग ऑपरेशंस, मशीन लर्निंग वर्कफ़्लो का एक अनिवार्य हिस्सा है और स्वयं में एक क्षेत्र के रूप में स्थापित हो रहा है। यह मशीन लर्निंग को सॉफ्टवेयर इंजीनियरिंग की सर्वोत्तम प्रथाओं के साथ जोड़ता है ताकि मॉडल प्रयोग से लेकर प्रोडक्शन तक पाइपलाइन में आगे बढ़ सकें, साथ ही डेटा टीमों में तकनीकी देनदारी कम हो।
बड़े पैमाने पर मशीन लर्निंग में सफल होने के लिए, आपकी संस्था के MLOps परिपक्वता स्तर पर विचार करना आवश्यक है। अक्सर, मॉडल को तैनात करने में बुनियादी ढाँचे, संगठनात्मक संस्कृति, या मॉडल के ड्रिफ्ट होने पर उसे फिर से प्रशिक्षित न कर पाना जैसी बाधाएँ होती हैं। इससे मशीन लर्निंग से अपेक्षित मूल्य में कमी आ सकती है (या बदतर यह कि आपके मॉडलों के साथ इंटरैक्ट करने वाले हितधारकों को नुकसान पहुँचे)। इससे डेटा टीम की मशीन लर्निंग के माध्यम से मूल्य देने की क्षमता पर अविश्वास भी पैदा हो सकता है। मशीन लर्निंग और AI की पूरी क्षमता का लाभ उठाने के लिए MLOps के प्रति एक सुविचारित दृष्टिकोण जरूरी है।
MLOps डेटा वैज्ञानिकों को उस पर ध्यान केंद्रित करने में भी सक्षम बनाता है जो वास्तव में महत्वपूर्ण है: डेटा एकत्र करना और साफ़ करना, मॉडल विकसित करना, और सही तकनीकों का उपयोग करना। इसका कारण यह है कि MLOps मशीन लर्निंग जीवनचक्र के हर चरण में स्वचालन को काफी बढ़ा देता है।
यह लेख मानकर चलता है कि आपको MLOps का कार्यसाधक ज्ञान है और आप इसकी महत्ता समझते हैं; MLOps के बारे में अधिक जानकारी के लिए हमारे लेख Getting Started with MLOps और MLOps Best Practices देखें।
परिपक्वता स्तर क्यों रखें?
MLOps केवल टूल अपनाने या काम करने के तरीके बदलने के बारे में नहीं है। कार्यान्वयन के लिए टूल और तकनीक के समग्र उपयोग की आवश्यकता होती है ताकि तकनीकी टीमों के भीतर साइलो टूटें और स्वचालन बढ़े। इसका अर्थ संगठन का पुनर्गठन करना या लोगों की भूमिकाएँ बदलना भी हो सकता है, लेकिन हर कंपनी का समाधान अलग और विशिष्ट होगा।
परिपक्वता के नजरिये से, या इस माप से कि आपकी कंपनी MLOps कार्यान्वयन प्रक्रिया में कितनी आगे है, MLOps पर विचार करना यह तय करने में मदद करता है कि कोई संस्था कहाँ खड़ी है और परिपक्वता बढ़ाने के लिए वह क्या कर सकती है, साथ ही यह वृद्धि क्या प्रदान करेगी। इसका मतलब यह भी है कि MLOps परिपक्वता संगठन के साथ स्केल कर सकती है। कम मॉडलों वाली छोटी कंपनियों को बड़े, जटिल संगठनों के समान परिपक्वता स्तर पर होने की आवश्यकता नहीं है। हालाँकि, छोटे संगठन भी, जिनका मुख्य मूल्य प्रस्ताव मशीन लर्निंग पर निर्भर है, उन्हें अपेक्षाकृत परिपक्व MLOps प्रैक्टिस की आवश्यकता होगी।
यह ध्यान देने योग्य है कि परिपक्वता मॉडल में ऊपर बढ़ना रैखिक नहीं है। आपकी संस्था में MLOps प्रैक्टिस के कुछ तत्वों में उच्च परिपक्वता हो सकती है, जबकि अन्य क्षेत्रों में कम। नीचे दिए गए खंड में, हम Microsoft के MLOps परिपक्वता मॉडल की रूपरेखा प्रस्तुत करेंगे, जो बताता है कि किसी संस्था में MLOps कैसे विकसित होता है।
Microsoft का MLOps परिपक्वता मॉडल
Microsoft का MLOps परिपक्वता मॉडल, MLOps परिपक्वता का आकलन करने के लिए तीन व्यापक आयामों को परिभाषित करता है:
साथ ही, Microsoft का MLOps परिपक्वता मॉडल MLOps प्रैक्टिस के लिए पाँच परिपक्वता चरणों को परिभाषित करता है, इस प्रकार:
नीचे दिया गया खंड प्रत्येक परिपक्वता स्तर को कवर करेगा, साथ ही मुख्य बिंदुओं की एक सारांश तालिका होगी।
कोई MLOps नहीं
इस चरण में स्वचालन बहुत कम है और डेटा टीम व्यापक संगठन से और अपने भीतर भी साइलो में बँटी हुई है। टूल्स का अपनाव कम है और डेटा इंजीनियरिंग जैसी कुछ भूमिकाएँ मौजूद नहीं भी हो सकती हैं या डेटा वैज्ञानिक ही उन्हें निभाते हैं। इस परिपक्वता स्तर पर, एक भी मॉडल को परिनियोजित करना कठिन और समय लेने वाला है, और मॉडलों का पुनःप्रशिक्षण करने के लिए पूरी तरह से विश्लेषण और प्रशिक्षण जॉब्स को फिर से चलाना पड़ता है। परिनियोजन के बाद मॉडल का ट्रैकिंग नहीं होता, इसलिए उसके प्रभाव का अध्ययन करना संभव नहीं हो सकता।
लोग
डेटा वैज्ञानिक
विस्तृत टीम से संचार में नहीं, स्वतंत्र रूप से काम करते हैं।
डेटा इंजीनियर
मौजूद नहीं भी हो सकते हैं।
सॉफ्टवेयर इंजीनियर
डेटा वैज्ञानिकों से मॉडल प्राप्त करते हैं और डेटा टीम से साइलो में हैं।
ML जीवनचक्र
डेटा तैयारी
हालाँकि डेटाबेस हो सकते हैं, मॉडल प्रशिक्षण के लिए डेटा मैन्युअल रूप से एकत्र किया जाता है।
मॉडल प्रशिक्षण
प्रयोगों का ट्रैक नहीं रखा जाता, और कोई डेटा तथा मशीन लर्निंग पाइपलाइन स्थापित नहीं हैं।
मॉडल परिनियोजन
मॉडल आमतौर पर इनपुट और आउटपुट के साथ मैन्युअल रूप से डिलीवर किए जाते हैं। कोई संस्करण नियंत्रण नहीं है और स्कोरिंग स्क्रिप्ट मैन्युअल रूप से बनाई जाती है, परिनियोजन आमतौर पर डेटा वैज्ञानिकों द्वारा संभाला जाता है।
एप्लिकेशन
एकीकरण
हर बार जब कोई मॉडल परिनियोजन के लिए तैयार होता है तो पूरी तरह मैन्युअल परीक्षण और रिलीज़, और डेटा वैज्ञानिकों पर अत्यधिक निर्भरता।
DevOps है पर MLOps नहीं
DevOps सर्वोत्तम प्रथाओं के एकीकरण के साथ, डेटा टीम अभी भी साइलो में है, हालाँकि समर्पित डेटा इंजीनियर हो सकते हैं। क्लाउड कंप्यूटिंग तकनीकों को अपनाया जा सकता है, लेकिन उनका पूर्ण क्षमता तक उपयोग नहीं हो रहा। इस चरण में, डेटाबेस से डेटा एकत्र करना और उसे मशीन लर्निंग के लिए तैयार करना, पुन: प्रयोज्य पाइपलाइन में स्वचालित होगा। मॉडलों के परिनियोजन पर एकीकरण परीक्षण भी हो सकते हैं। डेटा वैज्ञानिक कई भूमिकाएँ निभाएँगे और परिनियोजन के बाद मॉडलों के परीक्षण में गहराई से शामिल रहेंगे।
लोग
डेटा वैज्ञानिक
विस्तृत टीम से संचार में नहीं, स्वतंत्र रूप से काम करते हैं।
डेटा इंजीनियर
विस्तृत टीम से संचार में नहीं, स्वतंत्र रूप से काम करते हैं।
सॉफ्टवेयर इंजीनियर
डेटा वैज्ञानिकों से मॉडल प्राप्त करते हैं और डेटा टीम से साइलो में हैं।
ML जीवनचक्र
डेटा तैयारी
स्वचालित डेटा पाइपलाइन उपलब्ध हैं और प्रबंधित क्लाउड संसाधनों पर चल सकती हैं।
मॉडल प्रशिक्षण
प्रयोग पुनरुत्पादक नहीं हैं और सभी का व्यवस्थित ट्रैक नहीं रखा जाता।
मॉडल परिनियोजन
मॉडल आमतौर पर इनपुट और आउटपुट के साथ मैन्युअल रूप से डिलीवर किए जाते हैं। संस्करण नियंत्रण है और स्कोरिंग स्क्रिप्ट अभी भी मैन्युअल रूप से बनाई जाती है, परिनियोजन आमतौर पर डेटा वैज्ञानिकों या इंजीनियरों द्वारा संभाला जाता है।
एप्लिकेशन
एकीकरण
रिलीज़ स्वचालित हैं और बुनियादी एकीकरण परीक्षण मौजूद हैं, लेकिन डेटा वैज्ञानिकों की विशेषज्ञता पर भारी निर्भरता रहती है।
स्वचालित प्रशिक्षण
इस चरण में, डेटा टीम के भीतर सहयोग काफी बढ़ जाता है। डेटा वैज्ञानिक अब इंजीनियरों के साथ मिलकर अपने मॉडल प्रशिक्षण कोड को पुनरावृत्ति योग्य स्क्रिप्ट में बदलेंगे जो स्वचालित डेटा पाइपलाइन का उपयोग करती हैं। प्रयोगों का ट्रैक रखा जाएगा और संस्करण नियंत्रण कहीं अधिक व्यापक होगा। परिनियोजन अधिक स्वचालित है, जबकि मॉडल फ़ाइलें अब भी सॉफ्टवेयर इंजीनियरों को सौंपी जाती हैं।
लोग
डेटा वैज्ञानिक
डेटा वैज्ञानिक, डेटा इंजीनियरों के साथ मिलकर प्रयोग कोड को पुनरावृत्ति योग्य स्क्रिप्ट में बदलते हैं।
डेटा इंजीनियर
सॉफ्टवेयर इंजीनियर
डेटा वैज्ञानिकों से मॉडल प्राप्त करते हैं और डेटा टीम से साइलो में हैं।
ML जीवनचक्र
डेटा तैयारी
स्वचालित डेटा पाइपलाइन जो प्रबंधित क्लाउड संसाधनों पर चलती हैं।
मॉडल प्रशिक्षण
प्रयोगों का ट्रैक रखा जाता है और प्रशिक्षण कोड व मॉडल संस्करण नियंत्रण में हैं।
मॉडल परिनियोजन
मॉडल अभी भी मैन्युअल रूप से परिनियोजित किए जाते हैं, हालाँकि स्कोरिंग स्क्रिप्ट संस्करण नियंत्रण में है और अब रिलीज़ सॉफ्टवेयर इंजीनियरिंग टीमों द्वारा प्रबंधित होती है।
एप्लिकेशन
एकीकरण
रिलीज़ स्वचालित हैं और बुनियादी एकीकरण परीक्षण मौजूद हैं, लेकिन डेटा वैज्ञानिकों की विशेषज्ञता पर भारी निर्भरता रहती है।
स्वचालित मॉडल परिनियोजन
सॉफ्टवेयर इंजीनियर अब डेटा इंजीनियरों के साथ बहुत निकटता से सहयोग कर रहे हैं ताकि मॉडल, साथ ही उनके प्रशिक्षण और डेटा संग्रह पाइपलाइन, परिनियोजित किए जा सकें। प्रयोग पूरी तरह ट्रैक किए जाते हैं और प्रत्येक मॉडल रिलीज़ तथा एप्लिकेशन के लिए स्वचालित यूनिट और इंटीग्रेशन टेस्ट मौजूद हैं। कुछ क्षेत्रों में CI/CD भी हो सकता है।
लोग
डेटा वैज्ञानिक
डेटा वैज्ञानिक, डेटा इंजीनियरों के साथ मिलकर प्रयोग कोड को पुनरावृत्ति योग्य स्क्रिप्ट में बदलते हैं।
डेटा इंजीनियर
सॉफ्टवेयर इंजीनियर
एप्लिकेशन में मॉडल एकीकरण को स्वचालित करने के लिए डेटा इंजीनियरों के साथ काम कर रहे हैं।
ML जीवनचक्र
डेटा तैयारी
स्वचालित डेटा पाइपलाइन जो प्रबंधित क्लाउड संसाधनों पर चलती हैं।
मॉडल प्रशिक्षण
प्रयोगों का ट्रैक रखा जाता है और प्रशिक्षण कोड व मॉडल संस्करण नियंत्रण में हैं।
मॉडल परिनियोजन
मॉडल स्वचालित रूप से परिनियोजित किए जाते हैं, स्कोरिंग स्क्रिप्ट संस्करण नियंत्रण में है और रिलीज़ अब एक सतत डिलीवरी (CI/CD) पाइपलाइन द्वारा प्रबंधित होती है
एप्लिकेशन
एकीकरण
एप्लिकेशन कोड में एकीकरण डेटा वैज्ञानिकों पर कम निर्भर है, और प्रत्येक मॉडल रिलीज़ के लिए यूनिट तथा इंटीग्रेशन टेस्ट मौजूद हैं
पूर्ण MLOps, स्वचालित पुनःप्रशिक्षण
अंतिम परिपक्वता चरण में, डेटा इंजीनियर, डेटा वैज्ञानिक, और सॉफ्टवेयर इंजीनियर विकास और परिनियोजन प्रक्रिया में यथासंभव अधिक स्वचालन सुनिश्चित करने के लिए साथ मिलकर काम करते हैं। साथ ही, प्रयोग और मॉडल प्रशिक्षण व पुनःप्रशिक्षण प्रोडक्शन मेट्रिक्स के आधार पर स्वचालित होते हैं, मॉडल स्वचालित रूप से रिलीज़ किए जाते हैं और एक CI/CD पाइपलाइन द्वारा प्रबंधित होते हैं, और मॉडलों का परीक्षण एप्लिकेशन कोड में किया जाता है।
लोग
डेटा वैज्ञानिक
डेटा वैज्ञानिक, डेटा इंजीनियरों के साथ मिलकर प्रयोगों को पुनरावृत्ति योग्य स्क्रिप्ट में बदलते हैं और प्रक्रियाओं को स्वचालित करने के लिए सॉफ्टवेयर इंजीनियरों के साथ काम करते हैं।
डेटा इंजीनियर और सॉफ्टवेयर इंजीनियर मिलकर किसी एप्लिकेशन में मॉडल एकीकरण को स्वचालित करते हैं और परिनियोजन के बाद प्रदर्शन मेट्रिक्स एकत्र करते हैं।
डेटा इंजीनियर
सॉफ्टवेयर इंजीनियर
ML जीवनचक्र
डेटा तैयारी
स्वचालित डेटा पाइपलाइन जो प्रबंधित क्लाउड संसाधनों पर चलती हैं।
मॉडल प्रशिक्षण
प्रयोगों का ट्रैक रखा जाता है और प्रशिक्षण कोड व मॉडल संस्करण नियंत्रण में हैं, और परिनियोजन के बाद प्रदर्शन मेट्रिक्स के आधार पर मॉडलों को स्वचालित रूप से पुनःप्रशिक्षित किया जाता है।
मॉडल परिनियोजन
मॉडल स्वचालित रूप से परिनियोजित किए जाते हैं, स्कोरिंग स्क्रिप्ट संस्करण नियंत्रण में है और रिलीज़ अब एक सतत डिलीवरी (CI/CD) पाइपलाइन द्वारा प्रबंधित होती है
एप्लिकेशन
एकीकरण
एप्लिकेशन कोड में एकीकरण डेटा वैज्ञानिकों पर कम निर्भर है, और प्रत्येक मॉडल रिलीज़ के लिए यूनिट तथा इंटीग्रेशन टेस्ट मौजूद हैं
लोकप्रिय MLOps मॉडलों के बीच अंतर
इस MLOps परिपक्वता मॉडल और Google के मॉडल के बीच एक उल्लेखनीय अंतर CI/CD अवधारणाओं के कार्यान्वयन का है। Google सुझाव देता है कि ये आमतौर पर अंतिम परिपक्वता स्तर पर होते हैं, जबकि Microsoft के अनुसार पुनःप्रशिक्षण अंतिम चरण है।
वास्तव में, पुनःप्रशिक्षण MLOps अपनाने के प्रमुख प्रेरकों में से एक है और अंतिम चरण से पहले भी एकीकृत किया जा सकता है। हालाँकि, मॉडल पुनःप्रशिक्षण के लिए पूर्वापेक्षाएँ होती हैं, जैसे मजबूत स्वचालन और बुनियादी ढाँचा, साथ ही उच्च गुणवत्ता वाली डेटा और मॉडल प्रशिक्षण पाइपलाइन। CI/CD अवधारणाएँ MLOps परिपक्वता के अंतिम चरणों तक निरंतर सुधरती रहेंगी।
Google और Microsoft जैसी अत्यधिक परिपक्व संस्थाओं के पास आमतौर पर विशेष रूप से बना सॉफ्टवेयर होता है जो उनके अपने क्लाउड कंप्यूटिंग समाधानों पर चलता है और विशिष्ट टूल्स का उनकी सर्वोच्च क्षमता तक उपयोग करता है। सॉफ्टवेयर इंजीनियर अक्सर कहते हैं कि इन कंपनियों की तकनीक ‘बस काम करती है’, जिसमें बिना रुकावट के मॉडल परिनियोजन और डेटा तक कुशल पहुँच होती है। यह इसलिए आवश्यक है क्योंकि इन कंपनियों के पास उनके व्यापक उत्पाद-परास के लिए प्रोडक्शन में सैकड़ों मॉडल होते हैं।
अपनी MLOps परिपक्वता कैसे बढ़ाएँ
MLOps अभी भी डेटा साइंस के सबसे महत्वपूर्ण क्षेत्रों में से एक है, क्योंकि कई संगठन मॉडलों को प्रोडक्शन में ले जाने में संघर्ष करते हैं। MLOps परिपक्वता मॉडल यह समझने के लिए एक उत्कृष्ट रूपरेखा प्रदान करते हैं कि डेटा टीमें वर्तमान में अपनी मशीन लर्निंग क्षमताओं में कहाँ खड़ी हैं और आगे कैसे विकसित हो सकती हैं।
MLOps के बारे में अधिक जानने के लिए, ये संसाधन देखें: