मशीन लर्निंग के लिए रैखिक प्रतिगमन कैसे लागू करें?



यह आलेख विभिन्न शब्दावली के साथ मशीन सीखने के लिए रैखिक प्रतिगमन की अवधारणा को कवर करता है और रैखिक प्रतिगमन को लागू करने के लिए उपयोग का मामला है।

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

रिग्रेशन क्या है?

प्रतिगमन का मुख्य लक्ष्य विशेषता चर के गुच्छा से आश्रित विशेषताओं का अनुमान लगाने के लिए एक कुशल मॉडल का निर्माण है। एक प्रतिगमन समस्या तब होती है जब आउटपुट चर या तो वास्तविक होता है या एक निरंतर मूल्य यानी वेतन, वजन, क्षेत्र, आदि।





हम प्रतिगमन को एक सांख्यिकीय साधन के रूप में भी परिभाषित कर सकते हैं जिसका उपयोग आवास, निवेश, आदि जैसे अनुप्रयोगों में किया जाता है। इसका उपयोग आश्रित चर और स्वतंत्र चर के गुच्छा के बीच संबंधों की भविष्यवाणी करने के लिए किया जाता है। आइए हम विभिन्न प्रकार के प्रतिगमन तकनीकों पर एक नज़र डालें।

मशीन लर्निंग में उदाहरण-रेखीय प्रतिगमन - edureka

प्रतिगमन के प्रकार

निम्नलिखित प्रतिगमन के प्रकार हैं।



  1. सरल रैखिक प्रतिगमन
  2. बहुपद प्रतिगमन
  3. वेक्टर प्रतिगमन का समर्थन करें
  4. निर्णय वृक्ष प्रतिगमन
  5. यादृच्छिक वन प्रतिगमन

सरल रैखिक प्रतिगमन

सबसे दिलचस्प और सामान्य प्रतिगमन तकनीक में से एक सरल रैखिक प्रतिगमन है। इसमें, हम स्वतंत्र चर के आधार पर एक आश्रित चर के परिणाम की भविष्यवाणी करते हैं, चर के बीच संबंध रैखिक है। इसलिए, शब्द रैखिक प्रतिगमन।

बहुपद प्रतिगमन

इस प्रतिगमन तकनीक में, हम मूल विशेषताओं को दी गई डिग्री की बहुपद विशेषताओं में बदल देते हैं और फिर उस पर प्रतिगमन करते हैं।

वेक्टर प्रतिगमन का समर्थन करें

के लिये प्रतिगमन या एसवीआर, हम अधिकतम मार्जिन के साथ एक हाइपरप्लेन की पहचान करते हैं जैसे कि अधिकतम डेटा बिंदु उन मार्जिन के भीतर हैं। यह सपोर्ट वेक्टर मशीन वर्गीकरण एल्गोरिदम से काफी मिलता-जुलता है।



निर्णय वृक्ष प्रतिगमन

सेवा मेरे प्रतिगमन और दोनों के लिए इस्तेमाल किया जा सकता है । प्रतिगमन के मामले में, हम मानक विचलन को कम करके विभाजन नोड की पहचान करने के लिए ID3 एल्गोरिथ्म (Iterative Dichotomiser 3) का उपयोग करते हैं।

यादृच्छिक वन प्रतिगमन

यादृच्छिक वन प्रतिगमन में, हम कई निर्णय वृक्ष प्रतिगमन की भविष्यवाणियों को इकट्ठा करते हैं। अब जब हम विभिन्न प्रकार के प्रतिगमन के बारे में जानते हैं, तो आइए सरल रेखीय प्रतिगमन पर विस्तार से विचार करें।

रैखिक प्रतिगमन क्या है?

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

रैखिक प्रतिगमन एल्गोरिथ्म कैसे काम करता है, इस पर आगे बढ़ने से पहले, आइए हम सरल रैखिक प्रतिगमन में कुछ महत्वपूर्ण शब्दावली पर एक नज़र डालें।

रैखिक प्रतिगमन शब्दावली

रैखिक प्रतिगमन एल्गोरिथ्म पर आगे बढ़ने से पहले निम्नलिखित शब्दावली से परिचित होना महत्वपूर्ण है।

लागत कार्य

सबसे अच्छी फिट लाइन नीचे दिए गए रेखीय समीकरण पर आधारित हो सकती है।

  • आश्रित चर जिसका पूर्वानुमान लगाया जाना है, उसे Y द्वारा निरूपित किया जाता है।
  • एक रेखा जो y- अक्ष को स्पर्श करती है उसे इंटरसेप्ट b द्वारा निरूपित किया जाता है
  • बीएकलाइन की ढलान है, x स्वतंत्र चर का प्रतिनिधित्व करता है जो Y की भविष्यवाणी को निर्धारित करता है।
  • परिणामी भविष्यवाणी में त्रुटि ई द्वारा चिह्नित है।

लागत समारोह बी के लिए सर्वोत्तम संभव मान प्रदान करता हैऔर बीएकडेटा बिंदुओं के लिए सबसे उपयुक्त लाइन बनाने के लिए। हम इस समस्या को बी के लिए सर्वोत्तम मूल्य प्राप्त करने के लिए एक न्यूनतम समस्या में परिवर्तित करके करते हैंऔर बीएक। इस समस्या में वास्तविक मूल्य और अनुमानित मूल्य के बीच त्रुटि को कम किया जाता है।

हम त्रुटि को कम करने के लिए ऊपर दिए गए फ़ंक्शन को चुनते हैं। हम त्रुटि अंतर को वर्ग करते हैं और सभी डेटा बिंदुओं पर त्रुटि का योग करते हैं, कुल डेटा बिंदुओं के बीच विभाजन। फिर, उत्पादित मान सभी डेटा बिंदुओं पर औसत वर्ग त्रुटि प्रदान करता है।

इसे MSE (मीन स्क्वेरड एरर) के रूप में भी जाना जाता है, और हम b के मूल्यों को बदलते हैंऔर बीएकताकि MSE का मूल्य न्यूनतम हो जाए।

ढतला हुआ वंश

रैखिक प्रतिगमन को समझने के लिए अगला महत्वपूर्ण शब्दावली है ढतला हुआ वंश। यह b को अपडेट करने का एक तरीका हैऔर बीएकमूल्यों को कम करने के लिए MSE। इसके पीछे का विचार बी को पुनरावृत्त रखना हैऔर बीएकमूल्यों जब तक हम न्यूनतम करने के लिए एमएसई कम नहीं है।

अद्यतन करने के लिए बीऔर बीएक, हम लागत समारोह से ग्रेडिएंट लेते हैं। इन ग्रेडिएंट को खोजने के लिए, हम b के संबंध में आंशिक व्युत्पन्न लेते हैंऔर बीएक। ये आंशिक डेरिवेटिव ग्रेडिएंट हैं और इसका उपयोग बी के मूल्यों को अपडेट करने के लिए किया जाता हैऔर बीएक

एक छोटी सी सीखने की दर न्यूनतम के करीब ले जाती है, लेकिन सीखने की दर में अधिक समय लगता है। लिया गया समय जल्द ही है, लेकिन न्यूनतम मूल्य का निरीक्षण करने का एक मौका है। अब जब हम रैखिक प्रतिगमन में शब्दावली के माध्यम से हैं, तो आइए मशीन सीखने के लिए रैखिक प्रतिगमन के कुछ फायदे और नुकसान पर एक नज़र डालते हैं।

फायदे और नुकसान

लाभ नुकसान
रैखिक प्रतिगमन रेखीय रूप से वियोज्य डेटा के लिए असाधारण अच्छा प्रदर्शन करता हैनिर्भर और स्वतंत्र चर के बीच रैखिकता की धारणा
लागू करने में आसान, व्याख्या और प्रशिक्षण के लिए कुशलयह अक्सर शोर और ओवरफिटिंग का खतरा होता है
यह बहुत ही कम तकनीक, नियमितीकरण, और क्रॉस-मान्यता का उपयोग करके बहुत अच्छी तरह से संभालता हैरैखिक प्रतिगमन आउटलेर्स के लिए काफी संवेदनशील है
एक और लाभ एक विशिष्ट डेटा सेट से परे एक्सट्रपलेशन हैयह बहुरंगीता से ग्रस्त है

रैखिक प्रतिगमन उपयोग के मामले

  • बिक्री पूर्वानुमान

  • संकट विश्लेषण

  • आवास अनुप्रयोग कीमतों और अन्य कारकों की भविष्यवाणी करने के लिए

  • स्टॉक मूल्य, निवेश मूल्यांकन आदि की भविष्यवाणी करने के लिए वित्त अनुप्रयोग

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

इसे ध्यान में रखते हुए, हम एक उपयोग के मामले पर एक नज़र डालते हैं।

केस का उपयोग करें - रैखिक प्रतिगमन को लागू करना

प्रक्रिया निम्नलिखित चरणों में होती है:

  1. डेटा लोड हो रहा है
  2. डेटा की खोज
  3. डेटा स्लाइसिंग
  4. ट्रेन और स्प्लिट डेटा
  5. मॉडल जनरेट करें
  6. सटीकता का मूल्यांकन करें

आइए हम रैखिक प्रतिगमन को लागू करने के प्रत्येक चरण के विवरण में शामिल हों।

1. डेटा लोड हो रहा है

हम बुनियादी मधुमेह डेटा सेट के साथ शुरू कर सकते हैं जो पहले से ही स्केलेर (स्किकिट-लर्न) डेटा सेट मॉड्यूल में मौजूद है जो रैखिक प्रतिगमन के साथ हमारी यात्रा शुरू करने के लिए मॉड्यूल सेट करता है।

स्केलेर इंपोर्ट डेटासेट्स डिसीज़ से = डेटासेट.लोड_डायबिटीज़ () प्रिंट (बीमारी)

आउटपुट:

2. डेटा की खोज

डेटा लोड करने के बाद, हम निम्नलिखित कोड का उपयोग करके केवल लेबल की जाँच करके खोज शुरू कर सकते हैं।

प्रिंट (रोग.की) ()

आउटपुट:

उपरोक्त कोड डेटा सेट से सभी लेबल देता है, इसके बाद, हम डेटा को स्लाइस कर सकते हैं ताकि हम अंत में लाइन को प्लॉट कर सकें। हम सभी डेटा बिंदुओं का उपयोग भी करेंगे, अभी के लिए, हम डेटा से कॉलम 2 को स्लाइस करेंगे।

np disease_X = disease.data [:, np.newaxis, 2] प्रिंट (रोग_ x) के रूप में सुन्न आयात करें

आउटपुट:

इस कदम के बाद, हम डेटा को ट्रेन और परीक्षण सेट में विभाजित करेंगे।

3. डेटा का विभाजन

disease_X_train = disease_X [: - 30] disease_X_test = रोग_X [-20:] रोग_Y_train = रोग। [] - 30] रोग_Y_test = रोग.target - -20:]

अगले भाग में मॉडल तैयार करना शामिल है, जिसमें स्केलेर से रैखिक_मॉडल आयात करना शामिल है।

4. मॉडल बनाना

स्केलेर आयात से linear_model reg = linear_model.LinearRegression () reg.fit (रोग_X_train, रोग_Y_train) y_predict = reg.predict (रोग_X_test)

मॉडल की सटीकता का मूल्यांकन करने के लिए, हम स्किकिट-लर्न से औसत चुकता त्रुटि का उपयोग करेंगे।

5. मूल्यांकन

सटीकता = माध्य_सहजानी_रोर (रोग_यंत्र, y_predict,) प्रिंट (सटीकता) वजन = reg.coef_ अवरोधन = reg.intercept_ प्रिंट (भार, अवरोधन)

आउटपुट:

ग्राफ़ पर डेटा बिंदु कैसे दिखते हैं, इस पर अधिक स्पष्ट होने के लिए, हम ग्राफ़ को भी प्लॉट करते हैं।

plt.scatter (disease_X_test, disease_Y_test) plt.plot (रोग_X_test, y_predict) plt.show () के रूप में आयात matplotlib.pyplot

आउटपुट:

इस परिदृश्य में अधिक सटीक मॉडल प्राप्त करने के लिए, हम केवल कॉलम 2 के बजाय पूरे डेटा का उपयोग कर सकते हैं। जो नीचे दिखाए गए अनुसार सटीकता देगा:

# उपरोक्त कोड में थोड़ा बदलाव करें, और त्रुटियों से बचने के लिए प्लॉटिंग कोड हटा दें

आउटपुट:

c ++ जावा अजगर

यह हमें इस लेख के अंत में लाता है जहां हमने मशीन लर्निंग के लिए रैखिक प्रतिगमन के बारे में सीखा है। मुझे आशा है कि आप इस ट्यूटोरियल में आपके साथ साझा किए गए सभी के साथ स्पष्ट हैं।

यदि आपको 'मशीन लर्निंग के लिए रेखीय प्रतिगमन' प्रासंगिक पर यह लेख मिला, तो देखें दुनिया भर में फैले 250,000 से अधिक संतुष्ट शिक्षार्थियों के नेटवर्क के साथ एक विश्वसनीय ऑनलाइन शिक्षण कंपनी।

अगर आपको कोई प्रश्न आता है, तो 'मशीन लर्निंग के लिए रेखीय प्रतिगमन' के टिप्पणी अनुभाग में अपने सभी प्रश्न पूछने के लिए स्वतंत्र महसूस करें और हमारी टीम को जवाब देने में खुशी होगी।