रैखिक और रसद प्रतिगमन की तुलना करना

प्रवेश स्तर के डेटा विज्ञान साक्षात्कार प्रश्न पर चर्चा

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

प्रश्न: लीनियर रिग्रेशन और लॉजिस्टिक रिग्रेशन में क्या अंतर है?

दोनों के बीच वास्तव में कई समानताएं हैं, इस तथ्य से शुरू होती है कि उनके नाम बहुत समान लग रहे हैं। वे दोनों मॉडल कार्यों के रूप में लाइनों का उपयोग करते हैं। उनके ग्राफ भी बहुत समान दिखते हैं।

लेखक द्वारा छवि

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

  • परिकल्पना या मॉडल परिवार
  • इनपुट और आउटपुट
  • लॉस फंकशन
  • अनुकूलन तकनीक
  • आवेदन

अब हम इनमें से प्रत्येक बिंदु पर रैखिक प्रतिगमन (LinReg) और रसद प्रतिगमन (LogReg) की तुलना करेंगे। चर्चा को सही रास्ते पर लाने के लिए, आइए आवेदन से शुरू करें।

छवि राजश्री राजध्याक्स द्वारा

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

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

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

हमें यह ध्यान रखना चाहिए कि अनुमान और वर्गीकरण दोनों गणनाओं के बजाय अनुमान लगाने वाले कार्य हैं। इस प्रकार के कार्यों में कोई सटीक या सही उत्तर नहीं होता है। अनुमान लगाने वाले कार्य वे हैं जिनमें मशीन लर्निंग सिस्टम अच्छे होते हैं।

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

दिए गए डेटा से गणितीय फ़ंक्शन की पहचान करना 'सीखना' या 'प्रशिक्षण' कहलाता है। सीखने के दो चरण हैं:

  1. फ़ंक्शन का 'प्रकार' (उदाहरण के लिए रैखिक, घातीय, बहुपद) मानव द्वारा चुना जाता है
  2. लर्निंग एल्गोरिथम दिए गए डेटा से पैरामीटर (जैसे ढलान और एक रेखा का अवरोधन) सीखता है।

इसलिए जब हम कहते हैं कि एमएल सिस्टम डेटा से सीखते हैं, तो यह केवल आंशिक रूप से सच है। फ़ंक्शन के प्रकार को चुनने का पहला चरण मैन्युअल है और यह मॉडल डिज़ाइन का एक हिस्सा है। कार्य के प्रकार को 'परिकल्पना' या 'मॉडल परिवार' भी कहा जाता है।

LinReg और LogReg दोनों में, मॉडल परिवार रैखिक कार्य है। जैसा कि आप जानते हैं, एक लाइन के दो पैरामीटर होते हैं - स्लोप और इंटरसेप्ट। लेकिन यह तभी सच है जब फ़ंक्शन केवल एक इनपुट लेता है। अधिकांश वास्तविक दुनिया की समस्याओं के लिए, एक से अधिक इनपुट होते हैं। इन मामलों के लिए मॉडल फ़ंक्शन को रैखिक फ़ंक्शन कहा जाता है, रेखा नहीं। एक रेखीय फ़ंक्शन में सीखने के लिए अधिक पैरामीटर होते हैं। यदि मॉडल में n इनपुट हैं, तो रैखिक फ़ंक्शन में n+1 पैरामीटर हैं। जैसा कि उल्लेख किया गया है, ये पैरामीटर दिए गए डेटा से सीखे गए हैं। इस लेख के प्रयोजन के लिए, हम यह मानते रहेंगे कि फ़ंक्शन दो पैरामीटर वाली सरल रेखा है। LogReg का मॉडल फ़ंक्शन थोड़ा अधिक जटिल है। लाइन है, लेकिन यह एक और समारोह के साथ संयुक्त है। हम इसे एक पल में देखेंगे।

जैसा कि हमने ऊपर कहा, LinReg और LogReg दोनों दिए गए डेटा से रैखिक फ़ंक्शन के मापदंडों को सीखते हैं, जिसे प्रशिक्षण डेटा कहा जाता है। प्रशिक्षण डेटा में क्या है?

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

लेखक द्वारा छवि

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

LogReg जो कार्य करता है वह वर्गीकरण है, इसलिए इसका आउटपुट एक वर्ग होना चाहिए। आइए कल्पना करें कि 0 और 1 नामक दो वर्ग हैं। मॉडल का आउटपुट भी 0 या 1 होना चाहिए।

हालाँकि, आउटपुट निर्दिष्ट करने का यह तरीका बहुत उपयुक्त नहीं है। निम्न आरेख देखें:

लेखक द्वारा छवि

पीले रंग के बिंदु कक्षा 1 से संबंधित हैं और हल्के नीले वाले 0. से संबंधित हैं। रेखा हमारा मॉडल कार्य है जो दो वर्गों को अलग करती है। इस विभाजक के अनुसार, दोनों पीले बिंदु (ए और बी) कक्षा 1 के हैं। हालाँकि, बिंदु b की सदस्यता बिंदु a की तुलना में बहुत अधिक निश्चित है। यदि मॉडल केवल 0 और 1 को आउटपुट करता है, तो यह तथ्य खो जाता है।

इस स्थिति को ठीक करने के लिए, LogReg मॉडल एक निश्चित वर्ग से संबंधित प्रत्येक बिंदु की संभावना पैदा करता है। उपरोक्त उदाहरण में, बिंदु 'a' की कक्षा 1 से संबंधित होने की संभावना कम है, जबकि बिंदु 'b' की संभावना अधिक है। चूंकि संभाव्यता 0 और 1 के बीच की संख्या है, इसलिए LogReg का आउटपुट है।

अब निम्न आरेख देखें:

लेखक द्वारा छवि

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

आदेश में कि LogReg मॉडल इस तरह के आउटपुट का उत्पादन करने में सक्षम है, लाइन फ़ंक्शन को दूसरे फ़ंक्शन से कनेक्ट करना होगा। इस दूसरे कार्य को सिग्मॉइड कहा जाता है और इसका समीकरण है:

इस प्रकार LogReg मॉडल ऐसा दिखता है:

लेखक द्वारा छवि

सिग्मॉइड फ़ंक्शन को 'लॉजिस्टिक' भी कहा जाता है और 'लॉजिस्टिक रिग्रेशन' नाम का कारण है।

यदि दो से अधिक वर्ग हैं, तो LogReg का आउटपुट वेक्टर है। आउटपुट वेक्टर के तत्व उस विशेष वर्ग के इनपुट होने की संभावनाएं हैं। उदाहरण के लिए, यदि नैदानिक ​​निदान मॉडल के पहले तत्व का मान 0.8 है, तो इसका मतलब है कि मॉडल को लगता है कि रोगी के सर्दी से पीड़ित होने की संभावना 80% है।

हमने देखा कि LinReg और LogReg दोनों ही प्रशिक्षण डेटा से लीनियर फ़ंक्शन के पैरामीटर सीखते हैं। वे इन मापदंडों को कैसे सीखते हैं?

वे 'अनुकूलन' नामक विधि का उपयोग करते हैं। अनुकूलन दी गई समस्या के लिए कई संभावित समाधान उत्पन्न करके काम करता है। हमारे मामले में, संभावित समाधान (ढलान, अवरोधन) मूल्यों के सेट हैं। हम प्रदर्शन माप का उपयोग करके इनमें से प्रत्येक समाधान का मूल्यांकन करते हैं। इस उपाय पर जो समाधान सबसे अच्छा साबित होता है, उसे अंतिम रूप से चुना जाता है।

एमएल मॉडल के सीखने में, प्रदर्शन माप को कभी-कभी 'हानि' कहा जाता है और जो कार्य हमें इसकी गणना करने में मदद करता है उसे 'हानि समारोह' कहा जाता है। हम इसका प्रतिनिधित्व इस प्रकार कर सकते हैं:

हानि = हानि_कार्य (पैरामीटर_का_मूल्यांकन_किया जा रहा है)

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

अब हम LinReg और LogReg को ऑप्टिमाइज़ करने के लिए उपयोग किए जाने वाले सामान्य नुकसान कार्यों को देखेंगे। ध्यान दें कि वास्तविक अभ्यास में कई अलग-अलग हानि कार्यों का उपयोग किया जाता है, इसलिए हम उन पर चर्चा कर सकते हैं जो सबसे आम हैं।

LinReg मापदंडों के अनुकूलन के लिए, सबसे आम हानि फ़ंक्शन को स्क्वायर एरर (SSE) का योग कहा जाता है। यह फ़ंक्शन निम्नलिखित इनपुट लेता है:

1) सभी प्रशिक्षण डेटा बिंदु। प्रत्येक बिंदु के लिए, हम निर्दिष्ट करते हैं:

ए) इनपुट, जैसे अधिकतम डेटा तापमान,

बी) आउटपुट, जैसे बेचे गए नींबू पानी के गिलास की संख्या

2) पैरामीटर्स के साथ रैखिक समीकरण

फ़ंक्शन तब निम्न सूत्र का उपयोग करके हानि की गणना करता है:

एसएसई हानि = Sum_for_all_points(
स्क्वायर_ऑफ(
आउटपुट_ऑफ_लीनियर_इक्वेशन_फॉर_द_इनपुट - वास्तविक_आउटपुट_फ्रॉम_द_डेटा बिंदु
))

LogReg के लिए अनुकूलन माप को बहुत अलग तरीके से परिभाषित किया गया है। एसएसई समारोह में, हम निम्नलिखित प्रश्न पूछते हैं:

यदि हम प्रशिक्षण डेटा को फ़िट करने के लिए इस लाइन का उपयोग करते हैं, तो इससे कितनी त्रुटि होगी?

LogReg ऑप्टिमाइज़ेशन के माप को डिज़ाइन करने में, हम पूछते हैं:

यदि यह रेखा विभाजक है, तो इसकी कितनी संभावना है कि हमें प्रशिक्षण डेटा में दिखाई देने वाली कक्षाओं का वितरण मिलेगा?

इस उपाय का आउटपुट इस प्रकार एक संभावना है। माप फ़ंक्शन का गणितीय रूप लघुगणक का उपयोग करता है, इस प्रकार इसे लॉग संभावना (एलएल) नाम दिया गया है। आउटपुट पर चर्चा करते समय, हमने देखा कि LogReg फ़ंक्शन में एक्सपोनेंशियल शब्द शामिल हैं (e 'raising to' z वाले टर्म) लॉगरिदम इन एक्सपोनेंशियल से प्रभावी ढंग से निपटने में मदद करते हैं।

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

तो हमारे पास दो हानि कार्य हैं: LinReg के लिए SSE और LogReg के लिए NLL। ध्यान दें कि इन नुकसान कार्यों के कई नाम हैं, और आपको शर्तों से खुद को परिचित करना चाहिए।

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

आगे के विवरण की जांच की जा सकती है। एसएसई क्यों? संभावना की गणना कैसे की जाती है? अधिक गणित से बचने के लिए हम यहां अनुकूलन पद्धति में नहीं गए। हालाँकि, आपको यह ध्यान रखना चाहिए कि LogReg के अनुकूलन के लिए आमतौर पर पुनरावृत्त ग्रेडिएंट डिसेंट विधि की आवश्यकता होती है जबकि LinReg आमतौर पर त्वरित बंद फ़ॉर्म समाधान के साथ कर सकता है। हम इन और अन्य मुद्दों पर दूसरे लेख में चर्चा कर सकते हैं।

लीनियर और लॉजिस्टिक रिग्रेशन की तुलना स्रोत से पुनर्प्रकाशित https://towardsdatascience.com/comparing-linear-and-लॉजिस्टिक-regression-11a3e1812212?source=rss—-7f60cf5620c9—4 https://towardsdatascience.com/feed के माध्यम से

<!–

->

समय टिकट:

से अधिक ब्लॉकचेन कंसल्टेंट्स

एनसाइन इन्फोसिक्योरिटी रिसर्चर्स 'टाइपोस्वाइप' पेश करते हैं: टाइपोस्क्वाटिंग अटैक का पता लगाने के लिए एक आर्टिफिशियल इंटेलिजेंस (एआई) आधारित इमेजिंग दृष्टिकोण

स्रोत नोड: 1728479
समय टिकट: अक्टूबर 23, 2022