2012-09-05 24 views
20

यह प्रतिगमन के साथ नियमितकरण पर एक शुरुआती प्रश्न है। लोचदार नेट और लासो रिग्रेशन ऑनलाइन के बारे में अधिक जानकारी विकिपीडिया या मूल 2005 पेपर से ज़ौ और हैस्टी (लोचदार नेट के माध्यम से नियमितकरण और परिवर्तनीय चयन) की जानकारी को दोहराती है।लोचदार नेट का उपयोग कैसे किया जाता है?

सरल सिद्धांत के लिए संसाधन? क्या यह कुछ आसान और आसान स्पष्टीकरण है कि यह क्या करता है, कब और क्यों reguarization निरंतर है, और इसका उपयोग कैसे करें - उन लोगों के लिए जो सांख्यिकीय रूप से इच्छुक नहीं हैं? मैं समझता हूं कि मूल कागज़ आदर्श स्रोत है यदि आप इसे समझ सकते हैं, लेकिन कहीं कहीं और समस्या और समाधान है?

sklearn में उपयोग कैसे करें? क्या चरण-दर-चरण उदाहरण दिखा रहा है कि क्यों लोचदार नेट चुना जाता है (रिज, लासो, या बस साधारण ओएलएस पर) और पैरामीटर की गणना कैसे की जाती है? examples on sklearn में से कई बस अल्फा शामिल हैं और मानकों भविष्यवाणी मॉडल में सीधे रो, example के लिए:

from sklearn.linear_model import ElasticNet 
alpha = 0.1 
enet = ElasticNet(alpha=alpha, rho=0.7) 
y_pred_enet = enet.fit(X_train, y_train).predict(X_test) 

हालांकि, वे यह नहीं बताते कि इनकी गणना कैसे कर रहे थे। आप लासो या नेट के पैरामीटर की गणना कैसे करते हैं?

+3

आप [प्रोफेसर में नियमितकरण की मूल बातें सीख सकते हैं। एंड्रयू एनजी का उत्कृष्ट मशीन लर्निंग कोर्स] (https://www.coursera.org/ml)। उन्होंने केवल एल 2 नियमितकरण पर चर्चा की, लेकिन एल 1 या ई-नेट के लिए गणित बहुत समान है। सही मानकों को खोजने के लिए, विज्ञान-सीखने के लिए 'ElasticNetCV' जैसी कक्षाएं हैं। –

+1

मैं मशीन सीखने पर एक महान पुस्तक 'सांख्यिकीय सीखने के तत्व' की तलाश में भी सुधार करता हूं, जो कि मुफ्त में ऑनलाइन उपलब्ध है। बीटीडब्ल्यू, यहां रिग्रेशन टैग का मतलब यह नहीं है कि आपका क्या मतलब है;) –

+0

मैंने अभी 'रेग्रेशन' के लिए टैग विवरण संपादित किया है। अधिकांश प्रश्न "आर/SciPy/Matlab/Octave का उपयोग कैसे करें" के बारे में प्रतीत होते हैं, इसलिए शायद वे परीक्षण के बारे में नहीं हैं। –

उत्तर

19

दस्तावेज़ीकरण की कमी है। मैंने इसे सुधारने के लिए एक नया issue बनाया है। जैसा कि एंड्रियास ने कहा कि सबसे अच्छा संसाधन शायद ESL II पीडीएफ के रूप में ऑनलाइन उपलब्ध है।

स्वचालित रूप से धुन अल्फा का मूल्य यह वास्तव में संभव है ElasticNetCV जो अनावश्यक गणना अतिरिक्त के रूप में ट्यूनिंग alpha के लिए ElasticNet कक्षा में GridSearchCV का उपयोग कर के लिए apposed का उपयोग करने के लिए। पूरक में, आप rho के इष्टतम मूल्य को खोजने के लिए नियमित GridSearchCV का उपयोग कर सकते हैं। अधिक जानकारी के लिए ElasticNetCV की डॉकस्ट्रिंग देखें।

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

+1

हां, लासो अत्यधिक सहसंबंधित सुविधाओं के समूह से एक चर लेगा। @ogrisel द्वारा वर्णित यह कुछ हद तक यादृच्छिक प्रक्रिया है। दूसरी तरफ, लोचदार नेट, या तो अत्यधिक सहसंबंधित सुविधाओं के पूरे समूह को बाहर या बाहर छोड़ने का विकल्प बनाता है। –