जानें कि सुपरवाइज्ड मशीन लर्निंग क्या है, यह अनसुपरवाइज्ड मशीन लर्निंग से कैसे अलग है और कुछ आवश्यक सुपरवाइज्ड मशीन लर्निंग एल्गोरिदम कैसे काम करते हैं
सुपरवाइज्ड मशीन लर्निंग मशीन लर्निंग का वह प्रकार है जो इनपुट और आउटपुट के बीच के संबंध को सीखता है। इनपुट को फीचर्स या ‘X वेरिएबल्स’ कहा जाता है और आउटपुट को आमतौर पर टार्गेट या ‘y वेरिएबल’ कहा जाता है। जिस प्रकार के डेटा में फीचर्स और टार्गेट दोनों होते हैं, उसे लेबल्ड डेटा कहा जाता है। यह सुपरवाइज्ड और अनसुपरवाइज्ड मशीन लर्निंग—मशीन लर्निंग के दो प्रमुख प्रकारों—के बीच का मुख्य अंतर है। इस ट्यूटोरियल में आप सीखेंगे:
सुपरवाइज्ड मशीन लर्निंग क्या है
सुपरवाइज्ड बनाम अनसुपरवाइज्ड मशीन लर्निंग
सेमी-सुपरवाइज्ड मशीन लर्निंग
सुपरवाइज्ड मशीन लर्निंग एल्गोरिदम:
लिनियर रिग्रेशन
डिसीजन ट्री
K निकटतम पड़ोसी (KNN)
रैंडम फॉरेस्ट
नाइव बेयस
सुपरवाइज्ड मशीन लर्निंग का Python कोड उदाहरण
सुपरवाइज्ड मशीन लर्निंग क्या है?
सुपरवाइज्ड मशीन लर्निंग इनपुट और आउटपुट डेटा के पैटर्न और संबंध सीखता है। इसकी परिभाषा लेबल्ड डेटा के उपयोग से होती है। लेबल्ड डेटा वह डेटासेट है जिसमें फीचर्स और टार्गेट के बहुत से उदाहरण होते हैं। सुपरवाइज्ड लर्निंग ऐसे एल्गोरिदम का उपयोग करता है जो डेटासेट से फीचर्स और टार्गेट के बीच संबंध सीखते हैं। इस प्रक्रिया को ट्रेनिंग या फिटिंग कहा जाता है।
सुपरवाइज्ड लर्निंग एल्गोरिदम दो प्रकार के होते हैं:
क्लासिफिकेशन सुपरवाइज्ड मशीन लर्निंग का एक प्रकार है जिसमें एल्गोरिदम डेटा से सीखकर भविष्य में किसी परिणाम या घटना का पूर्वानुमान लगाते हैं। उदाहरण के लिए:
किसी बैंक के पास ग्राहकों का डेटासेट हो सकता है जिसमें क्रेडिट हिस्ट्री, लोन, निवेश विवरण आदि शामिल हों, और वे जानना चाहें कि कोई ग्राहक डिफ़ॉल्ट करेगा या नहीं। ऐतिहासिक डेटा में हमारे पास फीचर्स और टार्गेट होंगे।
फीचर्स ग्राहक के गुण होंगे, जैसे क्रेडिट हिस्ट्री, लोन, निवेश आदि।
टार्गेट यह दर्शाएगा कि क्या किसी विशेष ग्राहक ने अतीत में डिफ़ॉल्ट किया है (आमतौर पर 1 या 0 / True या False / Yes या No से दर्शाया जाता है)।
क्लासिफिकेशन एल्गोरिदम का उपयोग विविक्त (discrete) परिणामों के पूर्वानुमान के लिए किया जाता है। यदि परिणाम दो मान ले सकता है, जैसे True या False, Default या No Default, Yes या No, तो इसे बाइनरी क्लासिफिकेशन कहा जाता है। जब परिणाम दो से अधिक संभावित मान रखता है, तो इसे मल्टीक्लास क्लासिफिकेशन कहा जाता है। क्लासिफिकेशन कार्यों के लिए कई मशीन लर्निंग एल्गोरिदम उपयोग किए जा सकते हैं। इनमें से कुछ हैं:
लॉजिस्टिक रिग्रेशन
डिसीजन ट्री क्लासिफायर
K निकटतम पड़ोसी क्लासिफायर
रैंडम फॉरेस्ट क्लासिफायर
न्यूरल नेटवर्क्स
रिग्रेशन
रिग्रेशन सुपरवाइज्ड मशीन लर्निंग का वह प्रकार है जिसमें एल्गोरिदम डेटा से सीखकर सतत (continuous) मानों जैसे बिक्री, वेतन, वजन, या तापमान का पूर्वानुमान लगाते हैं। उदाहरण के लिए:
एक ऐसा डेटासेट जिसमें घर के फीचर्स—जैसे प्लॉट का आकार, बेडरूम की संख्या, बाथरूम की संख्या, पड़ोस आदि—और घर की कीमत हो, उस पर रिग्रेशन एल्गोरिदम को फीचर्स और कीमत के बीच संबंध सीखने के लिए प्रशिक्षित किया जा सकता है।
रिग्रेशन कार्यों के लिए कई मशीन लर्निंग एल्गोरिदम उपयोग किए जा सकते हैं। इनमें से कुछ हैं:
सुपरवाइज्ड और अनसुपरवाइज्ड मशीन लर्निंग के बीच मुख्य अंतर यह है कि सुपरवाइज्ड लर्निंग लेबल्ड डेटा का उपयोग करता है। लेबल्ड डेटा वह होता है जिसमें फीचर्स (X वेरिएबल्स) और टार्गेट (y वेरिएबल) दोनों मौजूद हों।
सुपरवाइज्ड लर्निंग का उपयोग करते समय, एल्गोरिदम फीचर्स दिए जाने पर टार्गेट वेरिएबल की भविष्यवाणी करना क्रमिक रूप से सीखता है और प्रशिक्षण डेटासेट से “सीखने” के लिए उचित प्रतिक्रिया हेतु अपने पैरामीटर्स को संशोधित करता है। इस प्रक्रिया को ट्रेनिंग या फिटिंग कहा जाता है। सुपरवाइज्ड लर्निंग मॉडल आमतौर पर अनसुपरवाइज्ड लर्निंग की तुलना में अधिक सटीक परिणाम देते हैं, लेकिन प्रारंभ में डेटा को सही ढंग से पहचानने के लिए मानव हस्तक्षेप आवश्यक होता है। यदि डेटासेट में लेबल सही नहीं हैं, तो सुपरवाइज्ड एल्गोरिदम गलत चीज़ें सीखेंगे।
दूसरी ओर, अनसुपरवाइज्ड लर्निंग मॉडल बिना लेबल वाले डेटा की अंतर्निहित संरचना को पहचानने के लिए स्वायत्त तरीके से काम करते हैं। ध्यान रहे कि आउटपुट वेरिएबल का सत्यापन करने के लिए कुछ स्तर तक मानवीय भागीदारी फिर भी जरूरी होती है। उदाहरण के लिए, एक अनसुपरवाइज्ड लर्निंग मॉडल यह निर्धारित कर सकता है कि ऑनलाइन खरीदारी करने वाले ग्राहक एक ही समय में अक्सर एक ही श्रेणी की कई वस्तुएं खरीदते हैं। हालांकि, किसी मानव विश्लेषक को यह जांचना होगा कि किसी रिकमेन्डेशन इंजन के लिए आइटम X को आइटम Y के साथ जोड़ना तर्कसंगत है या नहीं।
उपयोग-परिदृश्य
सुपरवाइज्ड लर्निंग के दो प्रमुख उपयोग-परिदृश्य हैं: क्लासिफिकेशन और रिग्रेशन। दोनों कार्यों में सुपरवाइज्ड एल्गोरिदम ट्रेनिंग डेटा से सीखकर किसी चीज़ का पूर्वानुमान लगाते हैं। यदि अनुमानित वेरिएबल विविक्त है, जैसे “Yes” या “No”, 1 या 0, “Fraud” या “No Fraud”, तो क्लासिफिकेशन एल्गोरिदम की आवश्यकता होगी। यदि अनुमानित वेरिएबल सतत है, जैसे बिक्री, लागत, वेतन, तापमान आदि, तो रिग्रेशन एल्गोरिदम आवश्यक होगा।
क्लस्टरिंग और अनोमली डिटेक्शन अनसुपरवाइज्ड लर्निंग के दो प्रमुख उपयोग-परिदृश्य हैं। क्लस्टरिंग के बारे में अधिक जानने के लिए यह लेख देखें। यदि आप अनसुपरवाइज्ड मशीन लर्निंग में और गहराई से जाना चाहते हैं, तो DataCamp का यह रोचक कोर्स देखें। आप scikit-learn और scipy का उपयोग करके बिना लेबल वाले डेटासेट्स को क्लस्टर, ट्रांसफॉर्म, विज़ुअलाइज़ और उनसे इनसाइट्स निकालना सीखेंगे।
लक्ष्य
सुपरवाइज्ड लर्निंग का उद्देश्य लेबल्ड ट्रेनिंग डेटासेट से सीख चुके मॉडल के आधार पर नए डेटा के लिए परिणामों का पूर्वानुमान लगाना है। जिन प्रकार के परिणामों की आप अपेक्षा कर सकते हैं, वे पहले से ही लेबल्ड डेटा के रूप में ज्ञात होते हैं। अनसुपरवाइज्ड लर्निंग एल्गोरिदम का उद्देश्य बिना स्पष्ट लेबल के बड़े पैमाने पर डेटा से इनसाइट्स निकालना है। अनसुपरवाइज्ड एल्गोरिदम भी ट्रेनिंग डेटासेट से सीखते हैं, लेकिन ट्रेनिंग डेटा में कोई लेबल नहीं होते।
जटिलता
अनसुपरवाइज्ड लर्निंग की तुलना में सुपरवाइज्ड मशीन लर्निंग अपेक्षाकृत सीधी है। अनसुपरवाइज्ड लर्निंग मॉडल आम तौर पर वांछित परिणाम देने के लिए बड़े ट्रेनिंग सेट की मांग करते हैं, जिससे वे संगणनात्मक रूप से जटिल हो जाते हैं।
सेमी-सुपरवाइज्ड लर्निंग अपेक्षाकृत नया और कम लोकप्रिय मशीन लर्निंग प्रकार है, जिसमें ट्रेनिंग के दौरान थोड़े से लेबल्ड डेटा के साथ बड़े पैमाने पर अनलेबल्ड डेटा मिलाया जाता है। सेमी-सुपरवाइज्ड लर्निंग, सुपरवाइज्ड लर्निंग (लेबल्ड ट्रेनिंग डेटा) और अनसुपरवाइज्ड लर्निंग (अनलेबल्ड ट्रेनिंग डेटा) के बीच स्थित है।
सेमी-सुपरवाइज्ड लर्निंग के कई वास्तविक दुनिया के अनुप्रयोग हैं। कई क्षेत्रों में लेबल्ड डेटा की कमी रहती है। चूंकि इसमें मानव एनोटेटर्स, विशेष उपकरण, या महंगी और समय लेने वाली स्टडीज़ शामिल हो सकती हैं, इसलिए लेबल्स (टार्गेट वेरिएबल) पाना चुनौतीपूर्ण हो सकता है।
इस सेक्शन में हम सुपरवाइज्ड मशीन लर्निंग के कुछ आम एल्गोरिदम कवर करेंगे:
लिनियर रिग्रेशन
लिनियर रिग्रेशन सबसे सरल मशीन लर्निंग एल्गोरिदम में से एक है। इसका उपयोग ट्रेनिंग डेटासेट में मौजूद फीचर्स (स्वतंत्र वेरिएबल) के आधार पर सतत मान (निर्भर वेरिएबल) का पूर्वानुमान लगाने के लिए किया जाता है। निर्भर वेरिएबल, जो प्रभाव को दर्शाता है, का मान स्वतंत्र वेरिएबल के मान में बदलाव से प्रभावित होता है।
यदि आपको स्कूल के दिनों का “लाइन ऑफ बेस्ट फिट” याद हो, तो वही लिनियर रिग्रेशन है। किसी व्यक्ति की ऊंचाई के आधार पर उसका वजन अनुमानित करना इस सिद्धांत का सीधा उदाहरण है।
रेखीय रूप से अलग होने वाले डेटा पर असाधारण प्रदर्शन
फीचर्स और टार्गेट वेरिएबल के बीच रैखिकता मानता है।
लॉजिस्टिक रिग्रेशन
लॉजिस्टिक रिग्रेशन, लिनियर रिग्रेशन का एक विशेष मामला है जिसमें टार्गेट वेरिएबल (y) विविक्त/श्रेणीबद्ध होता है जैसे 1 या 0, True या False, Yes या No, Default या No Default। आशयों (odds) के लघुगणक को निर्भर वेरिएबल के रूप में उपयोग किया जाता है। लॉजिट फंक्शन का उपयोग करके, लॉजिस्टिक रिग्रेशन किसी बाइनरी घटना के घटित होने की प्रायिकता का पूर्वानुमान लगाता है।
डिसीजन ट्री एल्गोरिदम संभाव्यता-आधारित ट्री जैसी संरचना वाले मॉडल होते हैं जो पिछले प्रश्नों के परिणामों के आधार पर डेटा को लगातार विभाजित करते हैं, ताकि वर्गीकरण या पूर्वानुमान किया जा सके। मॉडल डेटा का विश्लेषण करता है और प्रश्नों के उत्तर देता है, जिससे आपको बेहतर निर्णय लेने में सहायता मिलती है।
उदाहरण के लिए, आप एक डिसीजन ट्री का उपयोग कर सकते हैं जिसमें Yes या No उत्तरों के आधार पर किसी पक्षी की प्रजाति का चयन किया जाता है—जैसे पंखों की विशेषताएं, उड़ने या तैरने की क्षमता, चोंच का प्रकार, आदि।
अस्थिर — ट्रेनिंग डेटा में छोटे बदलाव से भविष्यवाणी में बड़े अंतर आ सकते हैं।
कुछ रैखिक मॉडलों की तरह अधिक डेटा तैयारी की आवश्यकता नहीं
ओवरफिटिंग की प्रवृत्ति
Python में ट्री-आधारित मॉडलों के साथ मशीन लर्निंग के बारे में अधिक जानने के लिए DataCamp का यह रोचक कोर्स देखें। इस कोर्स में आप scikit-learn का उपयोग करके रिग्रेशन और क्लासिफिकेशन के लिए ट्री-आधारित मॉडल और एन्सेम्बल्स का उपयोग करना सीखेंगे।
K निकटतम पड़ोसी
K-निकटतम पड़ोसी एक सांख्यिकीय विधि है जो यह तय करने के लिए एक डेटा बिंदु की दूसरे डेटा बिंदु से नज़दीकी का मूल्यांकन करती है कि क्या दोनों डेटा बिंदुओं को एक साथ समूहित किया जा सकता है। डेटा बिंदुओं की निकटता इस बात का प्रतिनिधित्व करती है कि वे एक-दूसरे के कितने समान हैं।
उदाहरण के लिए, मान लें हमारे पास एक ग्राफ में एक-दूसरे के नज़दीक स्थित दो अलग-अलग समूह हैं, जिन्हें क्रमशः समूह A और समूह B कहा गया है। जब हम एक नया डेटा बिंदु जोड़ते हैं, तो उस उदाहरण का समूह इस पर निर्भर करेगा कि नया बिंदु किस समूह के अधिक निकट है।
KNN कम संख्या के फीचर्स के साथ अच्छा काम करता है, लेकिन फीचर्स की संख्या बढ़ने पर सटीक भविष्यवाणी करने में संघर्ष करता है।
रैंडम फॉरेस्ट
रैंडम फॉरेस्ट भी, डिसीजन ट्री की तरह, ट्री-आधारित एल्गोरिदम का एक उदाहरण है। डिसीजन ट्री के विपरीत, जो केवल एक ट्री से बना होता है, रैंडम फॉरेस्ट निर्णय लेने के लिए कई डिसीजन ट्री का उपयोग करता है—यानी ट्री का एक “फॉरेस्ट” बनाता है।
यह कई अलग-अलग मॉडलों के संयोजन से पूर्वानुमान उत्पन्न करता है, और इसे क्लासिफिकेशन और रिग्रेशन दोनों के लिए उपयोग किया जा सकता है।
रैंडम फॉरेस्ट डेटा में गैर-रैखिक संबंधों को आसानी से संभाल सकता है।
एकाधिक ट्री के कारण व्याख्या करना कठिन।
रैंडम फॉरेस्ट अप्रत्यक्ष रूप से फीचर चयन करता है
बड़े डेटासेट्स के लिए रैंडम फॉरेस्ट संगणनात्मक रूप से महंगा होता है।
नाइव बेयस
बेयस प्रमेय एक गणितीय सूत्र है जिसका उपयोग सशर्त प्रायिकताओं की गणना के लिए किया जाता है, और नाइव बेयस उसी सूत्र का अनुप्रयोग है। किसी अन्य घटना के पहले ही घटित हो जाने की स्थिति में किसी परिणाम के घटित होने की प्रायिकता को सशर्त प्रायिकता कहते हैं।
यह यह भविष्यवाणी करता है कि प्रत्येक वर्ग के लिए प्रायिकताएँ किसी विशिष्ट वर्ग से संबंधित हैं, और जिसकी प्रायिकता सबसे अधिक होती है, उसे सबसे संभावित वर्ग माना जाता है।
एल्गोरिदम “जीरो-फ्रीक्वेंसी समस्या” से जूझता है, जहां ट्रेनिंग डेटासेट में किसी श्रेणी के अनुपस्थित होने पर वह उस श्रेणी को शून्य प्रायिकता दे देता है।
सुपरवाइज्ड मशीन लर्निंग का Python कोड उदाहरण
इस भाग में हम Python में scikit-learn का उपयोग करके एक नकली डेटासेट पर लॉजिस्टिक रिग्रेशन (क्लासिफिकेशन) मॉडल को ट्रेन करेंगे। पूरा नोटबुक यहां देखें।
```
# create fake binary classification dataset with 1000 rows and 10 featuresfrom sklearn.datasets import make_classification
X, y = make_classification(n_samples =1000, n_features =10, n_classes =2)# check shape of X and y
X.shape, y.shape
# train test splitfrom sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=42)# import and initialize logistic regression modelfrom sklearn.linear_model import LogisticRegression
lr = LogisticRegression()# fit logistic regression model
lr.fit(X_train, y_train)# generate hard predictions on test set
y_pred = lr.predict(X_test)
y_pred
# evaluate accuracy score of the modelfrom sklearn.metrics import accuracy_score
accuracy_score(y_test, y_pred)
```संचालित द्वारा
यदि आप R में सुपरवाइज्ड मशीन लर्निंग सीखना चाहते हैं, तो DataCamp का यह Supervised Learning in R कोर्स देखें। इस कोर्स में आप R प्रोग्रामिंग भाषा में क्लासिफिकेशन के लिए मशीन लर्निंग की बुनियादी बातें सीखेंगे।
निष्कर्ष
हाल के वर्षों में मशीन लर्निंग ने हमारे व्यवसाय करने के तरीके को पूरी तरह बदल दिया है। एक क्रांतिकारी नवाचार, जो मशीन लर्निंग को अन्य ऑटोमेशन रणनीतियों से अलग करता है, वह नियम-आधारित प्रोग्रामिंग से दूरी है। सुपरवाइज्ड मशीन लर्निंग तकनीकों की बदौलत इंजीनियर मशीनों को किसी विशेष तरीके से समस्याएं हल करना स्पष्ट रूप से सिखाए बिना डेटा का उपयोग कर सकते हैं।
सुपरवाइज्ड मशीन लर्निंग में, भविष्य के डेटा के लिए समस्या का अपेक्षित समाधान ज्ञात न भी हो सकता है, लेकिन वह किसी ऐतिहासिक डेटासेट में ज्ञात और कैप्चर किया गया हो सकता है—और सुपरवाइज्ड लर्निंग एल्गोरिदम का काम उसी ऐतिहासिक डेटा से वह संबंध सीखना है ताकि भविष्य में किसी परिणाम, घटना या मान का पूर्वानुमान लगाया जा सके।
इस लेख में, हमने समझा कि सुपरवाइज्ड लर्निंग क्या है और यह अनसुपरवाइज्ड लर्निंग से कैसे अलग है। हमने सुपरवाइज्ड लर्निंग के कुछ सामान्य एल्गोरिदम की भी समीक्षा की। हालांकि, हमने कई विषयों पर बात नहीं की है, जैसे मॉडल मूल्यांकन, क्रॉस-वैलिडेशन, या हाइपरपैरामीटर ट्यूनिंग। यदि आप इन विषयों में गहराई से जाना और अपने कौशल को और बढ़ाना चाहते हैं, तो ये रोचक कोर्स देखें:
सुपरवाइज्ड मशीन लर्निंग के दो सामान्य प्रकार कौन से हैं?⌄
क्लासिफिकेशन और रिग्रेशन सुपरवाइज्ड लर्निंग के दो सामान्य प्रकार हैं। क्लासिफिकेशन का उपयोग “Pass” या “Fail”, “True” या “False”, “Default” या “No Default” जैसे विविक्त परिणामों के पूर्वानुमान के लिए किया जाता है। वहीं रिग्रेशन का उपयोग बिक्री, वेतन, लागत आदि जैसे मात्रात्मक या सतत मानों के पूर्वानुमान के लिए किया जाता है।
सुपरवाइज्ड और अनसुपरवाइज्ड लर्निंग के बीच प्राथमिक अंतर क्या है?⌄
सुपरवाइज्ड और अनसुपरवाइज्ड लर्निंग के बीच प्राथमिक अंतर डेटा है। सुपरवाइज्ड लर्निंग के लिए आपके पास लेबल्ड डेटा होना चाहिए, जबकि अनसुपरवाइज्ड लर्निंग के लिए लेबल्ड डेटा की आवश्यकता नहीं होती।
हाँ, टाइम सीरीज़ फोरकास्टिंग सुपरवाइज्ड लर्निंग है, जहाँ हम संख्याओं के क्रम को देखते हुए अगला मान पूर्वानुमानित करते हैं। यह एक सुपरवाइज्ड लर्निंग कार्य है।
क्या नेचुरल लैंग्वेज प्रोसेसिंग (NLP) सुपरवाइज्ड है या अनसुपरवाइज्ड लर्निंग?⌄
यह दोनों हो सकता है। यह इस पर निर्भर करता है कि समस्या को कैसे परिभाषित किया गया है। उदाहरण के लिए, टेक्स्ट डॉक्युमेंट के प्रकार की भविष्यवाणी करना अधिकांशतः सुपरवाइज्ड कार्य होगा; दूसरी ओर, यदि उपयोग-परिदृश्य दस्तावेज़ों को उनके टेक्स्ट के आधार पर समान समूहों में रखना है, तो यह विशेष उपयोग-परिदृश्य टॉपिक मॉडलिंग कहलाता है, जो पूरी तरह अनसुपरवाइज्ड है।
क्लस्टरिंग सुपरवाइज्ड है या अनसुपरवाइज्ड लर्निंग?
⌄
क्लस्टरिंग कार्यों के लिए लेबल्ड डेटा की आवश्यकता नहीं होती, इसलिए यह अनसुपरवाइज्ड लर्निंग है।
क्या सुपरवाइज्ड और अनसुपरवाइज्ड लर्निंग के लिए अलग-अलग एल्गोरिदम होते हैं?⌄
हाँ, एल्गोरिदम पूरी तरह अलग होते हैं।
सुपरवाइज्ड लर्निंग के कुछ सामान्य एल्गोरिदम कौन से हैं?⌄
लिनियर रिग्रेशन, डिसीजन ट्री, न्यूरल नेटवर्क्स, सपोर्ट वेक्टर मशीन सुपरवाइज्ड लर्निंग के कुछ सामान्य एल्गोरिदम हैं।
परिचय
सुपरवाइज्ड मशीन लर्निंग मशीन लर्निंग का वह प्रकार है जो इनपुट और आउटपुट के बीच के संबंध को सीखता है। इनपुट को फीचर्स या ‘X वेरिएबल्स’ कहा जाता है और आउटपुट को आमतौर पर टार्गेट या ‘y वेरिएबल’ कहा जाता है। जिस प्रकार के डेटा में फीचर्स और टार्गेट दोनों होते हैं, उसे लेबल्ड डेटा कहा जाता है। यह सुपरवाइज्ड और अनसुपरवाइज्ड मशीन लर्निंग—मशीन लर्निंग के दो प्रमुख प्रकारों—के बीच का मुख्य अंतर है। इस ट्यूटोरियल में आप सीखेंगे:
सुपरवाइज्ड मशीन लर्निंग क्या है?
सुपरवाइज्ड मशीन लर्निंग इनपुट और आउटपुट डेटा के पैटर्न और संबंध सीखता है। इसकी परिभाषा लेबल्ड डेटा के उपयोग से होती है। लेबल्ड डेटा वह डेटासेट है जिसमें फीचर्स और टार्गेट के बहुत से उदाहरण होते हैं। सुपरवाइज्ड लर्निंग ऐसे एल्गोरिदम का उपयोग करता है जो डेटासेट से फीचर्स और टार्गेट के बीच संबंध सीखते हैं। इस प्रक्रिया को ट्रेनिंग या फिटिंग कहा जाता है।
सुपरवाइज्ड लर्निंग एल्गोरिदम दो प्रकार के होते हैं:
इमेज स्रोत: https://www.mathworks.com/help/stats/machine-learning-in-matlab.html
क्लासिफिकेशन
क्लासिफिकेशन सुपरवाइज्ड मशीन लर्निंग का एक प्रकार है जिसमें एल्गोरिदम डेटा से सीखकर भविष्य में किसी परिणाम या घटना का पूर्वानुमान लगाते हैं। उदाहरण के लिए:
किसी बैंक के पास ग्राहकों का डेटासेट हो सकता है जिसमें क्रेडिट हिस्ट्री, लोन, निवेश विवरण आदि शामिल हों, और वे जानना चाहें कि कोई ग्राहक डिफ़ॉल्ट करेगा या नहीं। ऐतिहासिक डेटा में हमारे पास फीचर्स और टार्गेट होंगे।
क्लासिफिकेशन एल्गोरिदम का उपयोग विविक्त (discrete) परिणामों के पूर्वानुमान के लिए किया जाता है। यदि परिणाम दो मान ले सकता है, जैसे True या False, Default या No Default, Yes या No, तो इसे बाइनरी क्लासिफिकेशन कहा जाता है। जब परिणाम दो से अधिक संभावित मान रखता है, तो इसे मल्टीक्लास क्लासिफिकेशन कहा जाता है। क्लासिफिकेशन कार्यों के लिए कई मशीन लर्निंग एल्गोरिदम उपयोग किए जा सकते हैं। इनमें से कुछ हैं:
रिग्रेशन
रिग्रेशन सुपरवाइज्ड मशीन लर्निंग का वह प्रकार है जिसमें एल्गोरिदम डेटा से सीखकर सतत (continuous) मानों जैसे बिक्री, वेतन, वजन, या तापमान का पूर्वानुमान लगाते हैं। उदाहरण के लिए:
एक ऐसा डेटासेट जिसमें घर के फीचर्स—जैसे प्लॉट का आकार, बेडरूम की संख्या, बाथरूम की संख्या, पड़ोस आदि—और घर की कीमत हो, उस पर रिग्रेशन एल्गोरिदम को फीचर्स और कीमत के बीच संबंध सीखने के लिए प्रशिक्षित किया जा सकता है।
रिग्रेशन कार्यों के लिए कई मशीन लर्निंग एल्गोरिदम उपयोग किए जा सकते हैं। इनमें से कुछ हैं:
इमेज स्रोत: https://static.javatpoint.com/tutorial/machine-learning/images/regression-vs-classification-in-machine-learning.png
सुपरवाइज्ड बनाम अनसुपरवाइज्ड लर्निंग
डेटा का प्रकार
सुपरवाइज्ड और अनसुपरवाइज्ड मशीन लर्निंग के बीच मुख्य अंतर यह है कि सुपरवाइज्ड लर्निंग लेबल्ड डेटा का उपयोग करता है। लेबल्ड डेटा वह होता है जिसमें फीचर्स (X वेरिएबल्स) और टार्गेट (y वेरिएबल) दोनों मौजूद हों।
सुपरवाइज्ड लर्निंग का उपयोग करते समय, एल्गोरिदम फीचर्स दिए जाने पर टार्गेट वेरिएबल की भविष्यवाणी करना क्रमिक रूप से सीखता है और प्रशिक्षण डेटासेट से “सीखने” के लिए उचित प्रतिक्रिया हेतु अपने पैरामीटर्स को संशोधित करता है। इस प्रक्रिया को ट्रेनिंग या फिटिंग कहा जाता है। सुपरवाइज्ड लर्निंग मॉडल आमतौर पर अनसुपरवाइज्ड लर्निंग की तुलना में अधिक सटीक परिणाम देते हैं, लेकिन प्रारंभ में डेटा को सही ढंग से पहचानने के लिए मानव हस्तक्षेप आवश्यक होता है। यदि डेटासेट में लेबल सही नहीं हैं, तो सुपरवाइज्ड एल्गोरिदम गलत चीज़ें सीखेंगे।
दूसरी ओर, अनसुपरवाइज्ड लर्निंग मॉडल बिना लेबल वाले डेटा की अंतर्निहित संरचना को पहचानने के लिए स्वायत्त तरीके से काम करते हैं। ध्यान रहे कि आउटपुट वेरिएबल का सत्यापन करने के लिए कुछ स्तर तक मानवीय भागीदारी फिर भी जरूरी होती है। उदाहरण के लिए, एक अनसुपरवाइज्ड लर्निंग मॉडल यह निर्धारित कर सकता है कि ऑनलाइन खरीदारी करने वाले ग्राहक एक ही समय में अक्सर एक ही श्रेणी की कई वस्तुएं खरीदते हैं। हालांकि, किसी मानव विश्लेषक को यह जांचना होगा कि किसी रिकमेन्डेशन इंजन के लिए आइटम X को आइटम Y के साथ जोड़ना तर्कसंगत है या नहीं।
उपयोग-परिदृश्य
सुपरवाइज्ड लर्निंग के दो प्रमुख उपयोग-परिदृश्य हैं: क्लासिफिकेशन और रिग्रेशन। दोनों कार्यों में सुपरवाइज्ड एल्गोरिदम ट्रेनिंग डेटा से सीखकर किसी चीज़ का पूर्वानुमान लगाते हैं। यदि अनुमानित वेरिएबल विविक्त है, जैसे “Yes” या “No”, 1 या 0, “Fraud” या “No Fraud”, तो क्लासिफिकेशन एल्गोरिदम की आवश्यकता होगी। यदि अनुमानित वेरिएबल सतत है, जैसे बिक्री, लागत, वेतन, तापमान आदि, तो रिग्रेशन एल्गोरिदम आवश्यक होगा।
क्लस्टरिंग और अनोमली डिटेक्शन अनसुपरवाइज्ड लर्निंग के दो प्रमुख उपयोग-परिदृश्य हैं। क्लस्टरिंग के बारे में अधिक जानने के लिए यह लेख देखें। यदि आप अनसुपरवाइज्ड मशीन लर्निंग में और गहराई से जाना चाहते हैं, तो DataCamp का यह रोचक कोर्स देखें। आप scikit-learn और scipy का उपयोग करके बिना लेबल वाले डेटासेट्स को क्लस्टर, ट्रांसफॉर्म, विज़ुअलाइज़ और उनसे इनसाइट्स निकालना सीखेंगे।
लक्ष्य
सुपरवाइज्ड लर्निंग का उद्देश्य लेबल्ड ट्रेनिंग डेटासेट से सीख चुके मॉडल के आधार पर नए डेटा के लिए परिणामों का पूर्वानुमान लगाना है। जिन प्रकार के परिणामों की आप अपेक्षा कर सकते हैं, वे पहले से ही लेबल्ड डेटा के रूप में ज्ञात होते हैं। अनसुपरवाइज्ड लर्निंग एल्गोरिदम का उद्देश्य बिना स्पष्ट लेबल के बड़े पैमाने पर डेटा से इनसाइट्स निकालना है। अनसुपरवाइज्ड एल्गोरिदम भी ट्रेनिंग डेटासेट से सीखते हैं, लेकिन ट्रेनिंग डेटा में कोई लेबल नहीं होते।
जटिलता
अनसुपरवाइज्ड लर्निंग की तुलना में सुपरवाइज्ड मशीन लर्निंग अपेक्षाकृत सीधी है। अनसुपरवाइज्ड लर्निंग मॉडल आम तौर पर वांछित परिणाम देने के लिए बड़े ट्रेनिंग सेट की मांग करते हैं, जिससे वे संगणनात्मक रूप से जटिल हो जाते हैं।
इमेज स्रोत: https://www.sharpsightlabs.com/blog/supervised-vs-unsupervised-learning/
सेमी-सुपरवाइज्ड मशीन लर्निंग
सेमी-सुपरवाइज्ड लर्निंग अपेक्षाकृत नया और कम लोकप्रिय मशीन लर्निंग प्रकार है, जिसमें ट्रेनिंग के दौरान थोड़े से लेबल्ड डेटा के साथ बड़े पैमाने पर अनलेबल्ड डेटा मिलाया जाता है। सेमी-सुपरवाइज्ड लर्निंग, सुपरवाइज्ड लर्निंग (लेबल्ड ट्रेनिंग डेटा) और अनसुपरवाइज्ड लर्निंग (अनलेबल्ड ट्रेनिंग डेटा) के बीच स्थित है।
सेमी-सुपरवाइज्ड लर्निंग के कई वास्तविक दुनिया के अनुप्रयोग हैं। कई क्षेत्रों में लेबल्ड डेटा की कमी रहती है। चूंकि इसमें मानव एनोटेटर्स, विशेष उपकरण, या महंगी और समय लेने वाली स्टडीज़ शामिल हो सकती हैं, इसलिए लेबल्स (टार्गेट वेरिएबल) पाना चुनौतीपूर्ण हो सकता है।
सेमी-सुपरवाइज्ड लर्निंग के दो प्रकार होते हैं:
इमेज स्रोत: https://www.enjoyalgorithms.com/blogs/supervised-unsupervised-and-semisupervised-learning
सुपरवाइज्ड मशीन लर्निंग एल्गोरिदम
इस सेक्शन में हम सुपरवाइज्ड मशीन लर्निंग के कुछ आम एल्गोरिदम कवर करेंगे:
लिनियर रिग्रेशन
लिनियर रिग्रेशन सबसे सरल मशीन लर्निंग एल्गोरिदम में से एक है। इसका उपयोग ट्रेनिंग डेटासेट में मौजूद फीचर्स (स्वतंत्र वेरिएबल) के आधार पर सतत मान (निर्भर वेरिएबल) का पूर्वानुमान लगाने के लिए किया जाता है। निर्भर वेरिएबल, जो प्रभाव को दर्शाता है, का मान स्वतंत्र वेरिएबल के मान में बदलाव से प्रभावित होता है।
यदि आपको स्कूल के दिनों का “लाइन ऑफ बेस्ट फिट” याद हो, तो वही लिनियर रिग्रेशन है। किसी व्यक्ति की ऊंचाई के आधार पर उसका वजन अनुमानित करना इस सिद्धांत का सीधा उदाहरण है।
इमेज स्रोत: http://primo.ai/index.php?title=Linear_Regression
फायदे
नुकसान
सरल, समझने और व्याख्या करने में आसान
ओवरफिटिंग होना आसान
रेखीय रूप से अलग होने वाले डेटा पर असाधारण प्रदर्शन
फीचर्स और टार्गेट वेरिएबल के बीच रैखिकता मानता है।
लॉजिस्टिक रिग्रेशन
लॉजिस्टिक रिग्रेशन, लिनियर रिग्रेशन का एक विशेष मामला है जिसमें टार्गेट वेरिएबल (y) विविक्त/श्रेणीबद्ध होता है जैसे 1 या 0, True या False, Yes या No, Default या No Default। आशयों (odds) के लघुगणक को निर्भर वेरिएबल के रूप में उपयोग किया जाता है। लॉजिट फंक्शन का उपयोग करके, लॉजिस्टिक रिग्रेशन किसी बाइनरी घटना के घटित होने की प्रायिकता का पूर्वानुमान लगाता है।
इस विषय पर अधिक जानने के लिए DataCamp पर यह उत्कृष्ट लेख देखें: Understanding Logistic Regression in Python Tutorial।
फायदे
नुकसान
सरल, समझने और व्याख्या करने में आसान
ओवरफिटिंग
आउटपुट प्रायिकताओं के लिए अच्छी तरह कैलिब्रेटेड
जटिल संबंधों को कैप्चर करने में कठिनाई
डिसीजन ट्री
डिसीजन ट्री एल्गोरिदम संभाव्यता-आधारित ट्री जैसी संरचना वाले मॉडल होते हैं जो पिछले प्रश्नों के परिणामों के आधार पर डेटा को लगातार विभाजित करते हैं, ताकि वर्गीकरण या पूर्वानुमान किया जा सके। मॉडल डेटा का विश्लेषण करता है और प्रश्नों के उत्तर देता है, जिससे आपको बेहतर निर्णय लेने में सहायता मिलती है।
उदाहरण के लिए, आप एक डिसीजन ट्री का उपयोग कर सकते हैं जिसमें Yes या No उत्तरों के आधार पर किसी पक्षी की प्रजाति का चयन किया जाता है—जैसे पंखों की विशेषताएं, उड़ने या तैरने की क्षमता, चोंच का प्रकार, आदि।
इमेज स्रोत: https://aigraduate.com/decision-tree-visualisation---quick-ml-tutorial-for-beginners/
फायदे
नुकसान
बहुत सहज और समझाने में आसान
अस्थिर — ट्रेनिंग डेटा में छोटे बदलाव से भविष्यवाणी में बड़े अंतर आ सकते हैं।
कुछ रैखिक मॉडलों की तरह अधिक डेटा तैयारी की आवश्यकता नहीं
ओवरफिटिंग की प्रवृत्ति
Python में ट्री-आधारित मॉडलों के साथ मशीन लर्निंग के बारे में अधिक जानने के लिए DataCamp का यह रोचक कोर्स देखें। इस कोर्स में आप scikit-learn का उपयोग करके रिग्रेशन और क्लासिफिकेशन के लिए ट्री-आधारित मॉडल और एन्सेम्बल्स का उपयोग करना सीखेंगे।
K निकटतम पड़ोसी
K-निकटतम पड़ोसी एक सांख्यिकीय विधि है जो यह तय करने के लिए एक डेटा बिंदु की दूसरे डेटा बिंदु से नज़दीकी का मूल्यांकन करती है कि क्या दोनों डेटा बिंदुओं को एक साथ समूहित किया जा सकता है। डेटा बिंदुओं की निकटता इस बात का प्रतिनिधित्व करती है कि वे एक-दूसरे के कितने समान हैं।
उदाहरण के लिए, मान लें हमारे पास एक ग्राफ में एक-दूसरे के नज़दीक स्थित दो अलग-अलग समूह हैं, जिन्हें क्रमशः समूह A और समूह B कहा गया है। जब हम एक नया डेटा बिंदु जोड़ते हैं, तो उस उदाहरण का समूह इस पर निर्भर करेगा कि नया बिंदु किस समूह के अधिक निकट है।
स्रोत: https://towardsdatascience.com/getting-acquainted-with-k-nearest-neighbors-ba0a9ecf354f
फायदे
नुकसान
डेटा के बारे में कोई धारणा नहीं बनाता
ट्रेनिंग में अधिक समय लगता है
सहज और सरल
KNN कम संख्या के फीचर्स के साथ अच्छा काम करता है, लेकिन फीचर्स की संख्या बढ़ने पर सटीक भविष्यवाणी करने में संघर्ष करता है।
रैंडम फॉरेस्ट
रैंडम फॉरेस्ट भी, डिसीजन ट्री की तरह, ट्री-आधारित एल्गोरिदम का एक उदाहरण है। डिसीजन ट्री के विपरीत, जो केवल एक ट्री से बना होता है, रैंडम फॉरेस्ट निर्णय लेने के लिए कई डिसीजन ट्री का उपयोग करता है—यानी ट्री का एक “फॉरेस्ट” बनाता है।
यह कई अलग-अलग मॉडलों के संयोजन से पूर्वानुमान उत्पन्न करता है, और इसे क्लासिफिकेशन और रिग्रेशन दोनों के लिए उपयोग किया जा सकता है।
स्रोत: https://blog.tensorflow.org/2021/05/introducing-tensorflow-decision-forests.html
फायदे
नुकसान
रैंडम फॉरेस्ट डेटा में गैर-रैखिक संबंधों को आसानी से संभाल सकता है।
एकाधिक ट्री के कारण व्याख्या करना कठिन।
रैंडम फॉरेस्ट अप्रत्यक्ष रूप से फीचर चयन करता है
बड़े डेटासेट्स के लिए रैंडम फॉरेस्ट संगणनात्मक रूप से महंगा होता है।
नाइव बेयस
बेयस प्रमेय एक गणितीय सूत्र है जिसका उपयोग सशर्त प्रायिकताओं की गणना के लिए किया जाता है, और नाइव बेयस उसी सूत्र का अनुप्रयोग है। किसी अन्य घटना के पहले ही घटित हो जाने की स्थिति में किसी परिणाम के घटित होने की प्रायिकता को सशर्त प्रायिकता कहते हैं।
यह यह भविष्यवाणी करता है कि प्रत्येक वर्ग के लिए प्रायिकताएँ किसी विशिष्ट वर्ग से संबंधित हैं, और जिसकी प्रायिकता सबसे अधिक होती है, उसे सबसे संभावित वर्ग माना जाता है।
इमेज स्रोत: https://www.kdnuggets.com/2019/10/introduction-artificial-neural-networks.html
फायदे
नुकसान
एल्गोरिदम बहुत तेज है।
यह मानता है कि सभी फीचर्स स्वतंत्र हैं।
सरल और लागू करने में आसान
एल्गोरिदम “जीरो-फ्रीक्वेंसी समस्या” से जूझता है, जहां ट्रेनिंग डेटासेट में किसी श्रेणी के अनुपस्थित होने पर वह उस श्रेणी को शून्य प्रायिकता दे देता है।
सुपरवाइज्ड मशीन लर्निंग का Python कोड उदाहरण
इस भाग में हम Python में scikit-learn का उपयोग करके एक नकली डेटासेट पर लॉजिस्टिक रिग्रेशन (क्लासिफिकेशन) मॉडल को ट्रेन करेंगे। पूरा नोटबुक यहां देखें।
यदि आप R में सुपरवाइज्ड मशीन लर्निंग सीखना चाहते हैं, तो DataCamp का यह Supervised Learning in R कोर्स देखें। इस कोर्स में आप R प्रोग्रामिंग भाषा में क्लासिफिकेशन के लिए मशीन लर्निंग की बुनियादी बातें सीखेंगे।
निष्कर्ष
हाल के वर्षों में मशीन लर्निंग ने हमारे व्यवसाय करने के तरीके को पूरी तरह बदल दिया है। एक क्रांतिकारी नवाचार, जो मशीन लर्निंग को अन्य ऑटोमेशन रणनीतियों से अलग करता है, वह नियम-आधारित प्रोग्रामिंग से दूरी है। सुपरवाइज्ड मशीन लर्निंग तकनीकों की बदौलत इंजीनियर मशीनों को किसी विशेष तरीके से समस्याएं हल करना स्पष्ट रूप से सिखाए बिना डेटा का उपयोग कर सकते हैं।
सुपरवाइज्ड मशीन लर्निंग में, भविष्य के डेटा के लिए समस्या का अपेक्षित समाधान ज्ञात न भी हो सकता है, लेकिन वह किसी ऐतिहासिक डेटासेट में ज्ञात और कैप्चर किया गया हो सकता है—और सुपरवाइज्ड लर्निंग एल्गोरिदम का काम उसी ऐतिहासिक डेटा से वह संबंध सीखना है ताकि भविष्य में किसी परिणाम, घटना या मान का पूर्वानुमान लगाया जा सके।
इस लेख में, हमने समझा कि सुपरवाइज्ड लर्निंग क्या है और यह अनसुपरवाइज्ड लर्निंग से कैसे अलग है। हमने सुपरवाइज्ड लर्निंग के कुछ सामान्य एल्गोरिदम की भी समीक्षा की। हालांकि, हमने कई विषयों पर बात नहीं की है, जैसे मॉडल मूल्यांकन, क्रॉस-वैलिडेशन, या हाइपरपैरामीटर ट्यूनिंग। यदि आप इन विषयों में गहराई से जाना और अपने कौशल को और बढ़ाना चाहते हैं, तो ये रोचक कोर्स देखें: