पायथन ट्यूटोरियल

अजगर घर पायथन परिचय पायथन आरंभ करें पायथन सिंटेक्स पायथन टिप्पणियाँ पायथन वेरिएबल्स पायथन डेटा प्रकार अजगर संख्या पायथन कास्टिंग पायथन स्ट्रिंग्स पायथन बूलियन्स पायथन ऑपरेटर्स पायथन सूचियाँ पायथन टुपल्स पायथन सेट पायथन डिक्शनरी अजगर अगर... और पाइथन जबकि लूप्स लूप्स के लिए पायथन पायथन कार्य अजगर लैम्ब्डा पायथन एरेज़ पायथन क्लासेस/ऑब्जेक्ट्स पायथन इनहेरिटेंस पायथन इटरेटर्स पायथन स्कोप पायथन मॉड्यूल अजगर तिथियाँ पायथन मठ पायथन JSON पायथन रेगेक्स पायथन पीआईपी अजगर का प्रयास करें... को छोड़कर पायथन उपयोगकर्ता इनपुट पायथन स्ट्रिंग स्वरूपण

फ़ाइल रखरखाव

पायथन फ़ाइल हैंडलिंग पायथन फ़ाइलें पढ़ें पायथन लिखें/फाइलें बनाएं पायथन फ़ाइलें हटाएं

पायथन मॉड्यूल

न्यूमपी ट्यूटोरियल पांडा वॉकथ्रू स्काइप ट्यूटोरियल

पायथन माटप्लोटलिब

माटप्लोटलिब परिचय माटप्लोटलिब आरंभ करें माटप्लोटलिब पाइप्लॉट माटप्लोटलिब प्लॉटिंग माटप्लोटलिब मार्कर माटप्लोटलिब लाइन माटप्लोटलिब लेबल माटप्लोटलिब ग्रिड माटप्लोटलिब सबप्लॉट्स माटप्लोटलिब स्कैटर माटप्लोटलिब बार्स माटप्लोटलिब हिस्टोग्राम Matplotlib पाई चार्ट

यंत्र अधिगम

शुरू करना मध्यमान मध्यम मोड मानक विचलन प्रतिशतता डेटा वितरण सामान्य डेटा वितरण स्कैटर प्लॉट रेखीय प्रतिगमन बहुपद प्रतिगमन बहु - प्रतिगमन स्केल ट्रेन / टेस्ट निर्णय वृक्ष

पायथन मायएसक्यूएल

MySQL प्रारंभ करें MySQL डेटाबेस बनाएँ MySQL तालिका बनाएँ MySQL सम्मिलित करें MySQL चुनें MySQL कहाँ MySQL ऑर्डर बाय MySQL हटाएं MySQL ड्रॉप टेबल MySQL अद्यतन MySQL सीमा मायएसक्यूएल जॉइन

पायथन मोंगोडीबी

मोंगोडीबी आरंभ करें MongoDB डेटाबेस बनाएँ MongoDB संग्रह बनाएँ मोंगोडीबी डालें मोंगोडीबी खोजें मोंगोडीबी क्वेरी मोंगोडीबी सॉर्ट मोंगोडीबी हटाएं MongoDB ड्रॉप संग्रह मोंगोडीबी अपडेट मोंगोडीबी सीमा

पायथन संदर्भ

पायथन अवलोकन पायथन बिल्ट-इन फंक्शन्स पायथन स्ट्रिंग तरीके पायथन सूची के तरीके पायथन डिक्शनरी के तरीके पायथन टुपल तरीके पायथन सेट मेथड्स पायथन फ़ाइल तरीके पायथन कीवर्ड पायथन अपवाद पायथन शब्दावली

मॉड्यूल संदर्भ

यादृच्छिक मॉड्यूल अनुरोध मॉड्यूल सांख्यिकी मॉड्यूल गणित मॉड्यूल सीमैथ मॉड्यूल

पायथन कैसे करें

सूची डुप्लिकेट निकालें एक स्ट्रिंग को उल्टा करें दो नंबर जोड़ें

पायथन उदाहरण

पायथन उदाहरण पायथन कंपाइलर अजगर व्यायाम अजगर प्रश्नोत्तरी पायथन प्रमाणपत्र

मशीन लर्निंग - ट्रेन/टेस्ट


अपने मॉडल का मूल्यांकन करें

मशीन लर्निंग में हम कुछ घटनाओं के परिणाम की भविष्यवाणी करने के लिए मॉडल बनाते हैं, जैसे पिछले अध्याय में जहां हमने एक कार के CO2 उत्सर्जन की भविष्यवाणी की थी जब हम वजन और इंजन के आकार को जानते थे।

यह मापने के लिए कि क्या मॉडल काफी अच्छा है, हम ट्रेन/टेस्ट नामक एक विधि का उपयोग कर सकते हैं।


ट्रेन / टेस्ट क्या है

ट्रेन/टेस्ट आपके मॉडल की सटीकता को मापने का एक तरीका है।

इसे ट्रेन/टेस्ट कहा जाता है क्योंकि आप डेटा सेट को दो सेटों में विभाजित करते हैं: एक प्रशिक्षण सेट और एक परीक्षण सेट।

प्रशिक्षण के लिए 80% और परीक्षण के लिए 20%।

आप प्रशिक्षण सेट का उपयोग करके मॉडल को प्रशिक्षित करते हैं।

आप परीक्षण सेट का उपयोग करके मॉडल का परीक्षण करते हैं।

मॉडल को प्रशिक्षित करने का अर्थ है मॉडल बनाना

मॉडल का परीक्षण करें का अर्थ है मॉडल की सटीकता का परीक्षण करना।


डेटा सेट के साथ प्रारंभ करें

उस डेटा सेट से शुरू करें जिसका आप परीक्षण करना चाहते हैं।

हमारा डेटा सेट एक दुकान में 100 ग्राहकों और उनकी खरीदारी की आदतों को दिखाता है।

उदाहरण

import numpy
import matplotlib.pyplot as plt
numpy.random.seed(2)

x = numpy.random.normal(3, 1, 100)
y = numpy.random.normal(150, 40, 100) / x

plt.scatter(x, y)
plt.show()

परिणाम:

एक्स अक्ष खरीदारी करने से पहले मिनटों की संख्या का प्रतिनिधित्व करता है।

y अक्ष खरीद पर खर्च की गई राशि का प्रतिनिधित्व करता है।



ट्रेन/टेस्ट में विभाजित करें

प्रशिक्षण सेट मूल डेटा के 80% का यादृच्छिक चयन होना चाहिए

परीक्षण सेट शेष 20% होना चाहिए

train_x = x[:80]
train_y = y[:80]

test_x = x[80:]
test_y = y[80:]


प्रशिक्षण सेट प्रदर्शित करें

प्रशिक्षण सेट के साथ समान स्कैटर प्लॉट प्रदर्शित करें:

उदाहरण

plt.scatter(train_x, train_y)
plt.show()

परिणाम:

यह मूल डेटा सेट जैसा दिखता है, इसलिए यह एक उचित चयन प्रतीत होता है:


परीक्षण सेट प्रदर्शित करें

यह सुनिश्चित करने के लिए कि परीक्षण सेट पूरी तरह से अलग नहीं है, हम परीक्षण सेट पर भी एक नज़र डालेंगे।

उदाहरण

plt.scatter(test_x, test_y)
plt.show()

परिणाम:

परीक्षण सेट भी मूल डेटा सेट जैसा दिखता है:


डेटा सेट फिट करें

डेटा सेट कैसा दिखता है? मेरी राय में मुझे लगता है कि सबसे उपयुक्त बहुपद प्रतिगमन होगा , तो आइए हम बहुपद प्रतिगमन की एक रेखा खींचते हैं।

डेटा बिंदुओं के माध्यम से एक रेखा खींचने के लिए, हम plot()matplotlib मॉड्यूल की विधि का उपयोग करते हैं:

उदाहरण

डेटा बिंदुओं के माध्यम से एक बहुपद प्रतिगमन रेखा बनाएं:

import numpy
import matplotlib.pyplot as plt
numpy.random.seed(2)

x = numpy.random.normal(3, 1, 100)
y = numpy.random.normal(150, 40, 100) / x

train_x = x[:80]
train_y = y[:80]

test_x = x[80:]
test_y = y[80:]

mymodel = numpy.poly1d(numpy.polyfit(train_x, train_y, 4))

myline = numpy.linspace(0, 6, 100)

plt.scatter(train_x, train_y)
plt.plot(myline, mymodel(myline))
plt.show()

परिणाम:

परिणाम एक बहुपद प्रतिगमन को फिट करने वाले डेटा सेट के मेरे सुझाव का समर्थन कर सकता है, भले ही यह हमें कुछ अजीब परिणाम देगा यदि हम डेटा सेट के बाहर मूल्यों की भविष्यवाणी करने का प्रयास करते हैं। उदाहरण: रेखा इंगित करती है कि एक ग्राहक दुकान में 6 मिनट बिताकर 200 की खरीदारी करेगा। यह संभवतः ओवरफिटिंग का संकेत है।

लेकिन आर-स्क्वेर्ड स्कोर का क्या? आर-स्क्वेर्ड स्कोर इस बात का एक अच्छा संकेतक है कि मेरा डेटा सेट मॉडल को कितनी अच्छी तरह फिट कर रहा है।


R2

R2 याद रखें, जिसे R-वर्ग के रूप में भी जाना जाता है?

यह x अक्ष और y अक्ष के बीच संबंध को मापता है, और मान 0 से 1 तक होता है, जहां 0 का अर्थ कोई संबंध नहीं है, और 1 का अर्थ पूरी तरह से संबंधित है।

स्केलेर मॉड्यूल में एक विधि है जिसे कहा जाता r2_score() है जो हमें इस संबंध को खोजने में मदद करेगी।

इस मामले में हम एक ग्राहक के दुकान में रहने के मिनटों और उनके द्वारा खर्च किए गए पैसे के बीच के संबंध को मापना चाहेंगे।

उदाहरण

एक बहुपद प्रतिगमन में मेरा प्रशिक्षण डेटा कितनी अच्छी तरह फिट बैठता है?

import numpy
from sklearn.metrics import r2_score
numpy.random.seed(2)

x = numpy.random.normal(3, 1, 100)
y = numpy.random.normal(150, 40, 100) / x

train_x = x[:80]
train_y = y[:80]

test_x = x[80:]
test_y = y[80:]

mymodel = numpy.poly1d(numpy.polyfit(train_x, train_y, 4))

r2 = r2_score(train_y, mymodel(train_x))

print(r2)

नोट: परिणाम 0.799 दर्शाता है कि एक ठीक संबंध है।

परीक्षण सेट में लाओ

अब हमने एक मॉडल बनाया है जो ठीक है, कम से कम जब प्रशिक्षण डेटा की बात आती है।

अब हम परीक्षण डेटा के साथ मॉडल का परीक्षण करना चाहते हैं, यह देखने के लिए कि क्या हमें वही परिणाम मिलता है।

उदाहरण

आइए परीक्षण डेटा का उपयोग करते समय R2 स्कोर खोजें:

import numpy
from sklearn.metrics import r2_score
numpy.random.seed(2)

x = numpy.random.normal(3, 1, 100)
y = numpy.random.normal(150, 40, 100) / x

train_x = x[:80]
train_y = y[:80]

test_x = x[80:]
test_y = y[80:]

mymodel = numpy.poly1d(numpy.polyfit(train_x, train_y, 4))

r2 = r2_score(test_y, mymodel(test_x))

print(r2)

नोट: परिणाम 0.809 से पता चलता है कि मॉडल परीक्षण सेट में भी फिट बैठता है, और हमें विश्वास है कि हम भविष्य के मूल्यों की भविष्यवाणी करने के लिए मॉडल का उपयोग कर सकते हैं।


मूल्यों की भविष्यवाणी करें

अब जब हमने यह स्थापित कर लिया है कि हमारा मॉडल ठीक है, तो हम नए मूल्यों की भविष्यवाणी करना शुरू कर सकते हैं।

उदाहरण

एक खरीददार ग्राहक कितना पैसा खर्च करेगा, अगर वह 5 मिनट के लिए दुकान में रहता है?

print(mymodel(5))

उदाहरण ने ग्राहक को 22.88 डॉलर खर्च करने की भविष्यवाणी की, जैसा कि आरेख के अनुरूप लगता है: