L-BFGS कैसे काम करता है?


15

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

यह कैसे काम करता है ?


3
क्या कागज? कागज के लिंक में रखें एक संदर्भ की आवश्यकता है। सम-विषम के लिंक में रखें, जैसे L-BFGS और उन्हें वर्तनी दें: L-BFGS = सीमित-मेमोरी ब्रोयडेन-फ्लेचर-गोल्डफर्ब-शन्नो (BFGS) एल्गोरिथ्म
कार्ल

1
en.wikipedia.org/wiki/Limited-memory_BFGS कई विविधताएं हैं, जो क्षमता और प्रदर्शन में बहुत भिन्न हो सकती हैं।
मार्क एल। स्टोन

नमस्ते, धन्यवाद श्री मार्क :) मैं एक नज़र डालूँगा। पेपर cs.stanford.edu/people/jure/pubs/circles-tkdd14.pdf (समीकरण 6 अनुकूलन)
अबीर

मूल रूप से एल-बीएफजीएस को एक वस्तुनिष्ठ फ़ंक्शन के न्यूनतम (स्थानीय) खोजने के तरीके के रूप में सोचते हैं, जिससे उद्देश्य फ़ंक्शन मान और उद्देश्य फ़ंक्शन के ग्रेडिएंट का उपयोग किया जाता है। हालांकि विवरण का स्तर L-BFGS के अलावा कई अनुकूलन विधियों को शामिल करता है। आप इसके बारे में और अधिक पढ़ सकते हैं । स्प्रिंगर . com/us/book/9780387303031 की धारा 7.2 में ।
मार्क एल। स्टोन

1
BFGS सेकेंड ऑर्डर विधि (न्यूटन) की नकल करने के लिए पहला तरीका प्राप्त करने की कोशिश करने का एक तरीका है
sec795305

जवाबों:


28

मूल रूप से एल-बीएफजीएस को एक वस्तुनिष्ठ फ़ंक्शन के न्यूनतम (स्थानीय) खोजने के तरीके के रूप में सोचते हैं, जिससे उद्देश्य फ़ंक्शन मान और उद्देश्य फ़ंक्शन के ग्रेडिएंट का उपयोग किया जाता है। हालांकि विवरण का स्तर L-BFGS के अलावा कई अनुकूलन विधियों को शामिल करता है। आप इसके बारे में Nocedal और Wright "संख्यात्मक अनुकूलन, द्वितीय संस्करण" http://www.springer.com/us/book/9780387303031 की धारा 7.2 में अधिक पढ़ सकते हैं । L-BFGS की बहुत सरसरी चर्चा https://en.wikipedia.org/wiki/Limited-memory_BnGS पर उपलब्ध कराई गई है ।

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

दूसरा आदेश विधि का अर्थ है ग्रेडिएंट्स और हेसियन का उपयोग किया जाता है (और शायद उद्देश्य फ़ंक्शन मान)। दूसरे आदेश तरीके या तो पर आधारित हो सकते हैं

  1. "सटीक" हेसियन मैट्रिक्स (या ग्रेडिएंट्स के अंतर), जिस स्थिति में उन्हें न्यूटन विधियों या के रूप में जाना जाता है

  2. क्वासी-न्यूटन के तरीके, जो "धर्मनिरपेक्ष" (क्वासी-न्यूटन) स्थिति को लागू करके कई पुनरावृत्तियों पर ग्रेडिएंट के अंतर के आधार पर हेसियन को अनुमानित करते हैं। कई अलग-अलग क्वैसी-न्यूटन विधियां हैं, जो विभिन्न तरीकों से हेसियन का अनुमान लगाती हैं। सबसे लोकप्रिय में से एक BFGS है। बीएफजीएस हेसियन सन्निकटन या तो ग्रेडिएंट के पूर्ण इतिहास पर आधारित हो सकता है, जिस स्थिति में इसे बीएफजीएस के रूप में संदर्भित किया जाता है, या यह केवल सबसे हाल के एम ग्रेडर्स पर आधारित हो सकता है, जिस स्थिति में इसे सीमित मेमोरी बीएफजीएस के रूप में जाना जाता है, संक्षिप्त रूप में एल-बीएफजीएस के रूप में। एल-बीएफजीएस का लाभ यह है कि केवल सबसे हाल के मीटर ग्रेडिएंट्स को बरकरार रखने की आवश्यकता है, जहां एम आमतौर पर लगभग 10 से 20 है, जो पूर्ण स्टोर करने के लिए आवश्यक n * (n + 1) / 2 तत्वों की तुलना में बहुत कम भंडारण आवश्यकता है। (त्रिकोण) एक Hessian अनुमान, जैसा कि BFGS के साथ आवश्यक है, जहां n समस्या का आयाम है। बीएफजीएस के विपरीत (पूर्ण), हेसियन का अनुमान कभी भी एल-बीएफजीएस में स्पष्ट रूप से गठित या संग्रहीत नहीं होता है (हालांकि बीएफजीएस के कुछ कार्यान्वयन केवल फॉर्म और हेसियन सन्निकटन के चोलेस्की कारक को अपडेट करते हैं, न कि हेसियन सन्निकटन के बजाय); इसके बजाय, हेसियन के अनुमान के साथ जिन गणनाओं की आवश्यकता होगी, उन्हें स्पष्ट रूप से गठित किए बिना पूरा किया जाता है। बहुत बड़ी समस्याओं (जब n बहुत बड़ी है) के लिए बीएफजीएस के बजाय एल-बीएफजीएस का उपयोग किया जाता है, लेकिन बीएफजीएस के रूप में अच्छी तरह से प्रदर्शन नहीं कर सकता है। इसलिए, बीएफजीएस को एल-बीएफजीएस से अधिक पसंद किया जाता है जब बीएफजीएस की मेमोरी आवश्यकताओं को पूरा किया जा सकता है। दूसरी ओर, L-BFGS, BFGS की तुलना में प्रदर्शन में बहुत खराब नहीं हो सकता है। हेसियन का अनुमान कभी भी एल-बीएफजीएस में स्पष्ट रूप से गठित या संग्रहीत नहीं किया गया है (हालांकि बीएफजीएस के कुछ कार्यान्वयन केवल फॉर्म और हेसियन सन्निकटन के चेल्सकी कारक को अपडेट करते हैं, बल्कि हेसियन सन्निकटन के बजाय); इसके बजाय, हेसियन के अनुमान के साथ जिन गणनाओं की आवश्यकता होगी, उन्हें स्पष्ट रूप से गठित किए बिना पूरा किया जाता है। बहुत बड़ी समस्याओं (जब n बहुत बड़ी है) के लिए बीएफजीएस के बजाय एल-बीएफजीएस का उपयोग किया जाता है, लेकिन बीएफजीएस के रूप में अच्छी तरह से प्रदर्शन नहीं कर सकता है। इसलिए, बीएफजीएस को एल-बीएफजीएस से अधिक पसंद किया जाता है जब बीएफजीएस की मेमोरी आवश्यकताओं को पूरा किया जा सकता है। दूसरी ओर, L-BFGS, BFGS की तुलना में प्रदर्शन में बहुत खराब नहीं हो सकता है। हेसियन का अनुमान कभी भी एल-बीएफजीएस में स्पष्ट रूप से गठित या संग्रहीत नहीं किया गया है (हालांकि बीएफजीएस के कुछ कार्यान्वयन केवल फॉर्म और हेसियन सन्निकटन के चेल्सकी कारक को अपडेट करते हैं, बल्कि हेसियन सन्निकटन के बजाय); इसके बजाय, हेसियन के अनुमान के साथ जिन गणनाओं की आवश्यकता होगी, उन्हें स्पष्ट रूप से गठित किए बिना पूरा किया जाता है। बहुत बड़ी समस्याओं (जब n बहुत बड़ी है) के लिए बीएफजीएस के बजाय एल-बीएफजीएस का उपयोग किया जाता है, लेकिन बीएफजीएस के रूप में अच्छी तरह से प्रदर्शन नहीं कर सकता है। इसलिए, बीएफजीएस को एल-बीएफजीएस से अधिक पसंद किया जाता है जब बीएफजीएस की मेमोरी आवश्यकताओं को पूरा किया जा सकता है। दूसरी ओर, L-BFGS, BFGS की तुलना में प्रदर्शन में बहुत खराब नहीं हो सकता है। हेसियन के अनुमान के साथ जिन गणनाओं की आवश्यकता होगी, उन्हें स्पष्ट रूप से बनाए बिना पूरा किया जाता है। बहुत बड़ी समस्याओं (जब n बहुत बड़ी है) के लिए बीएफजीएस के बजाय एल-बीएफजीएस का उपयोग किया जाता है, लेकिन बीएफजीएस के रूप में अच्छी तरह से प्रदर्शन नहीं कर सकता है। इसलिए, बीएफजीएस को एल-बीएफजीएस से अधिक पसंद किया जाता है जब बीएफजीएस की मेमोरी आवश्यकताओं को पूरा किया जा सकता है। दूसरी ओर, L-BFGS, BFGS की तुलना में प्रदर्शन में बहुत खराब नहीं हो सकता है। हेसियन के अनुमान के साथ जिन गणनाओं की आवश्यकता होगी, उन्हें स्पष्ट रूप से बनाए बिना पूरा किया जाता है। बहुत बड़ी समस्याओं (जब n बहुत बड़ी है) के लिए बीएफजीएस के बजाय एल-बीएफजीएस का उपयोग किया जाता है, लेकिन बीएफजीएस के रूप में भी अच्छा प्रदर्शन नहीं कर सकता है। इसलिए, बीएफजीएस को एल-बीएफजीएस से अधिक पसंद किया जाता है जब बीएफजीएस की मेमोरी आवश्यकताओं को पूरा किया जा सकता है। दूसरी ओर, L-BFGS, BFGS की तुलना में प्रदर्शन में बहुत खराब नहीं हो सकता है।

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


1
हाय मार्क, मुझे आपकी मदद की ज़रूरत है, क्या आप मुझे न्यूटन और क़ाज़ी न्यूटन के तरीकों के बीच का अंतर बता सकते हैं ?? धन्यवाद
अबीर

3
न्यूटन विधियाँ हेसियन मैट्रिक्स की गणना करती हैं, "स्क्रैच द्वारा", एल्गोरिथ्म के प्रत्येक पुनरावृत्ति पर, या तो बिल्कुल, या उस पुनरावृत्ति में ढाल के परिमित-अंतर द्वारा .. क्वासी-न्यूटन विधियाँ हेसियन मैट्रिक्स के सन्निकटन का उपयोग करके निर्माण करती हैं पुनरावृत्तियों में ढाल अंतर। इसे करने के कई अलग-अलग तरीके हैं, जो विभिन्न प्रकार के क्वैसी-न्यूटन तरीकों को जन्म देते हैं, जैसे बीएफजीएस, डीएफपी, एसआर 1, और अन्य। आमतौर पर न्यूटन के तरीकों को हेसियन की गणना करने के लिए प्रत्येक पुनरावृत्ति पर बड़ी मात्रा में कम्पासिंग की आवश्यकता होती है, क्वैसी-न्यूटन विधियों की तुलना में प्रति पुनरावृत्ति बहुत अधिक कंप्यूटिंग है।
मार्क एल। स्टोन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.