तार सीखने की मशीन सीखने की तकनीक?


30

मेरे पास बहुत सारे पते हैं:

1600 Pennsylvania Ave, Washington, DC 20500 USA

मैं उन्हें अपने घटकों में पार्स करना चाहता हूं:

street: 1600 Pennsylvania Ave
city: Washington
province: DC
postcode: 20500
country: USA

लेकिन निश्चित रूप से डेटा गंदा है: यह कई देशों से कई भाषाओं में आता है, जो अलग-अलग तरीकों से लिखे गए हैं, जिसमें गलत वर्तनी शामिल हैं, लापता टुकड़े हैं, अतिरिक्त कबाड़ है, आदि।

अभी हमारा दृष्टिकोण फजी गेजेटर मिलान के साथ संयुक्त नियमों का उपयोग करना है, लेकिन हम मशीन लर्निंग तकनीक का पता लगाना चाहते हैं। हमने पर्यवेक्षित शिक्षण के लिए प्रशिक्षण डेटा को लेबल किया है। सवाल यह है कि यह मशीन सीखने की किस तरह की समस्या है? यह वास्तव में क्लस्टरिंग, या वर्गीकरण, या प्रतिगमन नहीं लगता ...।

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

तो: क्या मशीन सीखने की तकनीक मैं पता लगाने के लिए पता लगा सकता है?


मैं उत्तर देने के लिए आपकी उच्च-स्तरीय समस्या का विशेषज्ञ नहीं हूं, लेकिन मुझे लगता है कि मशीन लर्निंग का पहला कदम सूचनात्मक सुविधाओं का निर्माण करना है, फिर उस पद्धति को चुनना जो उनकी संरचना को देखते हुए सही है। आपके पास बहुत सारी संरचना है; अलनुम बनाम गैर-अलनम वर्ण, संख्यात्मक बनाम अल्फा टोकन, ', विभाजन, संख्यात्मक टोकन लंबाई के बीच टोकन मायने रखता है। उदाहरण के लिए ',' पर विभाजित करें और प्रत्येक विभाजन में कितने टोकन गिनें (सड़क का पता बनाम शहर / राज्य बनाम भू विशिष्ट जानकारी); संख्यात्मक टोकन के कैल्क स्ट्रलेन (ज़िप कोड बनाम सड़क का पता)। ये आपको ऐसी सुविधाएँ देते हैं जिन पर आप क्लस्टर बना सकते हैं।
मुराटो

पर एक नज़र डालें पाठ बेडौल
ऑल्टो


@YuvalF मैं इसे एक उत्तर बनाने का सुझाव देता हूं। क्या आप थोड़ा विस्तार कर सकते हैं, शायद एक उदाहरण का पेपर जहां एक एमएल विधि का उपयोग किया गया है?
स्टीफन

मुझे इस विशिष्ट समस्या में भी बहुत दिलचस्पी है - जो इसके घटक भागों में एक मेलिंग पते को संरचित कर रही है। हम एक ऐसे मोबाइल डिवाइस में ऐसा करने का प्रयास कर रहे हैं, जिसमें रिवर्स जियो-कोडिंग सेवा जैसे कि गोगल्स पर कनेक्टिविटी नहीं है। यह मान लेना ठीक है कि हमारे पास शहर, राज्य, देश और ज़िप से संबंधित डेटा के ऑनबोर्ड स्रोत हैं। किसी भी मदद - या तो संकेत - या इस समस्या पर एक पागल स्टार्टअप टीम के साथ जुड़ने के लिए तैयार दिल से और खुले दिल से स्वागत है।

जवाबों:


10

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

अपने उदाहरण में, आपको इनपुट को नीचे प्रारूप में बदलना चाहिए। इसके अलावा, आपको अतिरिक्त सुविधाएं उत्पन्न करनी चाहिए।

1600 STREET
Pennsylvania STREET
Ave STREET
, OUT
Washington CITY
, OUT
DC PROVINCE
20500 POSTCODE
USA COUNTRY

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

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

1

मुझे यह पता करने के लिए एक बहुत ही समान समस्या को हल करना था कि क्या कोई पता मान्य है या अमान्य है।

आमतौर पर पते की संरचना "1600 पेंसिल्वेनिया एवेन्यू, वाशिंगटन डीसी, 20500" है।

एक तार जैसे

"मैं 2000 कदम नीचे चला गया और वाशिंगटन डीसी में पेंसिल्वेनिया एवेन्यू पहुंच गया।"

मान्य पता नहीं है।

इसे एसवीएम, तंत्रिका नेटवर्क आदि जैसे वर्गीकरण तकनीकों द्वारा हल किया जा सकता है।

विचार सुविधाओं के एक प्रमुख सेट की पहचान करना है। इनमें से कुछ हो सकते हैं:

1) क्या सड़क का नाम मान्य ब्लॉक नंबर से शुरू होता है। अधिकांश अमेरिकी ब्लॉक संख्याएं या तो संख्याएं हैं (उदाहरण के लिए 1200) या एक संख्या जिसके बाद एक अक्षर (120A) या एक अक्षर के बाद का नंबर (जैसे S200) होता है।

2) यदि पता अच्छी तरह से स्वरूपित है, तो सड़क के नाम एवेन्यू, डॉ। फॉर ड्राइव, ब्लाव्ड फॉर बाउलेवर्ड जैसे प्रत्ययों में समाप्त हो जाते हैं। यूएसपीएस साइट से यूएस स्ट्रीट प्रत्यय सूची प्राप्त करना संभव है।

3) सड़क के पते के क्षेत्र में शब्दों की संख्या भी एक दिलचस्प विशेषता हो सकती है। यदि बहुत अधिक शब्द हैं, तो यह संभवतः एक वैध पता नहीं है। उदाहरण के लिए ऊपर देखें।

4) पता क्षेत्र में ब्लॉक संख्या और सड़क प्रत्यय के बीच कितने शब्द हैं?

इनका उपयोग सीखने के एल्गोरिथ्म को प्रशिक्षित करने के लिए किया जा सकता है और परिणामी मॉडल का उपयोग मान्य करने के लिए किया जा सकता है यदि कोई दिया गया पता मान्य है या नहीं।


1

यह एक हैक का एक सा है जिसे आपके स्वयं के समाधान की आवश्यकता नहीं है: रिवर्स जियोकोडिंग। यह या तो आपको क्लीनर डेटा दे सकता है या वास्तव में आपके लिए सभी काम कर सकता है।

उदाहरण के लिए, यहाँ geocode3SSC के साथ कुछ Stata कोड है , जो Google का उपयोग करता है। मुझे लगता है कि यह फजी गजेटियर के समान है । पहला पता बहुत गड़बड़ है, दूसरा साफ है, और तीसरा विदेशी है। अन्य सॉफ्टवेयर यह भी संभाल सकता है।

clear
set obs 3
gen address =""
replace address = "Big Foot Museum in Felton CA" in 1
replace address = "1600 Pennsylvania Ave, Washington, DC 20500 USA" in 2 
replace address = "ул. Ильинка, д. 23 103132, Москва, Россия" in 3
geocode3, address(address)
gen coord = string(g_lat) + "," + string(g_lon)
geocode3, reverse coord(coord)

यह यथोचित काम करता है:

. list r_addr , clean noobs

                                                                             r_addr  
                                      121 San Lorenzo Avenue, Felton, CA 95018, USA  
    1600 Pennsylvania Avenue Northwest, President's Park, Washington, DC 20500, USA  
                                         ulitsa Ilyinka, 23, Moscow, Russia, 101000  

क्रेमलिन में एक बहुत अलग प्रारूप है।


0

यह द्विदिश LSTM वर्गीकरण के साथ हल होने वाली समस्या की तरह लगता है। आप उदाहरण के लिए नमूने के प्रत्येक चरित्र को एक श्रेणी के रूप में टैग करते हैं

सड़क: 1 शहर: 2 प्रांत: 3 पोस्टकोड: 4 देश: 5

1600 Pennsylvania Ave, Washington, DC 20500 USA
111111111111111111111, 2222222222, 33 44444 555

अब, इन लेबलों के आधार पर अपने क्लासिफायरियर को प्रशिक्षित करें। बूम!

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.