सॉफ्टवेयर पैकेज एल-इनफिनिटी मानक रैखिक प्रतिगमन को हल करने के लिए [बंद]


10

क्या एल-इन्फिनिटी मान को न्यूनतम करने के उद्देश्य से रैखिक प्रतिगमन को हल करने के लिए कोई सॉफ्टवेयर पैकेज है।


1
खैर, कोई भी रैखिक प्रोग्रामिंग पैकेज काम करेगा। जो आपको बहुत सारे विकल्पों के साथ छोड़ देता है। :)
— कार्डिनल

1
@ कार्डिनल आप इसे एक रेखीय कार्यक्रम के रूप में कैसे पुनरावर्ती करेंगे? यह स्पष्ट नहीं है कि इसे तुच्छ मामलों में भी कैसे किया जाए (जैसे कि दो डेटा बिंदु और एक पैरामीटर): कोई अड़चन नहीं होती है और उद्देश्य फ़ंक्शन अशुद्ध होता है।
— व्हीबर

1
मुख्य वाक्यांश : चेबीशेव सन्निकटन। (अधिक पालन करने के लिए। यह विचार एक अतिरिक्त चर का परिचय देना है और फिर बाधाओं में उद्देश्य को मोड़ना है।)
— कार्डिनल

@कार्डिनल आपका मतलब यह है: mathworld.wolfram.com/ChebyshevApproximationFormula.html यह बहुत जटिल लगता है।
— फैन झांग

खैर, यह थोड़ा संबंधित है, लेकिन इस समस्या के लिए जर्मे नहीं है। आपकी समस्या को एक साधारण एलपी के साथ हल किया जा सकता है। जैसे ही मुझे कंप्यूटर मिल सकता है, मैं एक उत्तर पोस्ट करूंगा।
— कार्डिनल

जवाबों:


19

संक्षिप्त उत्तर : आपकी समस्या को रैखिक कार्यक्रम (एलपी) के रूप में तैयार किया जा सकता है, जिससे आप कार्य के लिए अपने पसंदीदा एलपी सॉल्वर का चयन कर सकते हैं। यह देखने के लिए कि समस्या को एलपी के रूप में कैसे लिखा जाए, पर पढ़ें।

इस न्यूनतम समस्या को अक्सर चेबीशेव सन्निकटन के रूप में जाना जाता है ।

Let , पंक्ति के साथ जिसे और द्वारा दर्शाया है । तब हम फ़ंक्शन को कम करना चाहते हैं सम्मान के साथ । द्वारा इष्टतम मान को अस्वीकृत करें y=(yi)∈RnX∈Rn×pixiβ∈Rpf(β)=‖y−Xβ‖∞β

f⋆=f(β⋆)=inf{f(β):β∈Rp}.

एलपी के रूप में इसे पुन: पेश करने की कुंजी एपिग्राफ रूप में समस्या को फिर से लिखना है । अपने आप को यह विश्वास दिलाना मुश्किल नहीं है कि वास्तव में,

f⋆=inf{t:f(β)≤t,t∈R,β∈Rp}.

अब, फ़ंक्शन की परिभाषा का उपयोग करते हुए , हम राइट-साइड साइड को फिर से लिख सकते हैं जैसे कि और इसलिए हम देखते हैं कि प्रतिगमन सेटिंग में मान को कम करना LP के समान है जहां अनुकूलन किया जाता है से अधिक , और लंबाई वाले लोगों के एक वेक्टर को दर्शाता है । मैं इसे पाठक के लिए मानक रूप में उपरोक्त एलपी को पुनः प्राप्त करने के लिए एक (आसान) अभ्यास के रूप में छोड़ देता हूं।f

f⋆=inf{t:−t≤yi−xiβ≤t,t∈R,β∈Rp,1≤i≤n},
ℓ∞
minimizetsubject toy−Xβ≤t1ny−Xβ≥−t1n,
(β,t)1nn

रैखिक प्रतिगमन के (कुल भिन्नता) संस्करण से संबंधℓ1

यह ध्यान रखना दिलचस्प है कि कुछ बहुत समान मानदंड के साथ किया जा सकता है । चलो । फिर, इसी तरह के तर्क एक निष्कर्ष निकालने के लिए नेतृत्व करते हैं कि ताकि संबंधित एल.पी. ℓ1g(β)=‖y−Xβ‖1

g⋆=inf{tT1n:−ti≤yi−xiβ≤ti,t=(ti)∈Rn,β∈Rp,1≤i≤n},
minimizetT1nsubject toy−Xβ≤ty−Xβ≥−t.

यहाँ ध्यान दें कि अब एक स्केलर के बजाय लंबाई का वेक्टर है , क्योंकि यह मामले में था।tnℓ∞

इन दोनों समस्याओं में समानता और तथ्य यह है कि इन दोनों को एलपी के रूप में डाला जा सकता है, ज़ाहिर है, कोई दुर्घटना नहीं। दो मानदंड इस बात से संबंधित हैं कि वे एक दूसरे के दोहरे मानदंड हैं ।


आप मापदंडों और / या भविष्यवाणियों के लिए परिशुद्धता के कुछ माप कैसे पाएंगे? मैं निम्नलिखित हालिया प्रश्न के कारण पूछता हूं: mathematica.stackexchange.com/questions/214226/… ।
— जिमब

3

मलाव इसे कर सकता है, cvx का उपयोग कर। cvx (फ्री) पाने के लिए:

http://cvxr.com/cvx/download/

Cvx में, आप इसे इस तरह से लिखेंगे:

cvx_begin
   variable x(n);
   minimize( norm(A*x-b,Inf) );
cvx_end

( मैनुअल का उदाहरण पृष्ठ 12 देखें )

CVX ( यहां ) का एक पायथन कार्यान्वयन है, लेकिन कमांड थोड़ा अलग हैं ...


1

@ कार्डिनल का उत्तर अच्छी तरह से कहा गया है और इसे स्वीकार कर लिया गया है, लेकिन, इस धागे को पूरी तरह से बंद करने के लिए, मैं निम्नलिखित की पेशकश करूंगा: IMSL न्यूमेरिकल लाइब्रेरी में एल-इनफिनिटी मानक प्रतिगमन करने के लिए एक दिनचर्या होती है। दिनचर्या फोरट्रान, सी, जावा, सी # और पायथन में उपलब्ध है। मैंने C और पायथन संस्करणों का उपयोग किया है जिसके लिए विधि को lnorm_regression कहा जाता है, जो सामान्य -norm प्रतिगमन, का भी समर्थन करता है ।Lpp>=1

ध्यान दें कि ये वाणिज्यिक पुस्तकालय हैं लेकिन गैर-व्यावसायिक उपयोग के लिए पायथन संस्करण मुफ्त (बीयर में) हैं।


Unfortunatley, लिंक अब काम नहीं करता है। क्या आप इसे अपडेट कर सकते हैं?
— COOLSerdash
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.