किसी भी मशीन लर्निंग मॉडल की सफलता इस बात पर निर्भर करती है कि आपने उसे कितना साफ और संतुलित डेटा दिया है।
गंदा डेटा = ग़लत मॉडल
इसलिए हमें सबसे पहले डेटा को साफ (clean) करना और फिर संतुलित (normalize) करना होता है।
🔷 🔹 Why Clean & Normalize Data?
Reason | Benefit |
---|---|
Missing/Error हटाना | Training के दौरान performance में सुधार |
Scaling balance करना | मॉडल को सभी features को समान रूप से सीखने देना |
Bias कम करना | एक feature का ज़रूरत से ज़्यादा प्रभाव न हो |
🔶 1. डेटा क्लीनिंग (Data Cleaning)
🧹 क्या होता है?
डेटा से गलत, अधूरा या अव्यवस्थित जानकारी हटाना या सुधारना।
✅ मुख्य कार्य:
Technique | Use Case |
---|---|
Missing Value Handling | Null, NaN भरना या हटाना |
Outlier Removal | बहुत ज़्यादा/कम values हटाना |
Duplicate Removal | दोहराए हुए rows हटाना |
Type Conversion | String → Int/Float बदलना |
Inconsistent Label Fixing | जैसे “Male”, “male”, “MALE” को एक जैसा बनाना |
🛠️ Python/Pandas Code:
import pandas as pd
df = pd.read_csv("data.csv")
# Null values को भरना
df.fillna(df.mean(), inplace=True)
# Duplicates हटाना
df.drop_duplicates(inplace=True)
# गलत values हटाना
df = df[df["age"] > 0]
🔶 2. नॉर्मलाइजेशन (Normalization)
📌 क्या होता है?
सभी numerical features को एक समान स्केल (जैसे 0 से 1) पर लाना ताकि कोई feature ज़्यादा हावी न हो।
उदाहरण: अगर एक feature की वैल्यू 1-10 के बीच है और दूसरे की 1000-100000, तो दूसरा model को ज्यादा influence करेगा। यही imbalance को normalization से हटाया जाता है।
✅ प्रमुख तरीके:
तकनीक | विवरण | फॉर्मूला |
---|---|---|
Min-Max Scaling | 0 से 1 के बीच स्केल करता है | X' = (X - min) / (max - min) |
Z-Score Standardization | Mean को 0 और Std को 1 बनाता है | X' = (X - μ) / σ |
Robust Scaling | Median और IQR पर आधारित होता है | X' = (X - median) / IQR |
🛠️ Sklearn Code:
from sklearn.preprocessing import MinMaxScaler
scaler = MinMaxScaler()
scaled = scaler.fit_transform(df[['age', 'salary']])
📊 Summary Table:
स्टेप | उद्देश्य | टूल/तकनीक |
---|---|---|
Missing Values | NaN भरना/हटाना | fillna(), dropna() |
Outliers | मॉडल accuracy बचाना | IQR, Z-score |
Scaling | सभी features को बराबरी देना | MinMaxScaler, StandardScaler |
Duplicates | डाटा दोहराव हटाना | drop_duplicates() |
Type Conversion | डेटा को सही फॉर्मेट में लाना | astype(), to_numeric() |
📝 Practice Questions:
- Missing value को handle करने के कौन-कौन से तरीके होते हैं?
- Z-score और Min-Max scaling में क्या अंतर है?
- Robust Scaling कब उपयोगी होता है?
fillna()
औरdropna()
में अंतर बताइए।- Normalization की ज़रूरत क्यों होती है?