डरना। बहुत डरते हो।
पिछले साल, मैंने आईबीएम के डेवलपरवेयरक्स साइट पर एक लेख के लिए, आशा और आशा के लेखक जॉन नैश का साक्षात्कार किया । हमने इस बारे में बात की कि ऑप्टिमाइज़र कैसे काम करते हैं और असफल होने पर वे क्यों असफल होते हैं। वह इसे लेने के लिए लग रहा था कि वे अक्सर करते हैं। यही कारण है कि निदान पैकेज में शामिल हैं। उन्होंने यह भी सोचा कि आपको "अपनी समस्या को समझने" की आवश्यकता है, और अपने डेटा को समझें। जिनमें से सभी का अर्थ है कि चेतावनी को गंभीरता से लिया जाना चाहिए, और अन्य तरीकों से आपके डेटा को देखने के लिए एक निमंत्रण है।
आमतौर पर, एक ऑप्टिमाइज़र तब खोजना बंद कर देता है जब वह अब सार्थक राशि से नुकसान के कार्य में सुधार नहीं कर सकता है। यह नहीं पता है कि मूल रूप से कहां जाना है। यदि उस बिंदु पर नुकसान फ़ंक्शन का ग्रेडिएंट शून्य नहीं है, तो आप किसी भी प्रकार के चरम पर नहीं पहुंचे हैं। यदि हेसियन सकारात्मक नहीं है, लेकिन ढाल शून्य है, तो आपको न्यूनतम नहीं मिला है, लेकिन संभवतः, आपने एक अधिकतम या काठी बिंदु पाया। आशावादी के आधार पर, हालांकि हेसियन के बारे में परिणाम की आपूर्ति नहीं की जा सकती है। ऑप्टिमेक्स में, यदि आप चाहते हैं कि केकेटी की स्थितियों का मूल्यांकन किया जाए, तो आपको उनके लिए पूछना होगा - उनका मूल्यांकन डिफ़ॉल्ट रूप से नहीं किया जाता है। (ये स्थितियां ढाल और हेसियन को देखने के लिए देखती हैं कि क्या आपके पास वास्तव में न्यूनतम है।)
मिश्रित मॉडल के साथ समस्या यह है कि यादृच्छिक प्रभावों के लिए विचरण अनुमान सकारात्मक होने के लिए विवश हैं, इस प्रकार अनुकूलन क्षेत्र के भीतर एक सीमा रखते हैं। लेकिन मान लीजिए कि किसी विशेष यादृच्छिक प्रभाव की वास्तव में आपके मॉडल में आवश्यकता नहीं है - अर्थात यादृच्छिक प्रभाव का विचरण 0. है। आपका आशावादी उस सीमा में आ जाएगा, आगे बढ़ने में असमर्थ हो सकता है, और एक गैर-शून्य ढाल के साथ रुक सकता है। यदि उस यादृच्छिक प्रभाव में सुधार से अभिसरण को हटा दिया जाए, तो आप जान पाएंगे कि यह समस्या थी।
एक तरफ के रूप में, ध्यान दें कि स्पर्शोन्मुखी अधिकतम संभावना सिद्धांत मानता है कि MLE एक आंतरिक बिंदु में पाया जाता है (अर्थात लाइसेंस पैरामीटर मानों की सीमा पर नहीं) - इसलिए विचरण घटकों के लिए संभावना अनुपात परीक्षण तब काम नहीं कर सकता है जब वास्तव में शून्य विचरण की शून्य परिकल्पना होती है। सच। सिमुलेशन परीक्षण का उपयोग करके परीक्षण किया जा सकता है, जैसा कि पैकेज RLRsim में लागू किया गया है।
मेरे लिए, मुझे संदेह है कि ऑप्टिमाइज़र समस्याओं में चलते हैं जब मापदंडों की संख्या के लिए बहुत कम डेटा होता है, या प्रस्तावित मॉडल वास्तव में उपयुक्त नहीं है। ग्लास चप्पल और बदसूरत सौतेली बहन के बारे में सोचें: आप अपने डेटा को मॉडल में ढाल नहीं सकते, चाहे आप कितनी भी कोशिश कर लें, और कुछ देना होगा।
यहां तक कि अगर डेटा मॉडल को फिट करने के लिए होता है, तो उनके पास सभी मापदंडों का अनुमान लगाने की शक्ति नहीं हो सकती है। उन पंक्तियों के साथ मेरे साथ एक मजेदार बात हुई। मैंने एक प्रश्न का उत्तर देने के लिए कुछ मिश्रित मॉडल का अनुकरण कियाअगर आप मिश्रित प्रभावों वाले मॉडल की फिटिंग करते समय यादृच्छिक प्रभावों को सहसंबद्ध नहीं होने देते हैं तो क्या होता है। मैंने दो यादृच्छिक प्रभावों के बीच एक मजबूत सहसंबंध के साथ डेटा का अनुकरण किया, फिर मॉडल को दोनों तरीकों से फिट किया: 0 सहसंबंध और मुक्त सहसंबंध प्रस्तुत करना। सहसंबंध मॉडल असंबद्ध मॉडल की तुलना में बेहतर है, लेकिन दिलचस्प बात यह है कि 1000 सिमुलेशन में, मेरे पास 13 त्रुटियां थीं, जब सच्चे मॉडल को फिटिंग करते हुए और सरल मॉडल को फिट करते समय 0 त्रुटियां थीं। मुझे पूरी तरह से समझ में नहीं आया कि ऐसा क्यों हुआ (और मैंने इसी तरह के परिणामों के लिए सिम्स को दोहराया)। मुझे संदेह है कि सहसंबंध पैरामीटर काफी बेकार है और ऑप्टिमाइज़र को मूल्य नहीं मिल सकता है (क्योंकि यह कोई फर्क नहीं पड़ता)।
आपने पूछा कि अलग-अलग ऑप्टिमाइज़र अलग-अलग परिणाम देने पर क्या करें। जॉन और मैंने इस बिंदु पर चर्चा की। कुछ ऑप्टिमाइज़र, उनकी राय में, बस इतना अच्छा नहीं है! और उनमें से सभी में कमजोरी के बिंदु हैं - यानी, डेटा सेट जो उन्हें विफल करने का कारण होगा। यही कारण है कि उन्होंने ऑप्टिमेक्स लिखा, जिसमें विभिन्न प्रकार के ऑप्टिमाइज़र शामिल हैं। आप एक ही डेटा सेट पर कई चला सकते हैं।
यदि दो ऑप्टिमाइज़र एक ही पैरामीटर देते हैं, लेकिन विभिन्न डायग्नोस्टिक्स - और वे पैरामीटर वास्तविक दुनिया को समझ में आते हैं - तो मैं पैरामीटर मानों पर भरोसा करना चाहूंगा। कठिनाई निदान के साथ झूठ हो सकती है, जो मूर्खतापूर्ण नहीं है। यदि आपने स्पष्ट रूप से ग्रेडिएंट फ़ंक्शन और / या हेसियन मैट्रिक्स की आपूर्ति नहीं की है, तो ऑप्टिमाइज़र को नुकसान फ़ंक्शन और डेटा से ये अनुमान लगाने की आवश्यकता होगी, जो कि कुछ और है जो गलत हो सकता है।
यदि आपको अलग-अलग पैरामीटर मान मिल रहे हैं, तो हो सकता है कि आप अलग-अलग शुरुआती मान आज़माएँ और देखें कि तब क्या होता है। कुछ आशावादी और कुछ समस्याएं शुरुआती मूल्यों के प्रति बहुत संवेदनशील हैं। आप बॉल पार्क में शुरू होना चाहते हैं।
lme4
(संस्करण 1.1-7) में अलग-अलग चेतावनी व्यवहार है जो लेखकों का मानना है कि "गलत अलार्म" चेतावनी देने की संभावना कम है। आपlme4
नवीनतम संस्करण को अपडेट करने का प्रयास कर सकते हैं , मॉडल को फिर से फिट कर सकते हैं, और अगर आपको अभी भी समान चेतावनी मिलती है, तो कम से कम पहले मामले में।