स्ट्रिंग पैटर्न सीखने के लिए मशीन लर्निंग तकनीक


11

मेरे पास शब्दों की एक सूची है, जो विभिन्न स्वनिर्धारित श्रेणियों से संबंधित हैं। प्रत्येक श्रेणी का अपना एक पैटर्न होता है (उदाहरण के लिए किसी के पास विशेष वर्णों के साथ एक निश्चित लंबाई होती है, अन्य वर्ण मौजूद होते हैं जो केवल "शब्द", ...) की इस श्रेणी में होते हैं।

उदाहरण के लिए:

"ABC" -> type1
"ACC" -> type1
"a8 219" -> type2
"c 827" -> type2
"ASDF 123" -> type2
"123123" -> type3
...

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

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

क्या इसे करने का एक अत्याधुनिक तरीका है?

आपकी सहायता के लिए धन्यवाद


देखने की मेरी बात से, आप इस तरह ख़ाली कर सकते हैं cistrome.org/cr/images/Figure4.png , लेकिन ACGT के बजाय आप इस तरह के "नंबर, अपरकेस, लोअरकेस, अंतरिक्ष", आदि के रूप में पैटर्न का उपयोग कर सकते
जर्मन Demidov

@ DeutschDemidov आपकी टिप्पणी के लिए धन्यवाद। मैं पहले से ही इस तरह के बारे में कुछ सोचा था। लेकिन मैं वास्तव में लर्निंग एल्गोरिदम को अपने दम पर करना चाहता हूं और पैटर्न का पता लगाना चाहता हूं। (मुझे नहीं पता कि यह एमएल के लिए संभव है)।
chresse

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

@chresse आप अनचाहे सीखने के टैग को अपने प्रश्न में जोड़ना चाह सकते हैं । तंत्रिका नेटवर्क के साथ ऐसा करने के लिए, यह LeCun कागज रुचि का हो सकता है। चूँकि मुझे टेक्स्ट माइनिंग या न्यूरल नेटवर्क्स का अधिक अनुभव नहीं है, इसलिए मैं यह नहीं कह सकता कि यह दृष्टिकोण कितना अच्छा हो सकता है।
जियोमैट 22

1
इसलिए अपने वैक्टर को उन विशेषताओं का उपयोग करके बदलें जो आप स्वाभाविक रूप से उपयोग करते हैं (यू - अपरकेस, एल - लोअरकेस, एन - नंबर, एस - स्पेस), इसलिए आपके वैक्टर "एबीसी" - "यूयू", "ए 8 219" - "लेसनसन" और होंगे। पर। फिर आपको इस एल्गोरिथ्म का उपयोग करते हुए, उदाहरण के लिए, कुछ दूरी मापने की आवश्यकता है: en.wikipedia.org/wiki/Smith –Waterman_algorithm। इसके बाद आप अपने डेटा का एक वर्गीकरण / क्लस्टरिंग / विज़ुअलाइज़ेशन कर पाएंगे।
जर्मन डेमिडोव

जवाबों:


6

क्या आपकी समस्या को नियमित अभिव्यक्तियों की खोज के रूप में देखा जा सकता है जो प्रत्येक श्रेणी के तार से मेल खाएगी? यह एक "रेगेक्स पीढ़ी" समस्या है, व्याकरण प्रेरण समस्या का एक सबसेट ( अलेक्जेंडर क्लार्क की वेबसाइट भी देखें )।

नियमित अभिव्यक्ति की समस्या आसान है। मैं आपको frak और RegexGenerator कोड करने के लिए इंगित कर सकता हूंऑनलाइन RegexGenerator ++ समस्या पर उनके शैक्षिक पेपर के लिए संदर्भ है।


5

आप पुनरावर्ती तंत्रिका नेटवर्क की कोशिश कर सकते हैं, जहां आपका इनपुट शब्द में अक्षरों का एक क्रम है, और आपका आउटपुट एक श्रेणी है। यह आपकी आवश्यकता को इस तरह फिट करता है कि आप किसी भी फीचर को कोड नहीं करते हैं।

हालांकि वास्तव में काम करने के लिए इस विधि के लिए आपको काफी बड़े प्रशिक्षण डेटा सेट की आवश्यकता होगी।

आप अधिक विवरण के लिए एलेक्स ग्रेव्स चैप्टर 2 द्वारा बारम्बार तंत्रिका नेटवर्क के साथ पर्यवेक्षण अनुक्रम लेबलिंग का उल्लेख कर सकते हैं ।

यह प्रिफरेंस की एक कड़ी है


1
क्या आप भविष्य में "प्रीप्रिंट / पीएफडी" लिंक टूटने की स्थिति में अपने अंतिम संदर्भ के लिए पूर्ण उद्धरण जोड़ सकते हैं? (मेरा मानना ​​है कि यह प्रासंगिक अध्याय है?)
GeoMatt22
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.