Scikit-learn, जिसे आमतौर पर sklearn के नाम से जाना जाता है, Python में एक लाइब्रेरी है जिसका उपयोग मशीन लर्निंग एल्गोरिदम को लागू करने के लिए किया जाता है। यह शक्तिशाली और मजबूत है, क्योंकि यह सांख्यिकीय मॉडलिंग करने के लिए विभिन्न प्रकार के टूल प्रदान करता है।
इसमें वर्गीकरण, रिग्रेशन, क्लस्टरिंग, डायमेंशनलिटी रिडक्शन, और बहुत कुछ शामिल है, एक शक्तिशाली और स्थिर Python इंटरफेस की मदद से। यह Numpy, SciPy और Matplotlib लाइब्रेरी पर निर्मित है।
मशीन लर्निंग एल्गोरिदम को इनपुट डेटा पास करने से पहले, इसे ट्रेनिंग और टेस्ट डेटासेट में विभाजित करना होता है।
एक बार डेटा चुने गए मॉडल में फिट हो जाने पर, इनपुट डेटासेट इस मॉडल पर प्रशिक्षित होता है। जब प्रशिक्षण होता है, तो मॉडल डेटा से सीखता है।
यह नए डेटा पर सामान्यीकरण करना भी सीखता है। टेस्ट डेटासेट का उपयोग मॉडल के प्रशिक्षण के दौरान नहीं किया जाएगा।
एक बार सभी हाइपरपैरामीटर्स ट्यून हो जाने और इष्टतम वजन सेट हो जाने पर, टेस्ट डेटासेट मशीन लर्निंग एल्गोरिदम को प्रदान किया जाता है।
यह वह डेटासेट है जिसका उपयोग यह जांचने के लिए किया जाता है कि एल्गोरिदम नए डेटा पर कितनी अच्छी तरह सामान्यीकरण करता है। आइए देखते हैं कि scikit-learn लाइब्रेरी का उपयोग करके डेटा को कैसे विभाजित किया जा सकता है।
उदाहरण
from sklearn.datasets import load_iris
my_data = load_iris()
X = my_data.data
y = my_data.target
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(
X, y, test_size=0.2, random_state=2
)
print("ट्रेनिंग डेटा के फीचर्स के आयाम")
print(X_train.shape)
print("टेस्ट डेटा के फीचर्स के आयाम")
print(X_test.shape)
print("ट्रेनिंग डेटा के टारगेट वैल्यू के आयाम")
print(y_train.shape)
print("टेस्ट डेटा के टारगेट वैल्यू के आयाम")
print(y_test.shape)आउटपुट
ट्रेनिंग डेटा के फीचर्स के आयाम (120, 4) टेस्ट डेटा के फीचर्स के आयाम (30, 4) ट्रेनिंग डेटा के टारगेट वैल्यू के आयाम (120,) टेस्ट डेटा के टारगेट वैल्यू के आयाम (30,)
व्याख्या
- आवश्यक पैकेज आयात किए गए हैं।
- इसके लिए आवश्यक डेटासेट भी वातावरण में लोड किया गया है।
- डेटासेट से फीचर्स और टारगेट वैल्यू को अलग किया गया है।
- ट्रेनिंग और टेस्ट डेटा को क्रमशः 80 प्रतिशत और 20 प्रतिशत के अनुपात में विभाजित किया गया है।
- इसका मतलब है कि 20 प्रतिशत डेटा का उपयोग यह जांचने के लिए किया जाएगा कि मॉडल नए डेटा पर कितनी अच्छी तरह सामान्यीकरण करता है।
- ये विभाजन, डेटा के आयामों के साथ, कंसोल पर प्रिंट किए जाते हैं।