मुझे MLE के लिए R * के एलएमएम फ़ंक्शन का उपयोग कब नहीं * करना चाहिए?


25

मैं एक दंपति गाइड के बारे में बताता हूं कि मैं अधिकतम संभावना आकलन के लिए आर के एलएमएम का उपयोग करता हूं। लेकिन उनमें से कोई भी ( आर के प्रलेखन सहित ) फ़ंक्शन का उपयोग करने या न करने के लिए बहुत सैद्धांतिक मार्गदर्शन देता है।

जहां तक ​​मैं बता सकता हूं, न्यूम की विधि की तर्ज पर nlm केवल ढाल मूल कर रहा है। क्या इस सिद्धांत का उपयोग करना कब उचित है? क्या विकल्प उपलब्ध हैं? इसके अलावा, वहाँ सरणियों के आकार पर सीमाएं हैं, आदि में से कोई एक WMm को पास कर सकता है?

जवाबों:


39

आधार आर में सामान्य प्रयोजन अनुकूलन दिनचर्या के एक नंबर है कि मैं के बारे में पता कर रहा हूँ रहे हैं: optim, nlminb, nlmऔर constrOptim(जो रैखिक असमानता की कमी, और कॉल हैंडल optimहुड के नीचे)। यहां कुछ चीजें दी गई हैं, जिन्हें आप चुनने में विचार कर सकते हैं कि किसका उपयोग करना है।

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

  • nlminbएक अर्ध-न्यूटन एल्गोरिथ्म का उपयोग करता है जो "L-BFGS-B"विधि के समान ही आला को भरता है optim। मेरे अनुभव में यह थोड़ा अधिक मजबूत है optimक्योंकि इसमें सीमांत मामलों में समाधान की वापसी की संभावना अधिक है, जहां optimयह अभिसरण करने में विफल होगा, हालांकि यह समस्या-आश्रित है। इसकी अच्छी विशेषता है, यदि आप समाधान में इसके मूल्यों की एक संख्यात्मक जाँच करने के लिए, एक स्पष्ट ढाल कार्य प्रदान करते हैं। यदि ये मान संख्यात्मक भिन्नता से प्राप्त लोगों से मेल नहीं खाते हैं, nlminbतो चेतावनी देंगे; इससे यह सुनिश्चित करने में मदद मिलती है कि आपने ग्रेडिएंट (जटिल संभावना के साथ करने में आसान) को निर्दिष्ट करने में गलती नहीं की है।

  • nlmकेवल एक न्यूटन एल्गोरिथ्म का उपयोग करता है। यह अभिसरण तक पहुंचने के लिए कम पुनरावृत्तियों की आवश्यकता के अर्थ में अन्य एल्गोरिदम की तुलना में तेज़ हो सकता है, लेकिन इसकी अपनी कमियां हैं। यह संभावना के आकार के प्रति अधिक संवेदनशील है, इसलिए यदि यह दृढ़ता से गैर-द्विघात है, तो यह धीमा हो सकता है या आप एक गलत समाधान के लिए अभिसरण प्राप्त कर सकते हैं। न्यूटन एल्गोरिथ्म भी हेसियन का उपयोग करता है, और कंप्यूटिंग जो अभ्यास में काफी धीमा हो सकता है कि यह किसी भी सैद्धांतिक गति को रद्द करने से अधिक है।


17

जब किसी विशेष विधि का उपयोग नहीं करना है और नहीं करना है, तो आपके पास डेटा के प्रकार पर काफी हद तक निर्भर करता है। nlmअगर संभावना सतह विशेष रूप से "खुरदरी" नहीं है और हर जगह अलग है, तो बस ठीक काम करेगा। nlminbविशेष रूप से बाउंडिंग बॉक्स के लिए पैरामीटर मानों को बाध्य करने का एक तरीका प्रदान करता है। optim, जो शायद सबसे अधिक उपयोग किया जाने वाला अनुकूलक है, कुछ अलग अनुकूलन मार्ग प्रदान करता है; उदाहरण के लिए, BFGS, L-BFGS-B, और सिम्युलेटेड एनेलिंग (SANN विकल्प के माध्यम से), जिनमें से उत्तरार्द्ध आपके लिए एक कठिन अनुकूलन समस्या होने पर काम कर सकता है। CRAN पर कई आशावादी भी उपलब्ध हैं। rgenoud, उदाहरण के लिए, अनुकूलन के लिए एक आनुवंशिक एल्गोरिथ्म प्रदान करता है।DEoptimएक अलग आनुवंशिक अनुकूलन दिनचर्या का उपयोग करता है। जेनेटिक एल्गोरिदम को अभिसरण करने के लिए धीमा किया जा सकता है, लेकिन आमतौर पर समयावधि में छूट होने पर भी (समय में) अभिसरण की गारंटी दी जाती है। मैं इसके बारे में नहीं जानता DEoptim, लेकिन समानांतर प्रसंस्करण के rgenoudलिए उपयोग करने के snowलिए तैयार है, जो कुछ हद तक मदद करता है।

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

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