मशीन लर्निंग ऑपरेशंस (MLOps) आज कई डेटा लीडर्स और प्रैक्टिशनर्स के लिए एक केंद्रीय फोकस है, और पिछले दो वर्षों में इसमें रुचि उल्लेखनीय रूप से बढ़ी है। यह तीव्र वृद्धि एक बड़े चुनौती-कारक से प्रेरित है जिसका सामना कई संगठन कर रहे हैं; मशीन लर्निंग और AI में निवेश वादा किया गया रिटर्न ऑन इन्वेस्टमेंट नहीं दे रहा है।

2019 में, Venturebeat ने रिपोर्ट किया कि केवल 13% मशीन लर्निंग मॉडल प्रोडक्शन तक पहुँचते हैं। जबकि KDNuggets के हालिया पोल से 2022 में सुधार का संकेत मिलता है, फिर भी 35% उत्तरदाताओं ने तकनीकी बाधाओं को अपने मॉडलों की तैनाती में रुकावट बताया।
McKinsey की State of AI 2021 रिपोर्ट दिखाती है कि AI अपनाने की दर 2020 के 50% से बढ़कर 56% हो गई है। जैसे-जैसे संगठन अपने मशीन लर्निंग सिस्टम्स और प्रतिभा में निवेश बढ़ा रहे हैं, मॉडलों को कुशलता से तैनात कर उनसे मूल्य निकालने की आवश्यकता पहले से अधिक स्पष्ट है। यही वह स्थान है जहाँ MLOps काम आता है। जो संगठन सफलतापूर्वक MLOps अपनाते हैं, वे अपने निवेश पर बेहतर रिटर्न देख रहे हैं। MLOps अपनाकर, डेटा टीमें मशीन लर्निंग सिस्टम्स के प्रोटोटाइप, विकास, और तैनाती में लगने वाला समय घटा रही हैं।
MLOps का लक्ष्य तकनीक को संगठनात्मक बदलाव के साथ जोड़कर मशीन लर्निंग पर सॉफ्टवेयर इंजीनियरिंग की अवधारणाएँ लागू करना है। मशीन लर्निंग को एक इंजीनियरिंग अनुशासन के रूप में देखते हुए, यह प्रोडक्शन तक एक सरलतर रास्ते और प्रोडक्शन में मॉडलों की अधिक दीर्घायु का वादा करता है।
यह लेख MLOps की परिभाषा, इसकी महत्ता, और पाँच मार्गदर्शक सिद्धांत प्रस्तुत करेगा जो आज एक सफल MLOps प्रैक्टिस को परिभाषित करते हैं।
MLOps क्या है?
MLOps को सबसे अच्छी तरह ऐसे परिभाषित किया जा सकता है: "उपकरणों, प्रथाओं, तकनीकों और संस्कृति का एक सेट जो मशीन लर्निंग सिस्टम्स की विश्वसनीय और स्केलेबल तैनाती सुनिश्चित करता है।" MLOps, सॉफ्टवेयर इंजीनियरिंग की सर्वोत्तम प्रथाओं जैसे ऑटोमेशन और स्वचालित परीक्षण, वर्शन कंट्रोल, एजाइल सिद्धांतों का कार्यान्वयन, और डेटा प्रबंधन को अपनाकर तकनीकी ऋण कम करता है।
तकनीकी ऋण या कोड ऋण स्वयं सॉफ्टवेयर इंजीनियरिंग की एक धारणा है। यह उस "ऋण" का वर्णन करता है जो तीव्र विकास के परिणामस्वरूप जमा होता है, जहाँ ऑटोमेशन, डॉक्यूमेंटेशन और यूनिट टेस्ट जैसी प्रक्रियाएँ बाद के चरण में रिफैक्टर की जाती हैं। संक्षेप में, यह वह ऋण है जिसे डेवलपमेंट टीमें वर्तमान में सर्वोत्तम प्रथाएँ न अपनाकर भविष्य में ढोती हैं।
मशीन लर्निंग सिस्टम्स में तकनीकी ऋण का स्तर उच्च हो सकता है, क्योंकि डेटा वैज्ञानिकों द्वारा बनाए गए मॉडल एक बड़े पहेली के छोटे हिस्से होते हैं—जो इन्फ्रास्ट्रक्चर, मॉडल मॉनिटरिंग, फीचर स्टोरेज और कई अन्य विचारों से मिलकर बनती है।

MLOps को क्या विशिष्ट बनाता है
तकनीकी ऋण को कम करने के लिए लक्षित सॉफ्टवेयर इंजीनियरिंग की सर्वोत्तम प्रथाओं को अक्सर DevOps कहा जाता है। DevOps कोड लिखने, वर्शनिंग और टेस्टिंग जैसी डेवलपमेंट गतिविधियों को रिलीज़, डिप्लॉयमेंट और मॉनिटरिंग जैसे IT ऑपरेशंस के साथ संयोजित करता है।
DevOps के दो मूल सिद्धांत हैं कंटीन्युअस इंटीग्रेशन और कंटीन्युअस डिलीवरी (CI/CD)।
- कंटीन्युअस इंटीग्रेशन (CI): नए कोड परिवर्तन नियमित रूप से बिल्ड, टेस्ट और साझा रिपॉजिटरी में मर्ज किए जाते हैं।
- कंटीन्युअस डिलीवरी (CD): किसी एप्लिकेशन में किए गए किसी भी परिवर्तन का स्वचालित परीक्षण होता है और उन्हें एक रिपॉजिटरी में अपलोड किया जाता है, जहाँ से उन्हें लाइव वातावरण में डिप्लॉय किया जा सकता है।
मशीन लर्निंग सिस्टम्स को प्रोडक्शन में लाना और स्केल करना अतिरिक्त जटिलताएँ लाता है। सॉफ्टवेयर इंजीनियरिंग मुख्यतः स्पष्ट इनपुट्स और आउटपुट्स के साथ सुव्यवस्थित समाधान डिजाइन करना है। दूसरी ओर, मशीन लर्निंग सिस्टम्स वास्तविक दुनिया के डेटा पर निर्भर होते हैं जिन्हें सांख्यिकीय तरीकों से मॉडल किया जाता है। इससे कई और बातों पर विचार करना पड़ता है, जैसे:
- डेटा: मशीन लर्निंग अत्यंत जटिल इनपुट डेटा लेता है। इस डेटा को ऐसे रूपांतरित करना होता है कि मशीन लर्निंग मॉडल अर्थपूर्ण भविष्यवाणियाँ कर सकें।
- मॉडलिंग: मशीन लर्निंग सिस्टम्स विकसित करने के लिए प्रयोगधर्मिता आवश्यक है। कुशलता से प्रयोग करने के लिए, प्रत्येक प्रयोग के डेटा परिवर्तन और पैरामीटर्स को ट्रैक करना अनिवार्य है।
- टेस्टिंग: यूनिट टेस्टिंग से आगे बढ़ते हुए, जहाँ किसी एप्लिकेशन के छोटे, परीक्षण योग्य हिस्सों का स्वतंत्र रूप से परीक्षण होता है, मशीन लर्निंग सिस्टम्स में डेटा और मॉडल प्रदर्शन दोनों के अधिक जटिल परीक्षणों की आवश्यकता होती है। उदाहरण के लिए, यह जाँचना कि नया इनपुट डेटा प्रशिक्षण डेटा जैसी सांख्यिकीय गुण साझा करता है या नहीं।
- मॉडल ड्रिफ्ट: समय के साथ मशीन लर्निंग मॉडलों का प्रदर्शन हमेशा घटता है। इसके प्रमुख कारण दो तरह के होते हैं: कॉन्सेप्ट ड्रिफ्ट जब उस परिणाम के गुण बदलते हैं जिसकी हम भविष्यवाणी करने की कोशिश कर रहे हैं। COVID-19 लॉकडाउन के दौरान इसका एक अच्छा उदाहरण दिखा, जब कई रिटेलर्स ने टॉयलेट रोल जैसी वस्तुओं की मांग में अप्रत्याशित उछाल देखा। मानक डेटा पर प्रशिक्षित मॉडल इससे कैसे निपटेगा? डेटा ड्रिफ्ट दूसरी ओर तब होती है जब स्वतंत्र चर के गुण विभिन्न कारकों के कारण बदलते हैं, जिनमें मौसमी उतार-चढ़ाव, उपभोक्ता व्यवहार में बदलाव, या नए उत्पादों का लॉन्च शामिल है।
- कंटीन्युअस ट्रेनिंग: मॉडल ड्रिफ्ट से निपटने के लिए, जैसे ही नया डेटा उपलब्ध हो, मशीन लर्निंग मॉडलों को पुन: प्रशिक्षित करना पड़ता है।
- पाइपलाइन प्रबंधन: डेटा को मॉडल में देने से पहले विभिन्न रूपांतरण चरणों से गुजरना पड़ता है और प्रशिक्षण से पहले तथा बाद में नियमित रूप से परीक्षण होना चाहिए। पाइपलाइंस इन चरणों को संयोजित करती हैं ताकि उन्हें कुशलता से मॉनिटर और मेंटेन किया जा सके।
सफल MLOps के 5 सिद्धांत
MLOps अपनाना उतना सरल नहीं है जितना कि किसी नए SaaS विक्रेता से जुड़ना या नए क्लाउड कंप्यूटिंग इंस्टेंस चालू करना। इसके लिए टीमों और विभागों के बीच सावधानीपूर्वक योजना और एक सुसंगत दृष्टिकोण की आवश्यकता होती है। यहाँ सफल MLOps इम्प्लीमेंटेशन के पाँच सिद्धांत हैं:
अपनी MLOps परिपक्वता को समझें
Microsoft और Google जैसे अग्रणी क्लाउड प्रदाता MLOps अपनाने को परिपक्वता मॉडल के माध्यम से देखते हैं। ऐसा इसलिए है क्योंकि MLOps के लिए संगठनात्मक परिवर्तन और आधुनिक कार्यपद्धतियों की आवश्यकता होती है। यह केवल समय के साथ होता है जब संगठन की प्रणालियाँ और प्रक्रियाएँ परिपक्व होती हैं।
MLOps को सफलतापूर्वक अपनाने के लिए संगठन की MLOps परिपक्वता में प्रगति का ईमानदार आकलन आवश्यक है। एक विश्वसनीय परिपक्वता स्तर आकलन के बाद, संगठन समझ सकते हैं कि परिपक्वता स्तर बढ़ाने के लिए वे कौन से तरीकों का उपयोग कर सकते हैं। इसमें डिप्लॉयमेंट पर DevOps लागू करने जैसे प्रक्रिया परिवर्तन या टीम में नई भर्तियाँ जोड़ना शामिल हो सकता है।
यह समझना भी आवश्यक है कि परिपक्वता स्तर कैसे संगठनों को MLOps पहलों को प्राथमिकता देने में मदद कर सकते हैं। उदाहरण के लिए, फीचर स्टोर डेटा का एक केंद्रीकृत रिपॉजिटरी होता है जहाँ मशीन लर्निंग के लिए प्रचलित फीचर्स रखे जाते हैं। फीचर स्टोर्स अपेक्षाकृत डेटा-परिपक्व संगठनों के लिए उपयोगी होते हैं, जहाँ कई बिखरी हुई डेटा टीमें सुसंगत फीचर्स का उपयोग करना चाहती हैं और डुप्लिकेट काम कम करना चाहती हैं। यदि किसी संगठन में केवल कुछ डेटा वैज्ञानिक हैं, तो फीचर स्टोर शायद उनकी प्राथमिकता नहीं होना चाहिए।
MLOps के लिए परिपक्वता मॉडल का उपयोग करके, संगठन टीमों, प्रक्रियाओं और अपनी टेक्नोलॉजी स्टैक को साथ-साथ विकसित होने देते हैं। यह सुनिश्चित करता है कि इटरेशन हो सके और टूल्स को लागू करने से पहले परीक्षण किया जा सके।
अपनी प्रक्रियाओं में ऑटोमेशन लागू करें
ऑटोमेशन परिपक्वता मॉडलों की अवधारणा के साथ हाथ से हाथ मिलाकर चलता है। उन्नत और व्यापक ऑटोमेशन किसी संगठन के लिए MLOps परिपक्वता बढ़ाने में सहायक होता है। बिना MLOps वाले वातावरण में, मशीन लर्निंग सिस्टम्स के भीतर कई कार्य मैन्युअल रूप से निष्पादित होते हैं। इन कार्यों में डेटा क्लीनिंग और रूपांतरण, फीचर इंजीनियरिंग, प्रशिक्षण और परीक्षण डेटा का विभाजन, मॉडल प्रशिक्षण कोड लिखना आदि शामिल हो सकते हैं। इन चरणों को मैन्युअल रूप से करने से डेटा वैज्ञानिक त्रुटि की गुंजाइश बढ़ा देते हैं और वह समय खो देते हैं जिसे प्रयोगधर्मिता पर बेहतर खर्च किया जा सकता था।
ऑटोमेशन का एक बढ़िया उदाहरण कंटीन्युअस रिट्रेनिंग है, जहाँ डेटा टीमें डेटा इनजेशन, वैलिडेशन, प्रयोग, फीचर इंजीनियरिंग, मॉडल टेस्टिंग आदि के लिए पाइपलाइंस सेट कर सकती हैं। अक्सर मशीन लर्निंग ऑटोमेशन के शुरुआती चरणों में देखा जाने वाला यह अभ्यास मॉडल ड्रिफ्ट से बचने में मदद करता है।
MLOps में पाइपलाइंस डेटा इंजीनियरिंग या DevOps की पाइपलाइंस से अलग नहीं हैं। मशीन लर्निंग पाइपलाइन, चरणों की एक श्रृंखला है जो किसी मशीन लर्निंग मॉडल में और उससे बाहर डेटा प्रवाह का संयोजन करती है।
पाइपलाइंस की शक्ति को समझाने के लिए, हम एक उदाहरण कल्पना कर सकते हैं जहाँ डेटा वैज्ञानिकों ने कुछ डेटा मैन्युअल रूप से निकाला है, लेकिन वे उनकी वैलिडेशन, डेटा तैयारी, मॉडल प्रशिक्षण और मूल्यांकन प्रक्रियाओं को ऑटोमेट करने में सक्षम रहे। यह पाइपलाइन बाद में तब पुन: उपयोग की जा सकती है जब मॉडल को प्रोडक्शन में नई डेटा पर भविष्यवाणियाँ करने हेतु लगाया जाए।
प्रयोगधर्मिता और ट्रैकिंग को प्राथमिकता दें
प्रयोगधर्मिता मशीन लर्निंग लाइफसाइकल का एक मुख्य हिस्सा है। डेटा वैज्ञानिक डेटासेट्स, फीचर्स, मशीन लर्निंग मॉडलों, उनके हाइपरपैरामीटर्स आदि के साथ प्रयोग करते हैं। प्रयोग के दौरान खींचने के लिए कई "लीवर्स" होते हैं। सही संयोजन खोजने के लिए, प्रयोगों के प्रत्येक इटरेशन को ट्रैक करना आवश्यक है।
परंपरागत नोटबुक-आधारित प्रयोगों में, डेटा वैज्ञानिक मॉडल पैरामीटर्स और विवरणों को मैन्युअल रूप से ट्रैक करते हैं। यह प्रक्रिया असंगतियों और मानवीय त्रुटि की गुंजाइश बढ़ा सकता है। मैन्युअल निष्पादन समय-साध्य भी है और तीव्र प्रयोगधर्मिता में बड़ा अवरोध है।
हालाँकि कोड ट्रैकिंग के लिए git व्यापक रूप से उपयोग होता है, डेटा वैज्ञानिकों द्वारा चलाए गए विभिन्न प्रयोगों का वर्शन कंट्रोल करना आसान नहीं है। यहीं पर डेटा टीमें मॉडल रजिस्ट्रियां इस्तेमाल कर सकती हैं—एक ऐसी जगह जहाँ डेटा वैज्ञानिक मॉडल स्टोर कर सकें, प्रदर्शन और अन्य परिवर्तनों को ट्रैक कर सकें।
प्रयोगों को ट्रैक करना डेटा टीमों को जरूरत पड़ने पर मॉडलों को रोल बैक करने में सक्षम बनाता है—और समग्र मॉडल ऑडिटिंग प्रक्रिया में सुधार करता है। यह डेटा वैज्ञानिकों के लिए भारी मैन्युअल प्रयास को कम करता है, जिससे प्रयोगधर्मिता के लिए अधिक समय बचता है। यह सब वर्शनिंग और ट्रैकिंग के माध्यम से परिणामों की पुनरुत्पादन क्षमता को उल्लेखनीय रूप से बेहतर बनाता है।
CI/CD से आगे बढ़ें
हमने DevOps के संदर्भ में CI/CD देखा है, लेकिन ये उच्च-परिपक्वता MLOps के लिए भी आवश्यक घटक हैं।
- जब MLOps पर CI लागू करते हैं, तो हम कोड के स्वचालित परीक्षण और वैलिडेशन को डेटा और मॉडलों तक विस्तारित करते हैं।
- इसी तरह, CD की अवधारणाएँ पाइपलाइंस और मॉडलों पर लागू होती हैं जब उन्हें पुन: प्रशिक्षित किया जाता है।
हम अन्य "कंटीन्युअस" अवधारणाओं पर भी विचार कर सकते हैं:
- कंटीन्युअस ट्रेनिंग (CT): हमने पहले ही देखा है कि बढ़ता ऑटोमेशन नए डेटा के उपलब्ध होने पर मॉडल को पुन: प्रशिक्षित करने में सक्षम बनाता है।
- कंटीन्युअस मॉनिटरिंग (CM): मॉडल को पुन: प्रशिक्षित करने का एक और कारण प्रदर्शन में गिरावट है। हमें यह भी समझना चाहिए कि क्या मॉडल अब भी व्यावसायिक मेट्रिक्स के अनुरूप मूल्य दे रहे हैं।
स्वचालित परीक्षण के साथ कंटीन्युअस अवधारणाएँ लागू करने से तीव्र प्रयोगधर्मिता संभव होती है और बड़े पैमाने पर त्रुटियों को न्यूनतम किया जा सकता है। इसके अतिरिक्त, इन चारों कंटीन्युअस अवधारणाओं का सफल कार्यान्वयन तैनाती में लगने वाले समय को नाटकीय रूप से कम कर सकता है।
उस उदाहरण पाइपलाइन पर विचार करें जिसे हमने ऑटोमेशन सेक्शन में देखा था। इस पर CI/CD अवधारणाएँ लागू करने से एक कोडबेस बनेगा जो रिपॉजिटरी में संग्रहीत है। CI के अनुरूप, इस रिपॉजिटरी पर स्वचालित यूनिट टेस्ट्स की एक श्रृंखला लागू होगी, जैसे इंजीनियर किए गए फीचर्स का परीक्षण, यह सुनिश्चित करना कि कोई मिसिंग वैल्यू नहीं हैं, और ओवरफिटिंग के लिए परीक्षण। पाइपलाइन के व्यक्तिगत घटकों को तब वैलिडेट और डिप्लॉय किया जा सकता है, यह सुनिश्चित करते हुए कि अनुकूलता और कंपीट की माँगों का परीक्षण और पूर्ति हो। इस स्तर का ऑटोमेशन नए डिप्लॉयमेंट्स को तेज़ बनाता है, जिससे संगठन बाहरी कारकों और परिवर्तनों पर शीघ्र प्रतिक्रिया दे सकें।
संगठनात्मक परिवर्तन अपनाएँ
MLOps परिपक्वता के विकास के साथ-साथ संगठनात्मक परिवर्तन होना आवश्यक है। इसके लिए ऐसी प्रक्रिया-परिवर्तन चाहिए जो टीमों के बीच सहयोग को बढ़ावा दें और साइलो को तोड़ें। कुछ मामलों में, सुसंगत MLOps परिपक्वता को सुविधाजनक बनाने के लिए संपूर्ण टीम संरचना का पुनर्गठन आवश्यक है। Microsoft का परिपक्वता मॉडल बताता है कि परिपक्वता बढ़ने के साथ लोगों के व्यवहार में कैसे बदलाव आना चाहिए।
कम-परिपक्वता वाले वातावरण में आम तौर पर डेटा वैज्ञानिक, इंजीनियर और सॉफ्टवेयर इंजीनियर साइलो में काम करते हैं। जैसे-जैसे परिपक्वता बढ़ती है, हर सदस्य को सहयोग करना आवश्यक है। डेटा वैज्ञानिकों और इंजीनियरों को मिलकर प्रयोगधर्मी कोड को दोहराए जा सकने वाले पाइपलाइंस में बदलना चाहिए, जबकि सॉफ्टवेयर और डेटा इंजीनियरों को मिलकर मॉडलों को स्वचालित रूप से एप्लिकेशन कोड में एकीकृत करना चाहिए।
बढ़ा हुआ सहयोग पूरे डिप्लॉयमेंट प्रक्रिया को किसी एक व्यक्ति पर कम निर्भर बनाता है। यह सुनिश्चित करता है कि महंगे मैन्युअल प्रयासों को कम करने के लिए टीमवर्क लागू हो। ये अलग-अलग विशेषज्ञताएँ मिलकर उस स्तर का ऑटोमेशन विकसित करती हैं जिसकी उच्च-परिपक्वता MLOps को आवश्यकता होती है। बढ़ा हुआ सहयोग और ऑटोमेशन तकनीकी ऋण को कम करने में आवश्यक हैं।
MLOps का उभार अभी शुरुआती चरण में है
MLOps का जन्म ML मॉडलों को तेज़ी और कुशलता से तैनात करने की जरूरत से हुआ। अब जब कंपनियाँ मशीन लर्निंग में बड़े पैमाने पर निवेश कर रही हैं, तो अधिक से अधिक मॉडल विकसित हो रहे हैं, जिससे MLOps की माँग बढ़ रही है। यद्यपि MLOps अभी अपने आरंभिक चरण में है, यह कहना सुरक्षित है कि संगठन उन सिद्धांतों के सेट के इर्द-गिर्द संगठित होना चाहते हैं जो मशीन लर्निंग के ROI को अनलॉक कर सकें।
यदि आप MLOps के बारे में अधिक जानने में रुचि रखते हैं, तो आप निम्नलिखित संसाधन भी देख सकते हैं:
- नोआ गिफ्ट द्वारा MLOps के लिए एक व्यवहारिक मार्गदर्शिका
- एलेस्या विस्नजिक के साथ MLOps के जरिए मशीन लर्निंग का ऑपरेशनलाइज़ेशन
- डैन बेकर के साथ भविष्यवाणियों से निर्णयों तक
- MLOps सर्टिफिकेशंस के लिए हमारा गाइड