मैं एक वाक्य से शब्द कैसे निकाल सकता हूं और यह निर्धारित कर सकता हूं कि प्रत्येक भाषण का क्या हिस्सा है? [बन्द है]


19

मैं कुछ लिखना चाहता हूं जो एक वाक्य लेता है और इसमें शामिल प्रत्येक शब्द की पहचान करता है और परिभाषित करता है कि प्रत्येक शब्द भाषण का कौन सा हिस्सा है।

उदाहरण के लिए

हैलो वर्ल्ड, मैं एक वाक्य हूं

यह वापस आ जाएगा

verb noun, pronoun verb adjective noun

आदर्श रूप से, मैं अंततः इसे एक कदम आगे ले जाना चाहता हूं और एक वाक्य लेता हूं और प्रोग्रामेटिक रूप से यह समझ गया है कि यह क्या व्याख्या करने की कोशिश कर रहा है और शायद इसके बारे में कुछ करें।

तो मेरा सवाल यह है कि क्या किसी ने ऐसा कुछ सुना है?


2
"हैलो" एक क्रिया है? मेरा मतलब है, मुझे नहीं पता कि यह और क्या होगा, लेकिन यह एक क्रिया जैसा नहीं लगता है।
दान रे

@DanRay: शायद यह english.stackexchange.com के लिए एक प्रश्न है?
स्ट्रिपिंगवर्यर

1
@DanRay haha, आप देख रहे हैं? इसलिए मैं यह जानने की कोशिश कर रहा हूं कि अगर ऐसा हो सकता है, तो जाहिर है कि मैं व्याकरण में भयानक हूं।
विन्नी

@ विनी - बेशक यह संभव है। समस्या यह है ... यह अगले ट्रिलियन डॉलर का विचार है, और इस समय, इसका अभी भी एक उत्पाद में नहीं बनाया गया है।
रामहाउंड

1
@ विनी हां, किसी ने ऐसा कुछ सुना है।
ट्यूलेंस कोर्डोवा

जवाबों:


18

इसे प्राकृतिक भाषा प्रसंस्करण कहा जाता है और यह एक विशाल, जटिल क्षेत्र है। जैसा कि आप वर्णन करते हैं, एक स्मारकीय उपलब्धि है, और यहां तक ​​कि सबसे अच्छा समाधान, जैसे वाटसन , कहीं भी परिपूर्ण नहीं हैं।

इस तरह की चीजें इसे चुनौती देती हैं: "भैंस भैंस भैंस भैंस भैंस भैंस"

अमेरिकी अंग्रेजी में एक व्याकरणिक रूप से सही वाक्य का उपयोग, जटिल भाषाई निर्माणों को बनाने के लिए होमोनिम्स और होमोफ़ोन का उपयोग कैसे किया जा सकता है, इसका एक उदाहरण है। यह 1972 से साहित्य में चर्चा में रहा है ... यह स्टीवन पिंकर की 1994 की पुस्तक द लैंग्वेज इंस्टिंक्ट में एक वाक्य के उदाहरण के रूप में भी चित्रित किया गया था जो "प्रतीत होता है निरर्थक" लेकिन व्याकरणिक है ...

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


1
यह मैं क्या देख रहा हूँ! क्या किसी ने छोटे पैमाने पर किसी को भी इस के बारे में सुना है? खुला स्त्रोत? इसका उदाहरण छोटे पैमानों में इस्तेमाल किया जा रहा है?
विनी

@Vinny AFAIK खुले स्रोत में ज्यादा उपलब्ध नहीं है क्योंकि इन मुद्दों को हल करना कंपनियों के लिए बहुत लाभदायक है, जैसे एमएस वर्ड व्याकरण का पता लगाना। कुछ बकवास-बॉट कार्यक्रम हैं जो उपलब्ध हैं, हालांकि मुझे विश्वास है।
रायथल

1
@ विनी यह कठिनाई के पैमाने के साथ कुछ नहीं करना है। प्राकृतिक भाषा प्रसंस्करण में एक अंतर्निहित जटिलता होती है जो "स्केल" को कम करने पर कम नहीं होती है।
ट्यूलेंस कोर्डोवा

6

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

लेकिन आपकी दूसरी समस्या - लोगों ने एक संपूर्ण समाधान खोजने के लिए भारी प्रयास किए हैं, लेकिन वास्तव में सही "व्याख्या" एल्गोरिदम अंग्रेजी जैसी किसी भी प्राकृतिक भाषा के लिए व्यावहारिक रूप से साकार नहीं है - ऐसी विविधताएं हैं जो आपके एल्गोरिथ्म को खराब कर देंगी । यह क्षेत्र - एआई, कंप्यूटर विज्ञान और भाषा विज्ञान के बीच एक संकर एनएलपी के रूप में जाना जाता है । इस पर विचार करें: यहां तक ​​कि Google अनुवाद "वाक्यों की व्याख्या" करते समय सही नहीं है।

लेकिन फिर भी, यह एक बहुत ही दिलचस्प क्षेत्र है जिसे दबाना है।


@StriplingWarrior मैं सिर्फ ओपी द्वारा प्रस्तुत दो समस्याओं के बीच पर्याप्त रूप से विपरीत करना चाहता था। का उल्लेख किया। अपने रास्ते पर संपादित करें
yati sagade

4

मुझे लगता है कि आपको यह विकिपीडिया लेख पढ़ना शुरू करना चाहिए:

http://en.wikipedia.org/wiki/Part-of-speech_tagging

(यह एक शोध क्षेत्र है, इसके लिए किसी आसान समाधान की अपेक्षा न करें।)


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

धन्यवाद, यह वही है जो मैं भी खोज रहा था।
Amc_rtty

वास्तव में ओपी के विवरण के आधार पर, यह स्वीकृत उत्तर होना चाहिए जैसा कि आप @KilianFoth
Amc_rtty

-1

ऐसा करने का एक सस्ता तरीका शब्दकोश का एक डेटाबेस स्थापित करना होगा (मैं लगभग सकारात्मक हूं कि किसी ने ऐसा किया है)।

तालिका में दो फ़ील्ड चाहिए: wordऔरusage

वाक्यांश को स्ट्रिंग की एक सरणी में बदल दें, (प्रत्येक शब्द एक स्ट्रिंग है) और स्वतंत्र रूप से:

select 'usage' from Dictionary WHERE 'word' = $word; 

यह एक भारी समाधान है, लेकिन एक जो मैंने अतीत में इस्तेमाल किया है।


5
यह मानता है कि प्रत्येक शब्द में केवल एक ही संभावित पीओएस है, और मैं आपको विश्वास दिलाता हूं कि ऐसा बिल्कुल नहीं है।
माइक्रोथेरियन

सहमत - ऐसा कोई तरीका नहीं है जो संदर्भ के आधार पर संज्ञाओं, क्रियाओं आदि के रूप में कार्य कर सकने वाले सभी शब्दों के साथ (कम से कम अंग्रेजी में) काम कर सके।
डेरेक
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.