2011-11-08 16 views
11

मैं स्टोकास्टिक ग्रेडियेंट वंश का उपयोग करके बैक-प्रोपेगेशन के माध्यम से एक्सओआर तंत्रिका नेटवर्क को प्रशिक्षण दे रहा हूं। तंत्रिका नेटवर्क के वजन को -0.5 और 0.5 के बीच यादृच्छिक मानों में प्रारंभ किया जाता है। तंत्रिका नेटवर्क सफलतापूर्वक 80% समय के भीतर खुद को प्रशिक्षित करता है। हालांकि कभी-कभी बैकप्रोपागेटिंग के दौरान यह "अटक" हो जाता है। "अटक" से, मेरा मतलब है कि मैं त्रुटि सुधार की कमी दर को देखना शुरू कर देता हूं। उदाहरण के लिए, एक सफल प्रशिक्षण के दौरान, कुल त्रुटि अपेक्षाकृत जल्दी के रूप में नेटवर्क, सीखता है तो तरह कम हो जाती है:एक्सओआर तंत्रिका नेटवर्क त्रुटि प्रशिक्षण के दौरान घटती रहती है

... 
... 
Total error for this training set: 0.0010008071327708653 
Total error for this training set: 0.001000750550254843 
Total error for this training set: 0.001000693973929822 
Total error for this training set: 0.0010006374037948094 
Total error for this training set: 0.0010005808398488103 
Total error for this training set: 0.0010005242820908169 
Total error for this training set: 0.0010004677305198344 
Total error for this training set: 0.0010004111851348654 
Total error for this training set: 0.0010003546459349181 
Total error for this training set: 0.0010002981129189812 
Total error for this training set: 0.0010002415860860656 
Total error for this training set: 0.0010001850654351723 
Total error for this training set: 0.001000128550965301 
Total error for this training set: 0.0010000720426754587 
Total error for this training set: 0.0010000155405646494 
Total error for this training set: 9.99959044631871E-4 

Testing trained XOR neural network 
0 XOR 0: 0.023956746649767453 
0 XOR 1: 0.9736079194769579 
1 XOR 0: 0.9735670067093437 
1 XOR 1: 0.045068688874314006 

हालांकि जब यह अटक जाती है, कुल त्रुटियों को कम कर रहे हैं, लेकिन यह एक कम दर पर हो रहा है :

... 
... 
Total error for this training set: 0.12325486644721295 
Total error for this training set: 0.12325486642503929 
Total error for this training set: 0.12325486640286581 
Total error for this training set: 0.12325486638069229 
Total error for this training set: 0.12325486635851894 
Total error for this training set: 0.12325486633634561 
Total error for this training set: 0.1232548663141723 
Total error for this training set: 0.12325486629199914 
Total error for this training set: 0.12325486626982587 
Total error for this training set: 0.1232548662476525 
Total error for this training set: 0.12325486622547954 
Total error for this training set: 0.12325486620330656 
Total error for this training set: 0.12325486618113349 
Total error for this training set: 0.12325486615896045 
Total error for this training set: 0.12325486613678775 
Total error for this training set: 0.12325486611461482 
Total error for this training set: 0.1232548660924418 
Total error for this training set: 0.12325486607026936 
Total error for this training set: 0.12325486604809655 
Total error for this training set: 0.12325486602592373 
Total error for this training set: 0.12325486600375107 
Total error for this training set: 0.12325486598157878 
Total error for this training set: 0.12325486595940628 
Total error for this training set: 0.1232548659372337 
Total error for this training set: 0.12325486591506139 
Total error for this training set: 0.12325486589288918 
Total error for this training set: 0.12325486587071677 
Total error for this training set: 0.12325486584854453 

जब मैं तंत्रिका नेटवर्क मैं स्थानीय minimas और वैश्विक minimas और कैसे तंत्रिका नेटवर्क वास्तव में नहीं "पता" है जो minima अपनी ओर जा होना चाहिए पर एक चर्चा में आए पर पढ़ रहा था।

क्या मेरा नेटवर्क वैश्विक न्यूनतम के बजाय स्थानीय मिनीमा में फंस रहा है?

उत्तर

6

हां, तंत्रिका नेटवर्क त्रुटि सतह के आधार पर स्थानीय न्यूनतम में फंस सकते हैं। हालांकि this abstract बताता है कि एक्सओआर समस्या की त्रुटि सतह में कोई स्थानीय न्यूनतम नहीं है। हालांकि मैं पूर्ण पाठ तक नहीं पहुंच सकता, इसलिए मैं यह सत्यापित नहीं कर सकता कि लेखकों ने यह साबित करने के लिए क्या किया है और यह आपकी समस्या पर कैसे लागू होता है।

इस समस्या का कारण बनने वाले अन्य कारक भी हो सकते हैं। उदाहरण के लिए यदि आप कुछ खड़ी घाटी पर बहुत तेजी से उतरते हैं, तो यदि आप केवल पहले ऑर्डर ग्रेडियेंट वंश का उपयोग करते हैं, तो आप विपरीत ढलान पर जा सकते हैं और हर समय आगे बढ़ सकते हैं। आप प्रत्येक पुनरावृत्ति पर सभी वजनों पर औसत परिवर्तन देने का प्रयास कर सकते हैं, यह जांचने के लिए कि क्या आपके पास वास्तव में "अटक" नेटवर्क है, या बल्कि एक, जो कि केवल एक सीमा चक्र में चला गया है।

आपको सबसे पहले अपने पैरामीटर (सीखने की दर, गति लागू करने पर गति) के साथ झुकाव करने की कोशिश करनी चाहिए। यदि आप समस्या को दूर कर सकते हैं, पैरामीटर बदलकर, आपका एल्गोरिदम शायद ठीक है।

+0

धन्यवाद! आपके जवाब ने इसे बहुत स्पष्ट बना दिया। ऐसा प्रतीत होता है कि तंत्रिका नेटवर्क सटीक नहीं हैं और कुछ मात्रा में फजीनेस शामिल है।मैं चारों ओर पैरामीटर बदलने की कोशिश करता हूं और समस्या को दूर करने की कोशिश करता हूं। –

+0

मैं [इस पेपर] में चला गया [http://www.ncbi.nlm.nih.gov/pubmed/18252598) ('99 में प्रकाशित, आपके द्वारा उद्धृत किए जाने के एक साल बाद) जो कहता है कि स्थानीय न्यूनतम है 2-3-1 एक्सओआर नेटवर्क (मैं 3-3-1 एक्सओआर नेटवर्क का उपयोग कर रहा हूं; सुनिश्चित नहीं है कि इनपुट परत पर पूर्वाग्रह आवश्यक है)। फिर, बस आपके मामले में यह एक सार है। –

+0

मैंने यह भी देखा [यह पेपर] (http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=3&ved=0CDMQFjAC&url=http%3A%2F%2Fciteseerx.ist.psu.edu % 2Fviewdoc% 2Fdownload% 3Fdoi% 3D10.1.1.31.4770% 26rep% 3Drep1% 26type% 3Dpdf और Ei = -WK5TqjAGIaviAL636jTBA और यूएसजी = AFQjCNEaQ0jG2bkD4ipXcfgXDr9mHrxRMQ और sig2 = BD8IyRc8Clg2XftdR20W9w) जो कहता है कि सबसे सरल XOR नेटवर्क के लिए कोई न्यूनतम है वहाँ है कि, लेकिन यह एक होना प्रतीत नहीं होता है 2-3-1 या 3-3-1 नेटवर्क। –

2

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

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

http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.31.4770

http://www.ncbi.nlm.nih.gov/pubmed/12662806

1

मैं एक ही मुद्दे का सामना करना पड़ा और पाया कि सक्रियण समारोह 1.7159 * tanh (2/3 * x) LeCun's "Efficient Backprop" paper में वर्णित का उपयोग कर मदद करता है। यह संभवतः इसलिए है क्योंकि यह कार्य लक्ष्य मानों {-1, 1} के आस-पास संतृप्त नहीं होता है, जबकि नियमित तन करता है।

संबंधित मुद्दे