Supervised Machine Learning

जैसा कि नाम से पता चलता है Supervised Learning मे एक Supervisor  होता है जिसे हम Teacher भी कह सकते है। 


मूल रूप से Supervised Learning एक ऐसी learning है जिसमें हम मशीन को Supervised Data या Labelled Data से Train करते है फिर इस ट्रैनिंग के बाद मशिन इस काबिल हो जाती है कि वह किसी अन्य Input के लिये सही Output का अनुमान लगा सके।



चलिये इसे एक उदाहरण से समझते है तो मान लिजिये आप के पास एक Bucket है जिसमे चार तरह के फल है सेब, केला, अंगुर ओर संतरा। अब क्योकि Supervised Model को हमने पेहले हि इन फलो के बारे मे बता दिया है कि कोन सा फल किस रंग का ओर उसकी Shape क्या है तो वह आसानी से इन सभी को अलग अलग कर देगा। तो इसे हम Supervised Learning कहते है क्योकि हमने माडल को पेहले हि Training Data से Train कर दिया था

तो इस प्रकार हम कह सकते है कि वह लर्निंग है जिसमे हम Model को Labelled या Training Data से Train करते है जो कि वास्तव मे Training Example; Consist करके रखता है, फिर यह माडल इस काबिल हो जाता है कि वह किसी भी तरह कि Problem या Situation को आसानी से Classify कर सकता है

Steps of Supervised Machine Learning

 किसी भी Supervised Learning कि problem को Solve करने के लिये हमे इन Steps को Follow करना होगा।
  1. Determine the type of training examples : सबसे पहले यह पता लगाना कि किस प्रकार का डेटा Training Set मे इस्तेमाल होगा।
  2. Gather a training set : फिर इनका Training Set तैयार करना, इसमे Input Objects के साथ मे उनके Output Objects भी शामिल किये जाते है।
  3. Determine the input feature representation of the learned function : फिर Function जिसे learn करना है उसके Input Feature Representation को determine करना मतलब Input Function मे इतनी पर्याप्त information होनी चाहिये कि उससे सही Output प्राप्त कर सके। उसमे न तो ज्यादा ओर न हि कम information होना चाहिये क्योकि अगर एसा होता है तो Model या तो सहि तरह से learn नहि कर पायेगा या बहुत ज्यादा हि सिख लेगा जिससे कि Error होने कि सम्भावना होती है।
  4. Determine the structure of the learned function and corresponding learning algorithm: फिर इस Function का Structure पता करना मतलब कि वह Support Vector Machine(SVM) को use करेगा या Decision Trees को।
  5. Complete the design : फिर इस पुरी design को complete करना।
  6. Run the learning algorithm on the gathered training set : तो अब हमे इस एल्गोरिथ्म को हमारे Training Set के लिये Run करना है।
  7. Evaluate the accuracy of the learned function : लर्निंग के बाद Resultant Function कि performance को measure करना।

Algorithms

सबसे ज्यादा use होने वाले कुछ एल्गोरिथम के नाम -
  • Support Vector Machines (SVM)
  • Linear Regression
  • Logistic Regression
  • Naive Bayes
  • Linear Discriminant Analysis
  • Decision Trees
  • K-Nearest Neighbor Algorithm(KNN)
  • Neural Networks (Multilayer perceptron)
  • Similarity

Engineers के द्वारा कई तरह के Algorithm; use किये जाते है जिन्हे दो Groups मे divide किया गया है। इन एल्गोरिथम को हि Supervised Learning कि methods कहते है। ये methods है - Regression और Classification । दोनो का main goal होता है कि input data मे Relationship या Structure को determine करे जो हमे correct output data को प्राप्त करवा सके और दोनो का Goal होता है कि वह attribute variable से dependent variable कि value पता कर सके । बस दोनो मे अंतर ये होता है कि Regression के लिये dependent attribute; numerical होता है और Classification के लिये dependent variable; Categorical होता है।



तो यहा पर एक सवाल आता है कि हमे कोन सी method कब use करना चाहिये?


Classification : इसमे Output Variables को Labels या Category कहा जाता है क्योकि इसमे output; categorical रुप मे होता है मतलब इसमे Output दो या दो से ज्यादा category मे divide हो जाता है जैसे कि किसी Email को दो तरह से categorize किया जा सकता है Spam ओर Not Spam, किसी Age ग्रुप को तीन भागो बच्चे, जवान ओर बुडे मे categorize करना। 



तो जब हमे किसी एसी प्रोब्लम को solve करना है जहा हमे categories या labels बनाने पडते है 

तो हम Classification Algorithms का उपयोग करते है 


Classification मे Discrete या Real-Valued; Input Variable हो सकते है।



Classification प्रोब्लम को दो प्रकार से बताया जा सकता है-
  1. Single Class Classification
  2. Multi Class Classification
Regression : इसमे Output Variables; Continuous Values होते है जैसे कि Amount, Volume या Size. जैसे किसी मकान कि किमत 5 लाख से 10 लाख के बिच हो सकती है तो Regression; continuous quantity को predict करने का Task है। 


Regression Problem को भी दो तरह से बताया जा सकता है -
  1. Linear Regression
  2. Non-Linear Regression