नियमित सेट सीखने के लिए दाना एंग्लुइन के एल्गोरिथ्म में सुधार हैं


33

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

वह बताती है कि यदि आप n अवस्थाओं के साथ एक न्यूनतम DFA सीखने का प्रयास कर रहे हैं , और आपकी सबसे बड़ी उलटी गिनती लंबाई m , तो आपको O(mn2) सदस्यता-प्रश्न और अधिकांश n1 सिद्धांत-प्रश्न बनाने की आवश्यकता है।

क्या नियमित सेट सीखने के लिए आवश्यक प्रश्नों की संख्या में महत्वपूर्ण सुधार हुए हैं?


संदर्भ और संबंधित प्रश्न


उम्मीद है, @DominikFreydenberger भविष्य में किसी बिंदु पर गिरता है। उसे पता होगा।
राफेल

2
मुझे संदेह है कि @LevReyzin को इसका उत्तर पता होगा, भी ... और यही कारण है कि मुझे मूल रूप से cstheory पर पूछने पर विचार किया गया था, लेकिन मुझे लगता है कि मुझे इस नई साइट को विकसित करने में मदद करनी चाहिए।
आर्टेम काज़नाचेव

प्रश्न का उत्तर नहीं, लेकिन फिर भी मददगार हो सकता है: [ citeulike.org/user/erelsegal-halevi/article/9275508 नियमित भाषा सीखने के लिए एक सार्वभौमिक कर्नेल]
सहगल-

लिंक @ ईरेल के लिए धन्यवाद, लेकिन मुझे समझ नहीं आता कि यह कैसे संबंधित है। कॉन्टोरोविच का सार्वभौमिक कर्नेल कुशलता से गणना करने योग्य नहीं है, और सीखने के मॉडल में प्रतिपक्ष नहीं है।
आर्टेम काज़नाचेव 12

जवाबों:


15

में अपने जवाब cstheory.SE पर, लेव Reyzin करने के लिए मुझे निर्देशित रॉबर्ट स्पायर की थीसिस के लिए बाध्य को बेहतर बनाता है कि खंड 5.4.5 में सदस्यता प्रश्नों। प्रतिसाद देने वाले प्रश्नों की संख्या अपरिवर्तित रहती है। एल्गोरिथ्म Schapire एक counterexample क्वेरी के बाद क्या करता है में भिन्न होता है।O(n2+nlogm)


सुधार का स्केच

उच्चतम स्तर पर, Schapire बलों Angluin एल्गोरिथ्म से अतिरिक्त शर्त है कि एक बंद कर दिया के लिए ( एस , , टी ) और प्रत्येक एस 1 , एस 2एस यदि रों 1रों 2 तो आर डब्ल्यू ( एस 1 ) आर डब्ल्यू ( रों 2 ) । यह गारंटी देता है कि | एस |(S,E,T)(S,E,T)s1,s2Ss1s2row(s1)row(s2) औरसंतुष्ट करने के लिए एंग्लुइन के एल्गोरिथ्मकीस्थिरतासंपत्तिभी बनाता है। यह सुनिश्चित करने के लिए, उसे एक प्रतिरूप के परिणामों को अलग तरीके से संभालना होगा।|S|n

एक प्रतिरूप को देखते हुए , एंग्लुइन ने केवल z और इसके सभी उपसर्गों को S में जोड़ा । Schapire एक तत्व E को E में जोड़ने के बजाय कुछ अधिक सूक्ष्म करता है । यह नई एंग्लुइन के अर्थ में बंद नहीं होगी ( एस , , टी ) और सभी पंक्तियों को अलग रखते हुए एस को कम से कम एक नए स्ट्रिंग को शुरू करने के अपडेट को बंद कर देगा । पर स्थिति है:zzSeEe(S,E,T)Se

s,sS,aΣs.trow(s)=row(sa)ando(δ(q0,se))o(δ(q0,sae))

कहाँ उत्पादन कार्य है, क्ष 0 प्रारंभिक अवस्था है, और δ सच 'अज्ञात' DFA का नवीनीकरण नियम। Otherwords में, के भविष्य के भेद करने के लिए एक गवाह के रूप में काम करना चाहिए रों से रों ' एकoq0δessa

इस को z से जानने के लिए, हम एक बाइनरी सर्च करते हैं एक विकल्प r का पता लगाने के लिए मैं ऐसा z = p i r i और 0 e | p i | = मैं < | z | हमारे इनपुट मशीन के आधार पर हमारे अनुमानित-मशीन का व्यवहार भिन्न होता है। और अधिक विस्तार में, हम जाने रों मैं स्ट्रिंग राज्य के लिए इसी होना का पालन करते हुए हमारे conjectured मशीन में पहुंचा पी मैं । हम बाइनरी खोज का उपयोग करते हैं (यह वह जगह है जहां लॉग एमezriz=piri0|pi|=i<|z|sipilogmसे आता है) एक खोजने के लिए ऐसी है कि ( δ ( क्ष 0 , रों कश्मीर आर कश्मीर ) ) ( δ ( क्ष 0 , रों कश्मीरk। दूसरे शब्दों में, आर कश्मीर + 1 अलग है दो कहा गया है कि हमारी अनुमानित मशीनें समतुल्य हैं और इस प्रकारपर स्थिति को संतुष्ट करती हैं, इसलिए हम इसेई मेंजोड़ते हैं।o(δ(q0,skrk))o(δ(q0,sk+1rk+1)rk+1eE


5

मुझे नहीं पता कि क्या मेरा जवाब अभी भी प्रासंगिक है। हाल ही में यह एक नया एल्गोरिथ्म के कार्यान्वयन का वर्णन किया गया है जिसे ओब्जर्वेशन पैक कहा जाता है या कुछ परिस्थितियों में फाल्क हावर द्वारा भेदभाव ट्री। यह एल्गोरिथ्म एल * की तरह है लेकिन काउंटरटेम्पल अपघटन को संभालने के लिए रिवेस्ट-शेपायर या एक अन्य विधि (स्टीफन और इसबर्नर देखें) का उपयोग करें; और यह कुशलतापूर्वक एक "sift" बनाने के लिए एक डेटा संरचना, एक भेदभाव वृक्ष (एक द्विआधारी वृक्ष) का उपयोग करता है, अर्थात् एक नए राज्य का एक संक्रमण (जहां A वर्णमाला का प्रत्येक प्रतीक है) का सम्मिलन तब तक पाया जाता है जब तक कि निकटता न हो। । यह एल्गोरिथ्म दो संस्करणों में मौजूद है: OneGlobally और OneLocally के अनुसार कि विघटन में स्थापित प्रत्यय प्रत्येक घटक में जोड़ा जाता है या नहीं (एल्गोरिथम के पीछे का अनुपात यह है कि एक घटक में सभी उपसर्ग एक छोटे उपसर्ग के बराबर हैं और प्रत्यय के अनुसार लक्ष्य में समान राज्य का प्रतिनिधित्व करते हैं। इस समय। बाद में एक नए प्रत्यय के साथ एक नया प्रत्यय पाया जाता है जो एक ही घटक के कम से कम 2 उपसर्गों में भेदभाव करता है। यह दो घटक में उस घटक के विभाजन का कारण बनता है)। OneLocally के साथ बहुत कम सदस्यता क्वेरी हैं लेकिन समतुल्यता क्वेरी की संख्या बड़े लक्ष्य DFA के साथ काफी बढ़ सकती है। बल्कि OneGlo की वैश्विक सदस्यता संख्या हमेशा L * से कम होती है (लेकिन OneLocally से अधिक) और L * की तुलना में समतुल्य प्रश्नों की एक समान संख्या होती है। बाद में एक नए प्रत्यय के साथ एक नया प्रत्यय पाया जाता है जो एक ही घटक के कम से कम 2 उपसर्गों में भेदभाव करता है। यह दो घटक में उस घटक के विभाजन का कारण बनता है)। OneLocally के साथ बहुत कम सदस्यता क्वेरी हैं लेकिन तुलनीय क्वेरी की संख्या बड़े लक्ष्य DFA के साथ बहुत अधिक बढ़ सकती है। बल्कि OneGlo की वैश्विक सदस्यता संख्या हमेशा L * से कम होती है (लेकिन OneLocally से अधिक) और L * की तुलना में समतुल्य प्रश्नों की संख्या अधिक होती है। बाद में एक नए प्रत्यय के साथ एक नया प्रत्यय पाया जाता है जो एक ही घटक के कम से कम 2 उपसर्गों में भेदभाव करता है। यह दो घटक में उस घटक के विभाजन का कारण बनता है)। OneLocally के साथ बहुत कम सदस्यता क्वेरी हैं लेकिन तुलनीय क्वेरी की संख्या बड़े लक्ष्य DFA के साथ बहुत अधिक बढ़ सकती है। बल्कि OneGlo की वैश्विक सदस्यता संख्या हमेशा L * से कम होती है (लेकिन OneLocally से अधिक) और L * की तुलना में समतुल्य प्रश्नों की संख्या अधिक होती है।

I know that exists another algorithm too: TTT algorithm that is better than Observation Pack too but I don't have a good knowledge of it.TTT algorithm should be the state of art


Thank you for this answer! Do you have a paper reference for the Howar algorithm and for TTT?
Artem Kaznatcheev

This for Observation Packlink Howar and this for TTT algorithm link TTT You can find the implementation in LearLib (Observation Pack is called there Discrimination Tree)
Umbert
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.