सुपरवाइज़्ड लर्निंग

सुपरवाइज़्ड लर्निंग के टास्क अच्छी तरह से तय होते हैं और इन्हें कई तरह के मामलों में लागू किया जा सकता है. जैसे, स्पैम की पहचान करना या बारिश का अनुमान लगाना.

सुपरवाइज़्ड लर्निंग के बुनियादी कॉन्सेप्ट

सुपरवाइज़्ड मशीन लर्निंग इन मुख्य कॉन्सेप्ट पर आधारित है:

  • Data
  • मॉडल
  • ट्रेनिंग
  • मूल्यांकन हो रहा है
  • अनुमान

Data

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

  • बिल्लियों के चित्र
  • घरों की कीमतें
  • मौसम की जानकारी

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

जिन उदाहरणों में सुविधाएं और लेबल, दोनों शामिल होते हैं उन्हें लेबल वाले उदाहरण कहा जाता है.

लेबल किए गए दो उदाहरण

प्लेसहोल्डर की इमेज।

इसके उलट, लेबल नहीं किए गए उदाहरणों में सुविधाएं होती हैं, लेकिन कोई लेबल नहीं होता. मॉडल बनाने के बाद, मॉडल सुविधाओं से लेबल का अनुमान लगाता है.

बिना लेबल वाले दो उदाहरण

प्लेसहोल्डर की इमेज।

डेटासेट की विशेषताएं

डेटासेट का साइज़ और उसमें मौजूद डेटा की वैरायटी, उसके बारे में बताती है. साइज़ से उदाहरणों की संख्या का पता चलता है. 'विविधता' से पता चलता है कि उदाहरणों में कौनसी रेंज शामिल है. अच्छे डेटासेट बड़े और अलग-अलग तरह के होते हैं.

कुछ डेटासेट बड़े और अलग-अलग तरह के होते हैं. हालांकि, कुछ डेटासेट बड़े होते हैं, लेकिन उनमें अलग-अलग वैल्यू कम होती हैं. वहीं, कुछ डेटासेट छोटे होते हैं, लेकिन उनमें अलग-अलग वैल्यू ज़्यादा होती हैं. दूसरे शब्दों में, बड़े डेटासेट में अलग-अलग तरह के डेटा के मौजूद होने की गारंटी नहीं होती. साथ ही, अलग-अलग तरह के डेटा वाले डेटासेट में, ज़रूरत के मुताबिक उदाहरणों के मौजूद होने की गारंटी नहीं होती.

उदाहरण के लिए, किसी डेटासेट में 100 साल का डेटा हो सकता है, लेकिन सिर्फ़ जुलाई महीने का. जनवरी में बारिश का अनुमान लगाने के लिए, इस डेटासेट का इस्तेमाल करने से, अनुमान खराब होंगे. इसके उलट, ऐसा भी हो सकता है कि डेटासेट में सिर्फ़ कुछ साल का डेटा हो, लेकिन हर महीने का डेटा हो. इस डेटासेट से खराब अनुमान मिल सकते हैं, क्योंकि इसमें वैरिएशन का हिसाब लगाने के लिए ज़रूरत के मुताबिक साल नहीं हैं.

देखें कि आपको विषय की कितनी समझ है

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

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

मॉडल

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

ट्रेनिंग

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

उदाहरण के लिए, अगर मॉडल ने बारिश के लिए 1.15 inches का अनुमान लगाया, लेकिन असल वैल्यू .75 inches थी, तो मॉडल अपने समाधान में बदलाव करता है, ताकि उसका अनुमान .75 inches के करीब हो. मॉडल, डेटासेट में मौजूद हर उदाहरण को देखता है. कुछ मामलों में, वह हर उदाहरण को कई बार देखता है. इसके बाद, वह एक ऐसा समाधान निकालता है जो हर उदाहरण के लिए, औसतन सबसे अच्छी भविष्यवाणियां करता है.

यहां मॉडल को ट्रेनिंग देने का तरीका बताया गया है:

  1. मॉडल, लेबल किए गए एक उदाहरण को लेता है और अनुमान देता है.

    अनुमान लगाने वाले मॉडल की इमेज.

    पहली इमेज. लेबल किए गए उदाहरण से अनुमान लगाने वाला एमएल मॉडल.

     

  2. मॉडल, अनुमानित वैल्यू की तुलना असल वैल्यू से करता है और अपना समाधान अपडेट करता है.

    मॉडल की इमेज, जिसमें अनुमान की गई वैल्यू की तुलना असल वैल्यू से की गई है.

    दूसरी इमेज. अनुमानित वैल्यू को अपडेट करने वाला एमएल मॉडल.

     

  3. मॉडल, डेटासेट में मौजूद हर लेबल किए गए उदाहरण के लिए यह प्रोसेस दोहराता है.

    मॉडल की इमेज, जिसमें अनुमान की प्रोसेस को दोहराया जा रहा है और असल वैल्यू के साथ तुलना की जा रही है.

    तीसरी इमेज. ट्रेनिंग डेटासेट में, लेबल किए गए हर उदाहरण के लिए, एमएल मॉडल अपने अनुमान अपडेट कर रहा है.

     

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

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

मूल्यांकन हो रहा है

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

ट्रेन किए गए मॉडल की इमेज, जिसमें उसकी अनुमानित वैल्यू की तुलना असल वैल्यू से की गई है.

चौथी इमेज. किसी एमएल मॉडल के अनुमानों की तुलना असल वैल्यू से करके उसका आकलन करना.

 

मॉडल के अनुमानों के आधार पर, हम असल दुनिया के किसी ऐप्लिकेशन में मॉडल को डिप्लॉय करने से पहले, ज़्यादा ट्रेनिंग और आकलन कर सकते हैं.

देखें कि आपको विषय की कितनी समझ है

अनुमान लगाने से पहले, मॉडल को ट्रेनिंग क्यों देनी पड़ती है?
किसी डेटासेट में मौजूद फ़ीचर और लेबल के बीच के गणितीय संबंध को समझने के लिए, मॉडल को ट्रेनिंग देनी पड़ती है.
मॉडल को ट्रेनिंग देने की ज़रूरत नहीं होती. मॉडल, ज़्यादातर कंप्यूटर पर उपलब्ध होते हैं.
मॉडल को ट्रेनिंग देना ज़रूरी है, ताकि वह अनुमान लगाने के लिए डेटा की ज़रूरत न पड़े.

अनुमान

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