एनपी समस्याओं को हल करने के लिए कृत्रिम तंत्रिका नेटवर्क का विकास


10

मैंने हाल ही में न्यूरल नेटवर्क के बारे में बात करते हुए Google रिसर्च ब्लॉग से एक बहुत दिलचस्प ब्लॉग प्रविष्टि पढ़ी है। मूल रूप से वे इस तंत्रिका नेटवर्क का उपयोग छवि मान्यता जैसी विभिन्न समस्याओं को हल करने के लिए करते हैं। वे अक्षतंतु के वजन को "विकसित" करने के लिए आनुवंशिक एल्गोरिदम का उपयोग करते हैं।

तो मूल रूप से मेरा विचार निम्नलिखित है। अगर मुझे एक प्रोग्राम लिखना चाहिए था जो संख्याओं को पहचानता है तो मुझे नहीं पता होगा कि कैसे शुरू करें (मुझे कुछ अस्पष्ट विचार हो सकता है लेकिन मेरी बात यह है: यह तुच्छ नहीं है, न ही आसान है।) लेकिन तंत्रिका नेटवर्क का उपयोग करके मुझे नहीं करना है। तंत्रिका नेटवर्क को विकसित करने के लिए सही संदर्भ का निर्माण करके, मेरा तंत्रिका नेटवर्क "सही एल्गोरिदम ढूंढेगा"। नीचे मैंने लेख का एक बहुत दिलचस्प हिस्सा उद्धृत किया है, जहां वे बताते हैं कि छवि मान्यता की प्रक्रिया में प्रत्येक परत की अलग-अलग भूमिका कैसे होती है।

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

इसलिए मूल रूप से मेरा प्रश्न निम्नलिखित है: क्या हम हर एनपी समस्या को हल करने के लिए आनुवंशिक एल्गोरिदम + तंत्रिका नेटवर्क का उपयोग नहीं कर सकते थे? हम सिर्फ सही विकासवादी संदर्भ बनाते हैं और "प्रकृति" का हल ढूंढते हैं।

इंसेप्शनिज्म: गोइंग डीपर इन न्यूरल नेटवर्क्स

संपादित करें: मुझे पता है कि हम ब्रूट-फोर्स का उपयोग कर सकते हैं या कई मामलों में एक कुशल समाधान नहीं पा सकते हैं। यही कारण है कि मैं कृत्रिम तंत्रिका नेटवर्क को विकसित करने का प्रयास करता हूं । जैसा कि मैंने एक टिप्पणी में कहा था: पर्याप्त समय और एक उपयुक्त उत्परिवर्तन दर को देखते हुए हम इष्टतम समाधान (या कम से कम जो मुझे लगता है) मिल सकता है।

संकल्पना


1
हमें नहीं करना है। हम बस जानवर-बल का उपयोग कर सकते हैं। आपका लक्ष्य क्या है, वास्तव में क्या है?
पाएल जीडी

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

हाँ, एनपी पूरी समस्याओं जैसे ट्रैवलिंग सेल्समैन और कई अन्य लोगों के खिलाफ तंत्रिका जाल का उपयोग किया गया है और उप-विषय पर अनुसंधान / साहित्य है। उनके पास कुछ उपयोगी गुण हो सकते हैं, लेकिन वे जटिलता सिद्धांत के समय की कमी से दूर नहीं होते हैं क्योंकि डीके बताते हैं।
vzn

मेरा कहना है: एक एप्ट्रिप्यूट म्यूटेशन दर और पर्याप्त समय का उपयोग करके हम (कम से कम सैद्धांतिक रूप से) इष्टतम समाधान पा सकते हैं। (या कम से कम एक स्थानीय अधिकतम) छवि: अवधारणा
NMO

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

जवाबों:


21

नहीं, यह निर्देश दो कारणों से उपयोगी होने की संभावना नहीं है:

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

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

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


1
वास्तव में अच्छा जवाब। जेनेटिक एल्गोरिदम + न्यूरल नेटवर्क बहुत शक्तिशाली लगता है लेकिन शायद यह हर एनपी समस्या को हल करने के लिए पर्याप्त नहीं है। मैं इस पी समाधान की तलाश में जंगली में इस तंत्रिका नेटवर्क + आनुवंशिक एल्गोरिदम छोड़ने की कल्पना करता हूं। जैसे छोटे स्काउट हाहा।
NMO

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

9

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


4

तंत्रिका नेटवर्क वास्तव में एनपी-पूर्ण समस्याओं को हल नहीं करते हैं। वे जो करते हैं, वह उन समस्याओं को हल करता है जो उल्लेखनीय रूप से एनपी-पूर्ण समस्याओं के करीब हैं।

तंत्रिका नेटवर्क की एक बड़ी विशेषता यह है कि वे हर बार "सही" उत्तर खोजने के लिए बाध्य नहीं होते हैं। उन्हें "गलत" होने की अनुमति है। उदाहरण के लिए, आप एक बिन-पैकिंग समस्या को हल कर सकते हैं, और एक समाधान पर आ सकते हैं जो आदर्श समाधान का 1% है और उस उत्तर के साथ पूरी तरह से संतुष्ट होना चाहिए।

यदि आप हर बार 100% सही होने की आवश्यकता को दूर करते हैं, तो अन्य समस्या को हल करने वाले दृष्टिकोण बहुत अच्छी तरह से काम करते हैं। उदाहरण के लिए, कई रूट प्लानिंग एल्गोरिदम (एक ला गूगल मैप्स) को एनपी-पूर्ण होना चाहिए, लेकिन एल्गोरिथ्म को खोजने के लिए यह काफी तुच्छ है जो कि 99.9% समय के 1% के भीतर एक रास्ता ढूंढता है। यह उन पिछले 0.1% मामलों में परिणामों को पिन करने की कोशिश कर रहा है जो एनपी-पूर्ण प्रयासों को इतना महंगा करने के लिए ड्राइव करते हैं।

जैसा कि होता है, जब हम वास्तविक जीवन में एनपी-पूर्ण समीकरणों का उपयोग करने का प्रयास करते हैं, तो हमें अक्सर वास्तविक उत्तर की आवश्यकता नहीं होती है । हम अक्सर "क्लोज़" उत्तर के साथ बहुत सहज होते हैं, हालांकि हम अक्सर यह बताने के लिए कोई शब्द नहीं बनाते हैं कि हम "क्लोज़" मीट्रिक का क्या उपयोग कर रहे हैं। ये ऐसी स्थितियाँ हैं जहाँ एक तंत्रिका नेटवर्क वास्तविक प्रश्न का उत्तर दे सकता है जो आप पूछना चाहते थे, बजाय इसके कि आप वास्तव में एनपी-पूर्ण समस्या को हल करें।


1

तंत्रिका नेटवर्क सार्वभौमिक फ़ंक्शन सन्निकटन के लिए सक्षम होने के लिए जाने जाते हैं , लेकिन इसके लिए उन्हें समस्या (अनुकूलन) पर प्रशिक्षण देना पड़ता है , जो कि अपने आप में एक एनपी-पूर्ण समस्या है , यही कारण है कि आपके पास बैकप्रोपेगेशन और इतने पर विकासवादी प्रशिक्षण और SGD है।

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

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


क्या आप अपने उत्तर में कुछ संदर्भ जोड़ सकते हैं? इसके अलावा, स्वरूपण में सुधार करने का प्रयास करें (उदाहरण के लिए, NP, SGD, backpropagation, और इसी तरह, और शायद कुछ लाइन ब्रेक जोड़ें) का उपयोग करें।
युवल फिल्मस 12

ठीक है, कुछ संपादन मुझे किसी भी तरह से करने दें, अगर मुझे कहीं और गहराई में जाना चाहिए
14

मुझे लगता है कि आपको अपने दावे के लिए कुछ औचित्य प्रदान करना चाहिए कि "विकासवादी एल्गोरिदम ... स्थानीय आशाओं में फंसने के लिए SGD और अन्य मशीन सीखने की तकनीकों की तुलना में कम उपयुक्त हैं"। मुझे नहीं लगता कि यह सही है, विशेष रूप से तंत्रिका नेटवर्क के प्रशिक्षण के विशेष कार्य के लिए।
DW

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

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