लोकल या क्लाउड: वर्कलोड को इसके लायक बनना होगा

मशीन लर्निंग अक्सर काफी उलझी हुई होती है।

आप अपनी मशीन पर एक जॉब चलाते हैं और वह फेल हो जाती है। आप कोड चेक करते हैं। आप डेटा चेक करते हैं। आप अपनी प्रीप्रोसेसिंग में एक साधारण एरर को डीबग करने में घंटों बिता देते हैं।

यह काम का वह हिस्सा है जो बिल्कुल भी ग्लैमरस नहीं है। यह वह चरण है जहाँ आपको यह भी नहीं पता होता कि आपका विचार काम करेगा भी या नहीं।

बहुत से लोग लोकल हार्डवेयर बनाम क्लाउड कंप्यूट के बारे में बहस करते हैं। वे स्प्रेडशीट देखते हैं और लागत की तुलना करते हैं। वे एक वर्कस्टेशन की कीमत की तुलना क्लाउड में GPU की प्रति घंटे की दर से करते हैं।

इसे देखने का यह गलत तरीका है।

असली बहस अनिश्चितता के बारे में है।

शुरुआती ML काम अनिश्चितताओं से भरा होता है। आप इनसे निपटते हैं:

  • टूटी हुई डिपेंडेंसीज़ (Broken dependencies)
  • गलत टेंसर शेप्स (Wrong tensor shapes)
  • डेटा रीशेपिंग की ज़रूरतें (Data reshaping needs)
  • एनवायरनमेंट एरर्स (Environment errors)

यदि आप इस चरण के दौरान क्लाउड का उपयोग करते हैं, तो आप अपनी उलझन के लिए भुगतान करते हैं। हर गलती की एक कीमत होती है। एरर मैसेज को डीबग करने में बिताया गया हर घंटा वह घंटा है जिसके लिए आप भुगतान करते हैं। क्लाउड आपकी उलझन को एक तेज़ इंजन दे देता है।

लोकल हार्डवेयर एक अलग उद्देश्य पूरा करता है। यह एक ऐसी जगह है जहाँ अनिश्चितता सस्ती होती है। एक वर्कस्टेशन आपको बिना किसी बढ़ते हुए मीटर के छोटे मॉडल टेस्ट करने और धारणाओं को सत्यापित करने की अनुमति देता है। यह आपको निजी तौर पर और मुफ्त में विफल होने की सुविधा देता है।

क्लाउड तब उपयोगी होता है जब वर्कलोड परिपक्व हो जाता है।

क्लाउड का उपयोग तब करें जब:

  • आपका कंटेनर स्थिर (stable) हो
  • आपका डेटासेट तैयार हो
  • आपका मेमोरी प्रोफाइल अनुमानित (predictable) हो
  • आपको बड़े पैमाने (massive scale) की आवश्यकता हो

क्लाउड कंप्यूट निष्पादन (execution) के लिए है। लोकल कंप्यूट खोज (discovery) के लिए है।

प्रोफेशनलिज्म सबसे बड़ी मशीन का उपयोग करने के बारे में नहीं है। यह यह जानने के बारे में है कि आपका काम कब अपनी डेस्क छोड़ने के लिए तैयार है।

यदि आप अभी भी यह खोज रहे हैं कि काम क्या है, तो लोकल पर ही रहें। एक बार जब आप काम को जान लें और उसे तेज़ी से करने की आवश्यकता हो, तो क्लाउड पर चले जाएँ।

किसी अस्पष्ट प्रयोग को महंगे इंफ्रास्ट्रक्चर में लपेटने के लिए क्लाउड का उपयोग न करें। तब तक प्रतीक्षा करें जब तक कि काम अपनी जगह न बना ले।

Source: https://dev.to/lareleem/local-or-not-the-workload-has-to-earn-the-cloud-2boe

Optional learning community: https://t.me/GyaanSetuAi