प्रिमल, ड्यूल और कर्नेल रिज रिग्रेशन में अंतर


19

प्राइमल , ड्यूल और कर्नेल रिज रिग्रेशन में क्या अंतर है ? लोग तीनों का उपयोग कर रहे हैं, और अलग-अलग स्रोतों में सभी द्वारा उपयोग किए जाने वाले अलग-अलग संकेतन के कारण मेरे लिए पालन करना मुश्किल है।

तो क्या कोई मुझे सरल शब्दों में बता सकता है कि इन तीनों में क्या अंतर है? इसके अलावा, प्रत्येक के कुछ फायदे या नुकसान क्या हो सकते हैं और उनकी जटिलता क्या हो सकती है?

जवाबों:


40

संक्षिप्त उत्तर: Primal और Dual के बीच कोई अंतर नहीं है - यह केवल समाधान तक पहुंचने के तरीके के बारे में है। कर्नेल रिज प्रतिगमन अनिवार्य रूप से सामान्य रिज प्रतिगमन के समान है, लेकिन गैर-रैखिक जाने के लिए कर्नेल चाल का उपयोग करता है।

रेखीय प्रतिगमन

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

enter image description here

हम साथ सबसे अच्छा फिट लाइन parametrize w और प्रत्येक डेटा बिंदु के लिए (xi,yi) हम चाहते हैं wTxiyi । चलो ei=yiwTxi भविष्यवाणी की और सही मूल्य के बीच की दूरी - त्रुटि हो। तो हमारा लक्ष्य वर्ग त्रुटियों की राशि को कम करना है ei2=e2=Xwy2जहाँ X=[x1x2xn]- प्रत्येक के साथ एक डेटा मैट्रिक्सxiएक पंक्ति है, और किया जा रहा हैy=(y1, ... ,yn)सभी के साथ एक वेक्टरyiकी।

इस प्रकार, उद्देश्य है minwXwy2 , और समाधान है w=(XTX)1XTy (के रूप में "सामान्य समीकरण" कहा जाता है)।

एक नया अनदेखी डेटा पॉइंट के लिए x हम अपने लक्ष्य मूल्य का अनुमान है y के रूप में y = डब्ल्यू टी एक्सy^y^=wTx

रिज रिग्रेशन

जब रेखीय प्रतिगमन मॉडल में कई सहसंबंधित चर होते हैं, तो गुणांक w खराब रूप से निर्धारित हो सकता है और इसमें बहुत सारे विचरण हो सकते हैं। इस समस्या के समाधान में से एक वजन प्रतिबंधित करने के लिए है w तो वे कुछ बजट बढ़ाना नहीं C । यह L 2 का उपयोग करने के बराबर हैL2 अनियमितता , जिसे "वजन क्षय" के रूप में भी जाना जाता है: यह कभी-कभी सही परिणाम गायब होने (यानी कुछ पूर्वाग्रह शुरू करके) की कीमत पर विचरण को कम करेगा।

उद्देश्य अब हो जाता है minwXwy2+λw2 ,λ नियमितीकरण पैरामीटर होने केसाथ। गणित से गुजरते हुए, हम निम्नलिखित समाधान प्राप्त करते हैं:w=(XTX+λI)1XTy । यह सामान्य रैखिक प्रतिगमन के समान है, लेकिन यहां हम X T X के प्रत्येक विकर्ण तत्व मेंλ जोड़ते हैं।XTX

ध्यान दें कि हम डब्ल्यू = एक्स टी के रूप में फिर से w लिख सकते हैंw=XT(XXT+λI)1y (विवरण के लिएयहांदेखें)। एक नया अनदेखी डेटा पॉइंट के लिएx हम अपने लक्ष्य मूल्य का अनुमान है y के रूप में y = एक्स टी डब्ल्यू = एक्स टी एक्स टीy^y^=xTw=xTXT(XXT+λI)1y । आज्ञा देनाα=(XXT+λI)1y । तो y = एक्स टी एक्स टी α = n Σ मैं = 1 α मैंएक्स टी एक्स मैंy^=xTXTα=i=1nαixTxi

रिज रिग्रेशन ड्यूल फॉर्म

हम अपने उद्देश्य पर एक अलग नज़र डाल सकते हैं - और निम्नलिखित द्विघात कार्यक्रम समस्या को परिभाषित कर सकते हैं:

mine,wi=1nei2 stei=yiwTxi fori=1..n औरw2C

यह एक ही उद्देश्य है, लेकिन कुछ अलग तरीके से व्यक्त किया गया है, और यहां w के आकार पर बाधा स्पष्ट है। इसे हल करने के लिए, हम Lagrangian Lp(w,e;C) को परिभाषित करते हैं - यह वह प्राणिक रूप है जिसमें primal वैरिएबल w और e । फिर हम इसे ऑप्ट e और w अनुकूलित करते हैं । दोहरी सूत्रीकरण प्राप्त करने के लिए, हमने पाया e और w वापस Lp(w,e;C)

तो, Lp(w,e;C)=e2+βT(yXwe)λ(w2C) । डेरिवेटिव डब्ल्यूटीw और e लेने से, हम = प्राप्त करते हैंe=12βऔरw=12λXTβΑ=देकरα=12λβ, और डालeऔरwके लिए वापसLp(w,e;C)पर हम पाते हैं दोहरी लाग्रंगियनLd(α,λ;C)=λ2α2+2λαTyλXTαλC । यदि हम एक व्युत्पन्न wrtα लेते हैं, तो हमα=(XXTλI)1y - सामान्य कर्नेल रिज प्रतिगमन के समान उत्तर देते हैं। व्युत्पन्न wrtλ लेने की कोई आवश्यकता नहीं है- यहC पर निर्भर करता है , जो एक नियमितीकरण पैरामीटर है - और यहλ नियमितकरण पैरामीटर भीबनाता है।

इसके बाद, α को w लिए primal फॉर्म सॉल्यूशन में रखें , और w = प्राप्त करेंw=12λXTβ=XTα। इस प्रकार, दोहरा रूप सामान्य रिज रिज्रेशन की तरह ही समाधान देता है, और यह उसी समाधान में आने का एक अलग तरीका है।

कर्नेल रिज प्रतिगमन

गुठली का उपयोग दो वैक्टर के आंतरिक उत्पाद की गणना करने के लिए किया जाता है, जिसमें कुछ फीचर स्पेस में भी नहीं जाते हैं। हम एक कर्नेल देख सकते हैं k के रूप में k(x1,x2)=ϕ(x1)Tϕ(x2) , हालांकि हम नहीं जानते कि क्या ϕ() है - हम केवल यह मौजूद है पता है। कई गुठली हैं, जैसे आरबीएफ, बहुपद, आदि।

हम अपने रिज रिग्रेशन को नॉन-लीनियर बनाने के लिए कर्नेल का उपयोग कर सकते हैं। मान लीजिए कि हमें एक गिरी है k(x1,x2)=ϕ(x1)Tϕ(x2) । चलो Φ(X) एक मैट्रिक्स हो जहां प्रत्येक पंक्ति है ϕ(xi) , यानी Φ(X)=[ϕ(x1)ϕ(x2)ϕ(xn)]

अब हम सिर्फ रिज प्रतिगमन के लिए समाधान लेने के लिए और हर जगह ले सकता है X के साथ Φ(X) : w=Φ(X)T(Φ(X)Φ(X)T+λI)1y । एक नया अनदेखी डेटा पॉइंट के लिएx हम अपने लक्ष्य मूल्य का अनुमान है y के रूप में y = φ ( एक्स ) टी Φ ( एक्स ) टीy^y^=ϕ(x)TΦ(X)T(Φ(X)Φ(X)T+λI)1y

First, we can replace Φ(X)Φ(X)T by a matrix K, calculated as (K)ij=k(xi,xj). Then, ϕ(x)TΦ(X)T is i=1nϕ(x)Tϕ(xi)=i=1nk(x,xj). So here we managed to express every dot product of the problem in terms of kernels.

Finally, by letting α=(K+λI)1y (as previously), we obtain y^=i=1nαik(x,xj)

References


1
I am impressed by the well-organized discussion. However, your early reference to "outliers" confused me. It appears the weights w apply to the variables rather than the cases, so how exactly would ridge regression help make the solution robust to outlying cases, as suggested by the illustration?
whuber

Excellent answer, Alexey (though I wouldn't call it "simple words")! +1 with no questions asked. You like to write in LaTeX, don't you?
Aleksandr Blekh

3
I suspect you might be confusing some basic things here. AFAIK, ridge regression is neither a response to nor a way of coping with "noisy observations." OLS already does that. Ridge regression is a tool used to cope with near-collinearity among regressors. Those phenomena are completely different from noise in the dependent variable.
whuber

1
+1 whuber. Alexey you are right it is overfitting -ie too many parameters for the available data - not really noise. [ and add enough dimensions for fixed sample size and 'any' data set becomes collinear]. So a better 2-d picture for RR would be all the points clustered around (0,1) with a single point at (1,0) ['justifying' the slope parameter]. See ESL fig 3.9,page 67 web.stanford.edu/~hastie/local.ftp/Springer/OLD/…. also look at primal cost function: to increase weight by 1 unit, error must decrease by 1/λ unit
seanv507

1
I believe you meant add λ to diagonal elements of XTX not subtract(?) in the ridge regression section. I applied the edit.
Heteroskedastic Jim
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.