html
पाइथन में मल्टीपल लीनियर रिग्रेशन में महारत हासिल करना: एक व्यापक गाइड
पायथन में मल्टीपल लीनियर रिग्रेशन के साथ भविष्यसूचक विश्लेषिकी की शक्ति को खोलें। चाहे आप डेटा साइंस के उत्साही हों या एक अनुभवी पेशेवर, यह गाइड आपको पाइथन की मजबूत लाइब्रेरीज़ का उपयोग करके एक मल्टीपल लीनियर रिग्रेशन मॉडल बनाने, मूल्यांकन करने और अनुकूलित करने में मार्गदर्शन करती है। अपने डेटा मॉडलिंग कौशल को बढ़ाने और सूचनात्मक निर्णय लेने के लिए इसमें गोता लगाएं।
सामग्री सूची
- मल्टीपल लीनियर रिग्रेशन का परिचय
- डेटासेट को समझना
- पर्यावरण सेट करना
- डेटा पूर्वप्रसंस्करण
- डेटा विभाजित करना
- मल्टीपल लीनियर रिग्रेशन मॉडल बनाना
- पूर्वानुमान लगाना
- वास्तविक बनाम पूर्वानुमानित मानों की तुलना
- मॉडल के प्रदर्शन का मूल्यांकन करना
- निष्कर्ष
मल्टीपल लीनियर रिग्रेशन का परिचय
मल्टीपल लीनियर रिग्रेशन एक मौलिक सांख्यिकीय तकनीक है जिसका उपयोग दो या अधिक पूर्वानुमान वेरिएबल्स के आधार पर एक लक्षित वेरिएबल के परिणाम की भविष्यवाणी करने के लिए किया जाता है। सरल लीनियर रिग्रेशन के विपरीत, जो एकल स्वतंत्र वेरिएबल पर निर्भर करता है, मल्टीपल लीनियर रिग्रेशन डेटा संबंधों की अधिक व्यापक समझ प्रदान करता है, जिससे यह अर्थशास्त्र, चिकित्सा और इंजीनियरिंग जैसे क्षेत्रों में अनमोल बन जाता है।
डेटासेट को समझना
इस गाइड के लिए, हम मेडिकल कॉस्ट पर्सनल डेटासेट का उपयोग करेंगे, जिसे क्ग्ल पर यहां एक्सेस किया जा सकता है। इस डेटासेट में व्यक्तियों के चिकित्सा खर्चों और उन खर्चों को प्रभावित कर सकने वाले विभिन्न कारकों जैसे उम्र, लिंग, बीएमआई, बच्चों की संख्या, धूम्रपान स्थिति और क्षेत्र के बारे में जानकारी शामिल है।
नमूना डेटा:
age
sex
bmi
children
smoker
region
charges
19
female
27.9
0
yes
southwest
16884.924
18
male
33.77
1
no
southeast
1725.5523
28
male
33
3
no
southeast
4449.462
...
...
...
...
...
...
...
Charges हमारा लक्षित वेरिएबल है, जो किसी व्यक्ति को जारी किए जाने वाले चिकित्सा खर्चों का प्रतिनिधित्व करता है।
पर्यावरण सेट करना
डेटा विश्लेषण में गोता लगाने से पहले, सुनिश्चित करें कि आपके पास आवश्यक टूल्स इंस्टॉल हैं। हम निम्नलिखित का उपयोग करेंगे:
- पाइथन 3.x
- जुपिटर नोटबुक
- लाइब्रेरीज़: NumPy, Pandas, Matplotlib, Seaborn, Scikit-Learn
आप आवश्यक लाइब्रेरीज़ को pip
का उपयोग करके इंस्टॉल कर सकते हैं:
1
pip install numpy pandas matplotlib seaborn scikit-learn
डेटा पूर्वप्रसंस्करण
डेटा पूर्वप्रसंस्करण एक महत्वपूर्ण चरण है जिसमें कच्चे डेटा को साफ़ करना और मॉडलिंग के लिए उपयुक्त प्रारूप में बदलना शामिल है।
लाइब्रेरी आयात करना
आवश्यक पाइथन लाइब्रेरीज़ को आयात करके शुरू करें:
12345
import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snssns.set()
डेटा लोड करना
डेटासेट को एक पांडा डेटा फ्रेम में लोड करें:
1
data = pd.read_csv('S07_datasets_13720_18513_insurance.csv')
डेटा की खोज करना
डेटासेट की संरचना और सामग्री को समझें:
1
data.head()
आउटपुट:
age
sex
bmi
children
smoker
region
charges
19
female
27.9
0
yes
southwest
16884.924
18
male
33.77
1
no
southeast
1725.5523
28
male
33
3
no
southeast
4449.462
33
male
22.705
0
no
northwest
21984.47061
32
male
28.88
0
no
northwest
3866.8552
कैटेगोरिकल वेरिएबल्स का वन-हॉट एन्कोडिंग
मशीन लर्निंग मॉडलों को संख्यात्मक इनपुट की आवश्यकता होती है। इसलिए, हमें sex
, smoker
, और region
जैसे कैटेगोरिकल वेरिएबल्स को वन-हॉट एन्कोडिंग का उपयोग करके संख्यात्मक प्रारूप में बदलना होगा।
1234567891011
from sklearn.preprocessing import OneHotEncoderfrom sklearn.compose import ColumnTransformer # Define the column transformer with OneHotEncoder for categorical columnscolumnTransformer = ColumnTransformer( [('encoder', OneHotEncoder(), [1, 4, 5])], remainder='passthrough') # Apply the transformation to the feature setX = columnTransformer.fit_transform(X)
व्याख्या:
ColumnTransformer
निर्दिष्ट कॉलम पर ट्रांसफॉर्मर्स लागू करता है।
OneHotEncoder
कैटेगोरिकल वेरिएबल्स को बाइनरी वेक्टर में बदलता है।
remainder='passthrough'
सुनिश्चित करता है कि निर्दिष्ट नहीं किए गए कॉलम अपरिवर्तित रहें।
डेटा विभाजित करना
मॉडल के प्रदर्शन का प्रभावी ढंग से मूल्यांकन करने के लिए डेटासेट को प्रशिक्षण और परीक्षण सेट में विभाजित करें।
12345
from sklearn.model_selection import train_test_split X_train, X_test, y_train, y_test = train_test_split( X, Y, test_size=0.20, random_state=1)
पैरामीटर्स:
test_size=0.20
परीक्षण के लिए डेटा का 20% आवंटित करता है।
random_state=1
पुनरुत्पादन सुनिश्चित करता है।
मल्टीपल लीनियर रिग्रेशन मॉडल बनाना
डेटा तैयार हो जाने पर, रिग्रेशन मॉडल बनाने और प्रशिक्षण का समय है।
1234567
from sklearn.linear_model import LinearRegression # Initialize the modelmodel = LinearRegression() # Train the model on the training datamodel.fit(X_train, y_train)
मुख्य बिंदु:
- LinearRegression() स्किकिट-लर्न से लीनियर मॉडल को लागू करने का एक सरल तरीका है।
.fit()
मेथड प्रशिक्षण डेटा का उपयोग करके मॉडल को प्रशिक्षण देता है।
पूर्वानुमान लगाना
परीक्षण सेट के आधार पर खर्चों की भविष्यवाणी करने के लिए प्रशिक्षित मॉडल का उपयोग करें।
1
y_pred = model.predict(X_test)
वास्तविक बनाम पूर्वानुमानित मानों की तुलना
वास्तविक और पूर्वानुमानित मानों के बीच के अंतर का विश्लेषण करने से मॉडल के प्रदर्शन की अंतर्दृष्टि मिलती है।
1234
comparision = pd.DataFrame()comparision['Actual'] = y_testcomparision['Predicted'] = y_predcomparision
नमूना आउटपुट:
Actual
Predicted
1646.4297
4383.680900
11353.2276
12885.038922
8798.5930
12589.216532
...
...
5227.98875
6116.920574
प्रेक्षण:
- कुछ पूर्वानुमान वास्तविक मानों के निकट मेल खाते हैं।
- विवरण मॉडल में सुधार के क्षेत्रों को इंगित करते हैं।
मॉडल के प्रदर्शन का मूल्यांकन करना
मॉडल की सटीकता का मूल्यांकन R-स्क्वायर (R²) मीट्रिक का उपयोग करके करें, जो मॉडल द्वारा समझाई गई विचरण का अनुपात दर्शाता है।
1234
from sklearn.metrics import r2_score r2 = r2_score(y_test, y_pred)print(f"R² Score: {r2:.2f}")
आउटपुट:
1
R² Score: 0.76
व्याख्या:
- 0.76 का R² सुझाव देता है कि चिकित्सा खर्चों में लगभग 76% विचरण मॉडल द्वारा समझाया गया है।
- प्रॉमिसिंग होने के बावजूद, उच्च सटीकता प्राप्त करने के लिए सुधार की गुंजाइश है।
निष्कर्ष
पाइथन में एक मल्टीपल लीनियर रिग्रेशन मॉडल बनाने में कई महत्वपूर्ण चरण शामिल हैं, जैसे डेटा पूर्वप्रसंस्करण और कैटेगोरिकल वेरिएबल्स को एन्कोड करना, मॉडल को प्रशिक्षण देना और इसके प्रदर्शन का मूल्यांकन करना। इस गाइड ने मेडिकल कॉस्ट पर्सनल डेटासेट का उपयोग करके एक व्यापक वॉकथ्रू प्रदान किया, जिससे यह प्रदर्शित होता है कि भविष्यसूचक विश्लेषिकी के लिए पाइथन की शक्तिशाली लाइब्रेरीज़ का कैसे उपयोग किया जाए।
अगले चरण:
- फीचर इंजीनियरिंग: मॉडल के प्रदर्शन को बढ़ाने के लिए नए फीचर्स बनाने या मौजूदा फीचर्स को बदलने का पता लगाएं।
- मॉडल अनुकूलन: बेहतर सटीकता प्राप्त करने के लिए विभिन्न एल्गोरिदम या हाइपरपैरामीटर्स के साथ प्रयोग करें।
- ओवरफिटिंग का प्रबंधन: प्रशिक्षण डेटा को याद करने से रोकने के लिए क्रॉस-वैलिडेशन या रेग्युलराइजेशन जैसी तकनीकों को लागू करें।
अपने मॉडलों को और परिष्कृत करने और अपने डेटा से गहरी अंतर्दृष्टि प्राप्त करने के लिए इन रणनीतियों को अपनाएं। शुभ मॉडलिंग!
अतिरिक्त संसाधन
- जुपिटर नोटबुक: यहां पूर्ण नोटबुक एक्सेस करें *(वास्तविक लिंक से बदलें)*
- डेटासेट: क्ग्ल पर मेडिकल कॉस्ट पर्सनल डेटासेट
- Scikit-Learn दस्तावेज़ीकरण: लीनियर रिग्रेशन
किवर्ड्स: पायथन में मल्टीपल लीनियर रिग्रेशन, डेटा पूर्वप्रसंस्करण, वन-हॉट एन्कोडिंग, Scikit-Learn, मॉडल मूल्यांकन, R-स्क्वायर, भविष्यसूचक विश्लेषिकी, चिकित्सा खर्च पूर्वानुमान, पायथन डेटा साइंस, मशीन लर्निंग ट्यूटोरियल