डेटा को बदलने के बारे में जानकारी

सुविधा इंजीनियरिंग यह तय करने की प्रक्रिया है कि किसी मॉडल को ट्रेनिंग करने के लिए कौनसी सुविधाएं उपयोगी हो सकती हैं. इसके बाद, लॉग फ़ाइलों और दूसरे सोर्स में मिले रॉ डेटा को बदलकर उन सुविधाओं को बनाया जा सकता है. इस सेक्शन में, हम इस बात पर फ़ोकस करते हैं कि संख्या और कैटगरी वाले डेटा को कब और कैसे बदलना है. साथ ही, अलग-अलग तरह के रास्ते में क्या बदलाव किया गया है.

डेटा में बदलाव की वजहें

हम सुविधाओं को मुख्य रूप से इन वजहों से बदलते हैं:

  1. डेटा के साथ काम करने के लिए ज़रूरी बदलाव. उदाहरणों में शामिल है:

    • गैर-न्यूमेरिक सुविधाओं को अंकों में बदलना. आप स्ट्रिंग पर मैट्रिक्स गुणा नहीं कर सकते, इसलिए हमें स्ट्रिंग को कुछ अंकों में दिखाना होगा.
    • इनपुट का साइज़ बदलकर, तय किए गए साइज़ का रखें. लीनियर मॉडल और फ़ीड-फ़ॉरवर्ड न्यूरल नेटवर्क में इनपुट नोड की संख्या तय होती है. इसलिए, आपके इनपुट डेटा का साइज़ हमेशा एक जैसा होना चाहिए. उदाहरण के लिए, इमेज मॉडल को अपने डेटासेट में इमेज का साइज़ तय किए गए साइज़ में देना ज़रूरी है.
  2. ज़रूरी क्वालिटी में बदलाव, जो मॉडल को बेहतर परफ़ॉर्म करने में मदद कर सकता है. उदाहरणों में शामिल है:

    • टेक्स्ट की सुविधाओं का टोकन या लोअर केस.
    • सामान्य न्यूमेरिक सुविधाएं (ज़्यादातर मॉडल बाद में बेहतर परफ़ॉर्म करती हैं).
    • सुविधा स्पेस में लीनियर मॉडल को गैर-लीनियर बनाने की अनुमति देना.

साफ़ तौर पर कहा जाए, तो क्वालिटी में बदलाव होना ज़रूरी नहीं है--आपका मॉडल बिना चलने के बाद भी चल सकता है. हालांकि, इन तकनीकों का इस्तेमाल करने से मॉडल को बेहतर नतीजे मिल सकते हैं.

कहां बदलना है?

डिस्क पर डेटा जनरेट करते समय या मॉडल के अंदर ट्रांसफ़ॉर्म लागू किया जा सकता है.

ट्रेनिंग शुरू होने से पहले, उसमें बदलाव करना

इस तरह, हम ट्रेनिंग से पहले ट्रांसफ़ॉर्मेशन करते हैं. यह कोड आपके मशीन लर्निंग मॉडल से अलग रहता है.

फ़ायदे

  • सिर्फ़ एक बार कंप्यूटेशन किया जाता है.
  • बदलाव को तय करने के लिए, कंप्यूटेशन पूरे डेटासेट को देख सकता है.

नुकसान

  • यह ज़रूरी है कि बदलावों को अनुमान के समय फिर से लागू किया जाए. अजीब अंदाज़ से सावधान रहें!
  • बदलाव की प्रक्रिया में किसी भी तरह के बदलाव के लिए, डेटा जनरेट करने की प्रोसेस को फिर से चलाने की ज़रूरत होती है. इससे, चलने की प्रक्रिया धीमी हो जाती है.

ऑनलाइन प्लैटफ़ॉर्म पर दिखाए जाने से जुड़े मामलों में, स्क्यू ज़्यादा खतरनाक होते हैं. ऑफ़लाइन सेवा में, आप उस कोड का फिर से इस्तेमाल कर सकते हैं जिससे आपका ट्रेनिंग डेटा जनरेट होता है. ऑनलाइन सेवा में, आपके डेटासेट को बनाने और लाइव ट्रैफ़िक को मैनेज करने के लिए इस्तेमाल किया जाने वाला कोड, आम तौर पर अलग-अलग होता है. इससे, इन्हें आसानी से पेश किया जा सकता है.

मॉडल में बदलाव करना

इस तरीके में, बदलाव मॉडल कोड का हिस्सा होता है. मॉडल, ट्रांसफ़र नहीं किए गए डेटा को इनपुट के तौर पर लेता है और उसे मॉडल में बदल देता है.

फ़ायदे

  • दोहराने के आसान तरीके. बदलावों को बदलने के बाद भी, एक जैसी डेटा फ़ाइलों का इस्तेमाल किया जा सकता है.
  • आपको ट्रेनिंग और अनुमान के समय में हुए बदलाव की गारंटी दी जाती है.

नुकसान

  • महंगे कन्वर्ज़न से मॉडल के इंतज़ार का समय बढ़ सकता है.
  • ट्रांसफ़ॉर्मेशन, हर बैच के हिसाब से होते हैं.

हर बैच के अंदर बदलने के लिए कई बातों का ध्यान रखना पड़ता है. मान लीजिए कि आपको किसी सुविधा की औसत वैल्यू के हिसाब से सामान्य बनाना है. इसका मतलब है कि आपको फ़ीचर वैल्यू को बदलकर 0 और स्टैंडर्ड डेविएशन 1करना होगा. मॉडल के अंदर बदलते समय, इस सामान्य तरीके से पूरे डेटासेट के बजाय डेटा के सिर्फ़ एक बैच को ऐक्सेस किया जा सकेगा. आप बैच में औसत वैल्यू (जो बैच में बहुत ज़्यादा वैरिएंट होते हैं) के हिसाब से सामान्य बना सकते हैं या औसत को पहले से तय कर सकते हैं और मॉडल में इसे कॉन्सटेंट के रूप में ठीक कर सकते हैं. हम अगले सेक्शन में नॉर्मलाइज़ेशन के बारे में जानेंगे.

अपना डेटा एक्सप्लोर करें, साफ़ करें, और विज़ुअलाइज़ करें

अपने डेटा पर कोई भी बदलाव करने से पहले, उसे एक्सप्लोर करें और साफ़ करें. हो सकता है कि आपने अपना डेटासेट इकट्ठा करते और बनाते समय नीचे दिए गए कुछ काम पूरे किए हों:

  • डेटा की कई पंक्तियों की जांच करें.
  • बुनियादी आंकड़े देखें.
  • छूटी हुई अंकों वाली एंट्री को ठीक करें.

अपना डेटा बार-बार विज़ुअलाइज़ करें. ग्राफ़ ऐसी अनियमितताओं या पैटर्न की खोज करने में मदद कर सकते हैं जो संख्या के आंकड़ों से साफ़ नहीं दिखते हैं. इसलिए, विश्लेषण में बहुत दूर जाने से पहले, अपने डेटा को ग्राफ़िक के रूप में या तो स्कैटर प्लॉट या हिस्टोग्राम के ज़रिए देखें. सिर्फ़ पाइपलाइन की शुरुआत में ही नहीं, बल्कि बदलाव करने के दौरान भी ग्राफ़ देखें. विज़ुअलाइज़ेशन की मदद से, आप अनुमानों को लगातार देख सकते हैं और किसी बड़े बदलाव का असर देख सकते हैं.