सपोर्ट वेक्टर मशीन (SVM) कैसे काम करती है?


108

एक सपोर्ट वेक्टर मशीन (SVM) कैसे काम करती है, और यह रैखिक रेखांकन , रैखिक डिस्क्रिमिनेन्ट एनालिसिस , या लॉजिस्टिक रिग्रेशन जैसे अन्य रैखिक क्लासिफायर से अलग क्या करती है ? *

(* मैं एल्गोरिथ्म, अनुकूलन रणनीतियों, सामान्यीकरण क्षमताओं और रन-टाइम जटिलता के लिए अंतर्निहित प्रेरणाओं के संदर्भ में सोच रहा हूं )


4
इन्हें भी देखें: आंकड़े.स्टैकएक्सचेंज.com

यह भी देखें आंकड़े ।stackexchange.com

जवाबों:


126

समर्थन वेक्टर मशीनें केवल उन बिंदुओं पर ध्यान केंद्रित करती हैं जो अलग से बताना सबसे कठिन हैं, जबकि अन्य क्लासिफायर सभी बिंदुओं पर ध्यान देते हैं।

समर्थन वेक्टर मशीन दृष्टिकोण के पीछे अंतर्ज्ञान यह है कि यदि कोई क्लासिफायर सबसे चुनौतीपूर्ण तुलनाओं में अच्छा है (बी और ए में अंक जो कि चित्रा 2 में एक दूसरे के सबसे करीब हैं), तो क्लासिफायर आसान तुलना में बेहतर होगा ( B और A में ऐसे बिंदुओं की तुलना करना जो एक दूसरे से बहुत दूर हैं)।

परसेप्ट्रोन और अन्य क्लासीफायर:

Perceptrons एक समय में एक बिंदु लेकर और विभाजित लाइन को तदनुसार समायोजित करके बनाए जाते हैं। जैसे ही सभी बिंदु अलग हो जाते हैं, परसेप्ट्रोन एल्गोरिथ्म बंद हो जाता है। लेकिन यह कहीं भी रुक सकता था। चित्रा 1 से पता चलता है कि अलग-अलग विभाजन लाइनों का एक गुच्छा है जो डेटा को अलग करता है। परसेप्ट्रॉन के रुकने का मापदंड सरल है: "100% अलग होने पर पॉइंट्स को अलग करें और लाइन को सुधारना बंद करें"। परसेप्ट्रॉन को स्पष्ट रूप से सबसे अच्छी पृथक्करण रेखा खोजने के लिए नहीं कहा गया है। लॉजिस्टिक रिग्रेशन और लीनियर डिस्क्रिमिनट मॉडल समान रूप से परसेप्ट्रॉन के लिए बनाए जाते हैं।

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

यहाँ छवि विवरण दर्ज करें

समर्थन वेक्टर मशीन:

अन्य क्लासिफायर के विपरीत, सपोर्ट वेक्टर मशीन को स्पष्ट रूप से सबसे अलग लाइन खोजने के लिए कहा जाता है। कैसे? सपोर्ट वेक्टर मशीन निकटतम बिंदुओं (चित्र 2) को खोजती है, जिसे वह "सपोर्ट वैक्टर" कहता है (नाम "सपोर्ट वेक्टर मशीन" इस तथ्य के कारण है कि बिंदु वैक्टर की तरह हैं और यह सबसे अच्छी लाइन "पर निर्भर करता है" या) "निकटतम बिंदुओं द्वारा समर्थित" है।

एक बार इसे निकटतम बिंदु मिल जाने पर, SVM उन्हें जोड़ने वाली एक रेखा खींचती है (चित्र 2 में 'w' लेबल वाली रेखा देखें)। यह सदिश घटाव (बिंदु A - बिंदु B) कर इस कनेक्टिंग लाइन को खींचता है। समर्थन वेक्टर मशीन तब सबसे अलग करने वाली रेखा को उस रेखा के रूप में घोषित करती है जो कि जुड़ती है - और कनेक्टिंग लाइन के लिए लंबवत है।

समर्थन वेक्टर मशीन बेहतर है क्योंकि जब आप एक नया नमूना (नए अंक) प्राप्त करते हैं, तो आप पहले से ही एक पंक्ति बना लेंगे जो बी और ए को एक दूसरे से यथासंभव दूर रखता है, और इसलिए यह कम संभावना है कि कोई एक भर में फैल जाएगा दूसरे के क्षेत्र में लाइन।

यहाँ छवि विवरण दर्ज करें

मैं खुद को एक दृश्य शिक्षार्थी मानता हूं, और मैं लंबे समय तक वेक्टर मशीनों के समर्थन के पीछे अंतर्ज्ञान से जूझता रहा। एसवीएम क्लासिफायर में द्वंद्व और ज्यामिति नामक पेपर ने आखिरकार मुझे प्रकाश को देखने में मदद की; यहीं से मुझे छवियां मिलीं।


4
एक और दृश्य शिक्षार्थी से +1! पाठक के लिए, मैं यह नोट करना चाहूंगा कि उपरोक्त आंकड़ों में स्पष्ट की गई ये सीमाएँ पहले से परिवर्तित किए गए डेटा सेट पर आधारित हैं। कच्चा डेटा सेट नहीं।
किंग्ज़

अधिक बार दो साल तक svm पढ़ना, आज समझ में आया कि कैसे अलग लाइन की पहचान की जाती है और कुछ और चीजें। स्वच्छ उत्तर के लिए धन्यवाद।
user123

53

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

अंकन

y,bw,xWwTww=wTw

करते हैं:

  • x एक फीचर वेक्टर (यानी, SVM का इनपुट) हो। , जहां सुविधा वेक्टर का आयाम है।xRnn
  • y वर्ग (यानी, SVM का आउटपुट) हो। , अर्थात वर्गीकरण कार्य द्विआधारी है।y{1,1}
  • w और SVM के पैरामीटर हो: हमें प्रशिक्षण सेट का उपयोग करके उन्हें सीखना होगा।b
  • (x(i),y(i)) हो डेटासेट में नमूना। मान लें कि हमारे पास प्रशिक्षण सेट में नमूने हैं।ithN

साथ , एक SVM के फैसले सीमाओं इस प्रकार का प्रतिनिधित्व कर सकते हैं:n=2

यहाँ छवि विवरण दर्ज करें

वर्ग निम्नानुसार निर्धारित किया जाता है:y

y(i)={1 if wTx(i)+b11 if wTx(i)+b1

जो अधिक संक्षिप्त रूप से रूप में लिखा जा सकता है ।y(i)(wTx(i)+b)1

लक्ष्य

SVM का उद्देश्य दो आवश्यकताओं को पूरा करना है:

  1. एसवीएम को दो निर्णय सीमाओं के बीच की दूरी को अधिकतम करना चाहिए। गणित के अनुसार, इसका मतलब यह है कि हम hyperplane द्वारा परिभाषित के बीच की दूरी को अधिकतम करना चाहते और hyperplane द्वारा परिभाषित । यह दूरी बराबर है । इसका मतलब है कि हम को हल करना चाहते हैं । समान रूप से हम ।wTx+b=1wTx+b=12wmaxw2wminww2

  2. SVM को भी सभी , जिसका अर्थ सही ढंग से वर्गीकृत करना चाहिएx(i)y(i)(wTx(i)+b)1,i{1,,N}

जो हमें निम्नलिखित द्विघात अनुकूलन समस्या की ओर ले जाता है:

minw,bw2,s.t.y(i)(wTx(i)+b)1i{1,,N}

यह हार्ड-मार्जिन एसवीएम है , क्योंकि यह द्विघात अनुकूलन समस्या एक समाधान को स्वीकार करती है यदि डेटा रैखिक रूप से अलग है।

एक तथाकथित सुस्त चर को शुरू करके बाधाओं को शांत कर सकता है । ध्यान दें कि प्रशिक्षण सेट के प्रत्येक नमूने का अपना सुस्त चर है। यह हमें निम्नलिखित द्विघात अनुकूलन समस्या देता है:ξ(i)

minw,bw2+Ci=1Nξ(i),s.t.y(i)(wTx(i)+b)1ξ(i),i{1,,N}ξ(i)0,i{1,,N}

यह सॉफ्ट-मार्जिन एसवीएम है । एक हाइपरपरेट है जिसे त्रुटि शब्द का दंड कहा जाता है । ( रैखिक कर्नेल के साथ एसवीएम में सी का प्रभाव क्या है? और एसवीएम इष्टतम मापदंडों का निर्धारण करने के लिए कौन सी खोज सीमा है )।C

एक फ़ंक्शन को करके और भी अधिक लचीलापन जोड़ सकता है जो मूल सुविधा स्थान को उच्च आयामी सुविधा स्थान पर मैप करता है। यह गैर-रैखिक निर्णय सीमाओं की अनुमति देता है। द्विघात अनुकूलन समस्या बन जाती है:ϕ

minw,bw2+Ci=1Nξ(i),s.t.y(i)(wTϕ(x(i))+b)1ξ(i),i{1,,N}ξ(i)0,i{1,,N}

अनुकूलन

द्विघात अनुकूलन समस्या को एक अन्य अनुकूलन समस्या में परिवर्तित किया जा सकता है जिसका नाम लैग्रैजियन दोहरी समस्या है (पिछली समस्या को प्राण कहा जाता है :

maxαminw,bw2+Ci=1Nα(i)(1wTϕ(x(i))+b)),s.t.0α(i)C,i{1,,N}

इस अनुकूलन की समस्या को सरल किया जा सकता है (कुछ ढ़ाल को सेट करके ):0

maxαi=1Nα(i)i=1Nj=1N(y(i)α(i)ϕ(x(i))Tϕ(x(j))y(j)α(j)),s.t.0α(i)C,i{1,,N}

w रूप में प्रकट नहीं होता है ( रिपीसेटर प्रमेय द्वारा कहा गया है )।w=i=1Nα(i)y(i)ϕ(x(i))

इसलिए हम प्रशिक्षण सेट के का उपयोग करके सीखते हैं ।α(i)(x(i),y(i))

(FYI करें: SVM फिट करते समय दोहरी समस्या से परेशान क्यों? लघु उत्तर: तेज संगणना + कर्नेल ट्रिक का उपयोग करने की अनुमति देता है, हालाँकि वहाँ कुछ अच्छी विधियाँ मौजूद हैं SVM को प्राण में प्रशिक्षित करने के लिए जैसे {१} देखें।

एक भविष्यवाणी करना

एक बार जब सीख लिया जाता है, तो एक व्यक्ति सदिश साथ एक नए नमूने की कक्षा की भविष्यवाणी कर सकता है:α(i)xtest

ytest=sign(wTϕ(xtest)+b)=sign(i=1Nα(i)y(i)ϕ(x(i))Tϕ(xtest)+b)

योग , काफ़ी मुश्किल हो सकता है इसका मतलब है के बाद से एक सभी प्रशिक्षण के नमूने से अधिक योग करने के लिए है, लेकिन के विशाल बहुमत हैं (देखें क्यों हैं एसवीएम के लिए लैग्रेग मल्टीप्लायरों का फैलाव? ) तो व्यवहार में यह कोई समस्या नहीं है। (ध्यान दें कि कोई व्यक्ति विशेष मामलों का निर्माण कर सकता है जहां सभी ) iff एक समर्थन वेक्टर है । ऊपर दिए गए दृष्टांत में 3 सपोर्ट वैक्टर हैं।i=1Nα(i)0α(i)>0α(i)=0x(i)

गिरी की चाल

कोई यह देख सकता है कि अनुकूलन समस्या केवल आंतरिक उत्पाद में केवल का उपयोग करती है। । वह फ़ंक्शन जो मैप्स को को इनर प्रोडक्ट मैप में मैप करता है को कर्नेल , उर्फ ​​कर्नेल फ़ंक्शन कहा जाता है , जिसे अक्सर द्वारा निरूपित किया जाता है ।ϕ(x(i))ϕ(x(i))Tϕ(x(j))(x(i),x(j))ϕ(x(i))Tϕ(x(j))k

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

आगे बढ़ते हुए

SVM पर कुछ दिलचस्प क़िस्से:

अन्य लिंक:


संदर्भ:


2
हाय फ्रेंक, आपके उत्तर के लिए बहुत धन्यवाद। क्या आप यह बताना चाहेंगे कि एसवीएम उत्पन्न करने वाले हाइपरप्लेन में वेक्टर ऑर्थोगोनल क्यों है? और आपने दो फ़ैसले की सीमाओं के बीच की दूरी की गणना कैसे कीw2w
बराबर

3
इस महान जवाब के अलावा, मैं इस वीडियो की सिफारिश करना चाहता हूं, जो एसवीएम के पीछे गणित के माध्यम से चलता है और विशेष रूप से इस सवाल को स्पष्ट करता है @tosik ने youtube.com/watch?v=_PwhiWxHK8o
निकोलस रायल

बहुत अच्छा जवाब। इस भाग के रूप में बस एक टिप्पणी: iff एक समर्थन वेक्टर है । वर्गीकरण के लिए, योग प्रभावी रूप से सपोर्ट वैक्टर (यानी, ) से अधिक है। α(i)=0x(i)α(i)0
989

13

मैं समानताओं पर ध्यान केंद्रित करने जा रहा हूँ और इसे अन्य सहपाठियों से अलग करता हूँ:

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

  • लॉजिस्टिक रिग्रेशन से: लॉजिस्टिक रिग्रेशन लॉजिस्टिक लॉस टर्म का उपयोग करता है और एल 1 या एल 2 नियमितीकरण का उपयोग कर सकता है। आप तार्किक भोलेपन के विवेकशील भाई के रूप में लॉजिस्टिक रिग्रेशन के बारे में सोच सकते हैं।

  • LDA से: LDA को एक जेनेरिक अल्गोरिथम के रूप में भी देखा जा सकता है, यह मानता है कि प्रायिकता घनत्व फ़ंक्शन (p (x | y = 0)) और p (x | y = 1) सामान्य रूप से वितरित किए जाते हैं। यह आदर्श है जब डेटा होता है। तथ्य यह है कि सामान्य रूप से वितरित किया जाता है। हालांकि, नकारात्मक पक्ष यह है कि "प्रशिक्षण" के लिए एक मैट्रिक्स के व्युत्क्रम की आवश्यकता होती है जो बड़े हो सकते हैं (जब आपके पास कई विशेषताएं होती हैं)। होमोसेक्शुअलिटी के तहत एलडीए QDA बन जाता है जो सामान्य रूप से वितरित डेटा के लिए बेयस इष्टतम है। इसका मतलब है कि यदि धारणाएं संतुष्ट हैं कि आप वास्तव में इससे बेहतर नहीं कर सकते।

रनटाइम (परीक्षण समय) पर, एक बार मॉडल को प्रशिक्षित करने के बाद, इन सभी तरीकों की जटिलता समान होती है, यह हाइपरप्लेन के बीच प्रशिक्षण प्रक्रिया को मिला और डेटापॉइंट के बीच सिर्फ एक डॉट उत्पाद है।


1
चूंकि आप एसवीएम में बहुत सक्षम लगते हैं, इसलिए मैं आपको अपना संदेह स्पष्ट करने के लिए कहता हूं: एक बार जब हमने हाइपरप्लेन को अलग करते हुए पाया, तो हम इसके लिए क्या उपयोग करते हैं? हम एसवीएम को एक विधि के रूप में परिभाषित कर सकते हैं, जो सबसे पहले, डेटा बिंदुओं को सही ढंग से वर्गीकृत करने के लिए सबसे अच्छा हाइपरप्लेन चुनता है, और दूसरी बात, यह दो वर्गों में नए डेटा बिंदुओं को अलग करने के लिए इस हाइपरप्लेन का उपयोग करता है। सही? (मुझे दूसरे भाग पर कुछ संदेह है)
DavideChicco.it

1
@ DavideChicco.it हाँ, हम नए डेटा को वर्गीकृत करने के लिए संकेतक फ़ंक्शन का उपयोग कर सकते हैं, जो अक्सर क्लासिफायरियर का मुख्य उद्देश्य होता है। (हालांकि, मैं इसमें से किसी के लिए भी अपना शब्द नहीं लेता हूं)
कीसर

12

तकनीक को एक निर्णय सीमा रेखा के रूप में पहले सकारात्मक और नकारात्मक उदाहरणों के लिए एक मार्जिन के रूप में छोड़ने पर भविष्यवाणी की जाती है:

यहाँ छवि विवरण दर्ज करें

जैसा कि ऊपर चित्रण में है, यदि हम एक orthogonal वेक्टर का चयन करते हैं, जैसे कि तो हम किसी भी अज्ञात उदाहरण के लिए निर्णय मानदंड स्थापित कर सकते हैं को प्रपत्र के सकारात्मक के रूप में सूचीबद्ध किया जा सकता है:w=1u

wuC

मूल्य के अनुरूप जो सड़क के बीच में निर्णय रेखा से परे प्रक्षेपण को जगह देगा। ध्यान दें कि ।wu=uw

एक सकारात्मक नमूने के लिए एक समकक्ष स्थिति होगी:

(1)wu+b0

साथC=b.

हमें निर्णय नियम रखने के लिए और की आवश्यकता है, और वहां पहुंचने के लिए हमें बाधाओं की आवश्यकता है ।bw

पहला बाधा जो हम लगाने जा रहे हैं, वह यह है कि किसी भी सकारात्मक नमूने के लिए , ; और नकारात्मक नमूनों के लिए, । डिवीजन बाउंड्री या हाइपरप्लेन ( माध्यिका ) में मान होगा , जबकि गटर में मान और :x+,wx++b1wx+b1011

यहाँ छवि विवरण दर्ज करें

वेक्टर है वजन वेक्टर जबकि, है पूर्वाग्रहwb


इन दो असमानताओं को एक साथ लाने के लिए, हम चर को पेश कर सकते हैं ताकि सकारात्मक उदाहरणों के लिए , और यदि उदाहरण नकारात्मक हैं, और निष्कर्ष निकालते हैंyiyi=+1yi=1

yi(xiw+b)10.

इसलिए हम स्थापित करते हैं कि यह शून्य से अधिक होना चाहिए, लेकिन यदि उदाहरण हाइपरप्लेन ("गटर") पर है जो निर्णय हाइपरप्लेन और समर्थन वैक्टर की युक्तियों के बीच अलगाव के मार्जिन को अधिकतम करता है, तो इस मामले में लाइनें) फिर:

(2)yi(xiw+b)1=0

ध्यान दें कि यह उस आवश्यकता के बराबर हैyi(xiw+b)=1.

यहाँ छवि विवरण दर्ज करें


दूसरा बाधा : समर्थन वैक्टर की युक्तियों के लिए निर्णय हाइपरप्लेन की दूरी को अधिकतम किया जाएगा। दूसरे शब्दों में अलगाव का मार्जिन ("सड़क") अधिकतम होगा:

यहाँ छवि विवरण दर्ज करें

निर्णय सीमा, लिए एक इकाई वेक्टर लंबवत मानकर , दो "बॉर्डरिंग" प्लस और माइनस उदाहरणों के बीच अंतर वाला डॉट उत्पाद "सड़क" की चौड़ाई है :w

width=(x+x)ww

उपरोक्त समीकरण पर और हैं (जुदाई अधिकतम hyperplanes पर) गटर में। इसलिए, सकारात्मक उदाहरण के लिए: , या ; और नकारात्मक उदाहरण के लिए: । इसलिए, सड़क की चौड़ाई में सुधार करना:x+x (xiw+b)1=0x+w=1bxw=1b

width=(x+x)ww=x+wxww=1b(1b)w(3)=2w

तो अब हम बस सड़क की चौड़ाई अधिकतम करने के लिए है - यानी अधिकतम कम से कम , या कम से कम:2w,w

(4)12w2

जो गणितीय रूप से सुविधाजनक है।


इसलिए हम चाहते हैं:

  1. बाधा के साथ को न्यूनतम करें :x2

  2. yi(wxi+b)1=0


चूँकि हम कुछ बाधाओं के आधार पर इस अभिव्यक्ति को कम से कम करना चाहते हैं, इसलिए हमें एक लैग्रेग गुणक की आवश्यकता है (2 और 4 समीकरणों पर वापस जाना):

(5)L=12w2λi[yi(xiw+b)1]

फर्क,

Lw=wλiyixi=0

इसलिए,

(6)w=λiyixi

और संबंध मेंb:

Lb=λiyi=0,

जिसका अर्थ है कि हमारे पास गुणक और लेबल का शून्य योग उत्पाद है:

(7)λiyi=0

प्लगिंग समीकरण Eq (6) वापस Eq (5) में,

L=12(λiyixi)(λjyjxj)(λiyixi)(λjyjxj)λiyib+λi

Eq (7) समीकरण के अनुसार, पद अवधि शून्य है।

इसलिए,

(8)L=λi12ijλiλjyiyjxixj

Eq (8) अंतिम Lagrangian की जा रही है।

इसलिए, अनुकूलन उदाहरणों के जोड़े के डॉट उत्पाद पर निर्भर करता है।

Eq (1) में "निर्णय नियम" पर वापस जा रहे हैं, और Eq (6) का उपयोग कर रहे हैं:

(9)λiyixiu+b0

नए वेक्टर लिए अंतिम निर्णय नियम होगाu.


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

और मैं b की गणना कैसे करूं ?
माइक

1
@mike साथ सहायक वैक्टर के सूचकांकों का सेट।आप इसे यहाँ पा सकते हैं । b=ysmSαmymxmxsS(αi>0).
एंटोनी पारेलाडा

@AntoniParellada अद्भुत जवाब एंटोनी बहुत बहुत धन्यवाद - लेकिन क्या आप दोहरी समस्या और केटीटी स्थितियों पर एक हिस्सा नहीं छोड़ रहे हैं?
जेवियर बोरेट सिस्कोट

@XavierBourretSicotte मैं कुछ समय के लिए उस पर काम नहीं कर पाऊंगा। कृपया इन मुद्दों पर एक वैकल्पिक उत्तर लिखने पर विचार करें, और यदि आप करते हैं, तो कृपया मुझे बताएं ताकि मैं इसके बारे में अवगत हूं, और इसे रद्द कर सकता हूं।
एंटोनी परेला

3

द्वंद्व और केटीटी स्थितियों पर कुछ टिप्पणियां

प्राइमल समस्या

समीकरणों और बीच @ एंटोनी के पद से उठाते हुए , याद रखें कि हमारी मूल, या मौलिक , अनुकूलन समस्या इस प्रकार है:(4)(5)

minw,bf(w,b)=minw,b 12||w||2s.t.  gi(w,b)=y(i)(wTx(i)+b)+1=0

लग्र विधि

लैग्रेग मल्टीप्लायरों की विधि हमें एक विवश अनुकूलन समस्या को एक अप्रकाशित रूप में बदलने की अनुमति देती है:

L(w,b,α)=12||w||2imαi[y(i)(wTx(i)+b)1]

कहाँ कहा जाता है लाग्रंगियन और कहा जाता है लाग्रंगियन मल्टीप्लायरोंL(w,b,α)αi

लैग्रैनिज़्म के साथ हमारी मौलिक अनुकूलन समस्या निम्न हो जाती है: (ध्यान दें कि का उपयोग , सबसे कठोर नहीं है क्योंकि हमें यहां और का भी उपयोग किया जाना चाहिए ...)minmaxinfsup

minw,b(maxαL(w,b,α))

दोहरी समस्या

@Antoni और प्रो। पैट्रिक विंस्टन ने अपनी व्युत्पत्ति में जो किया है, वह मानती है कि अनुकूलन कार्य और अवरोध कुछ तकनीकी स्थितियों को पूरा करते हैं जैसे कि हम निम्नलिखित कार्य कर सकते हैं:

minw,b(maxαL(w,b,α))=maxα(minw,bL(w,b,α))

यह हमें और संबंध में के आंशिक व्युत्पत्ति लेने की अनुमति देता है , शून्य के बराबर है और फिर परिणाम को Lagrangian के मूल समीकरण में वापस प्लग करता है, इसलिए एक समतुल्य उत्पन्न करता है फॉर्म की दोहरी अनुकूलन समस्याL(w,b,α)wb

maxαminw,bL(w,b,α)maxαimαi12i,jmy(i)y(j)αiαj<x(i)x(j)>s.t. αi0s.t. imαiy(i)=0

द्वैत और केटीटी

अत्यधिक गणितीय तकनीकी में जाने के बिना, ये स्थितियाँ द्वंद्व और करुश कुहन टकर (KTT) की स्थितियों का एक संयोजन हैं और हमें यह सुनिश्चित करने की अनुमति देती हैं कि इष्टतम समस्या के समाधान के लिए यह सुनिश्चित करते हुए कि हम प्राण एक के बजाय दोहरी समस्या को हल करें । हमारे मामले में स्थितियां निम्नलिखित हैं:

  • मौलिक उद्देश्य और असमानता बाधा कार्य उत्तल होना चाहिए
  • समता बाधा समारोह संपन्न होना चाहिए
  • बाधाओं को सख्ती से संभव होना चाहिए

इसके बाद मौजूद है जो कि मौलिक और दोहरी समस्याओं का समाधान है। इसके अलावा, पैरामीटर नीचे दिए गए KTT शर्तों को पूरा करते हैं:w,αw,α

wiL(w,α,β)=0(A)βiL(w,α,β)=0(B)αigi(w)=0(C)gi(w)0(D)αi0(E)

इसके अलावा, अगर कुछ केटीटी समाधानों को संतुष्ट करते हैं तो वे भी मौलिक और दोहरी समस्या का समाधान हैं।w,α

ऊपर समीकरण विशेष महत्व का है और इसे दोहरी पूरक स्थिति कहा जाता है । तात्पर्य यह है कि अगर तो जिसका अर्थ है कि बाधा सक्रिय है, अर्थात यह असमानता के बजाय समानता के साथ है। यह एंटोनी के व्युत्पत्ति में समीकरण पीछे की व्याख्या है जहां असमानता बाधा को एक समानता बाधा में बदल दिया गया है।(C)αi>0gi(w)=0gi(w)0(2)

एक सहज लेकिन अनौपचारिक आरेख

यहाँ छवि विवरण दर्ज करें

सूत्रों का कहना है


2
आपका बहुत बहुत धन्यवाद। मैं इसे जल्दी से पढ़ता हूं, और बाद में अधिक समय के साथ इसे प्राप्त करता हूं, लेकिन यह बहुत अच्छा लगता है, और मेरे उत्तर में लापता बिंदुओं को छूता है।
एंटनी परेला
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.