Introduction of Supervised Learning Algorithms

Supervised Learning वह तकनीक है जिसमें मॉडल को ऐसे डेटा पर प्रशिक्षित किया जाता है जिसमें इनपुट के साथ-साथ सही आउटपुट (label) भी होता है।
उदाहरण:

Input (Features)Output (Label)
उम्र = 30, वेतन = ₹40kलोन स्वीकृत (Yes)

अब हम ऐसे प्रमुख एल्गोरिद्म्स को समझेंगे जो Supervised Learning में सबसे ज़्यादा उपयोग होते हैं।


🔷 🔹 Why Supervised Algorithms?

FeatureBenefit
Input-output mapping definedआसानी से train और evaluate किया जा सकता है
Classification & Regression दोनों के लिएबहुत versatile models उपलब्ध हैं
Scalabilityछोटे से बड़े डेटासेट तक लागू होता है

🔶 Supervised Learning Algorithms के दो प्रमुख प्रकार:

प्रकारउपयोग क्षेत्रउदाहरण
ClassificationLabel पहचाननाEmail Spam, Disease Detection
RegressionValue predict करनाHouse Price, Stock Prediction

🔷 1. Linear Regression (रेखीय प्रतिगमन)

📌 उपयोग:

Continuous Value Prediction
(जैसे घर की कीमत, तापमान)

🧮 फॉर्मूला:

y = w*x + b

✅ Python Example:

from sklearn.linear_model import LinearRegression

model = LinearRegression()
model.fit(X_train, y_train)
y_pred = model.predict(X_test)

🔷 2. Logistic Regression (तर्कशक्ति प्रतिगमन)

📌 उपयोग:

Binary Classification (Yes/No)

✅ Output:

Probability (0 to 1), फिर threshold लगाकर decision

from sklearn.linear_model import LogisticRegression

model = LogisticRegression()
model.fit(X_train, y_train)
y_pred = model.predict(X_test)

🔷 3. Decision Tree

📌 उपयोग:

Classification और Regression दोनों के लिए
डाटा को बार-बार विभाजित करके निर्णय लेना।

from sklearn.tree import DecisionTreeClassifier

model = DecisionTreeClassifier()
model.fit(X_train, y_train)

🔷 4. Random Forest

📌 क्या है?

Multiple Decision Trees का ensemble
Voting या averaging के ज़रिए output देता है।

from sklearn.ensemble import RandomForestClassifier

model = RandomForestClassifier(n_estimators=100)
model.fit(X_train, y_train)

🔷 5. Support Vector Machine (SVM)

📌 उपयोग:

High-dimensional datasets में classification के लिए बेहतरीन

from sklearn.svm import SVC

model = SVC(kernel='linear')
model.fit(X_train, y_train)

🔷 6. K-Nearest Neighbors (KNN)

📌 उपयोग:

Instance-based learning — training में कोई model नहीं, prediction के समय नज़दीकी K-पड़ोसियों को देखता है।

from sklearn.neighbors import KNeighborsClassifier

model = KNeighborsClassifier(n_neighbors=3)
model.fit(X_train, y_train)

🔷 7. Naive Bayes

📌 उपयोग:

Text classification जैसे spam detection
(Statistical probability आधारित)

from sklearn.naive_bayes import GaussianNB

model = GaussianNB()
model.fit(X_train, y_train)

📊 Summary Table:

AlgorithmTypeStrengthsUse Case
Linear RegressionRegressionSimple, fastPrice prediction
Logistic RegressionClassificationProbabilistic outputSpam detection
Decision TreeBothInterpretabilityCredit approval
Random ForestBothAccuracy, handles overfittingMedical diagnosis
SVMClassificationWorks in high dimensionsFace recognition
KNNClassificationNo training, easy to implementPattern recognition
Naive BayesClassificationFast, good for textSentiment analysis

📝 Practice Questions:

  1. Linear Regression और Logistic Regression में क्या अंतर है?
  2. Random Forest को Decision Tree से बेहतर क्यों माना जाता है?
  3. SVM किस तरह से Classification करता है?
  4. KNN में K का चुनाव कैसे किया जाता है?
  5. Naive Bayes कब अच्छा और कब बेकार perform करता है?