Total Pageviews

Monday, December 16, 2024

पाइथन में प्राकृतिक भाषा संसाधन, भाग : 5. पद-विच्छेदन/पार्सिंग (Parsing)

 पाइथन में प्राकृतिक भाषा संसाधन, भाग : 5. पद-विच्छेदन/पार्सिंग (Parsing)

§  किसी वाक्य को उसकी संरचना के अनुसार विश्लेषित करने की प्रक्रिया पद-विच्छेदन है।

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

§  टैगिंग के बाद चंकिंग (पदबंध-चिह्नन) का कार्य किया जाता है।

§  इसके पश्चात पद-विच्छेदित वाक्य निर्मित होता है। अतः इसे क्रमानुसार निम्नलिखित प्रकार से देखा जा सकता है-


पाइथन में पद-विच्छेदन/पार्सिंग

इसके लिए निम्नलिखित कोड करें-

!pip install nltk

!pip install indic-nlp-library

import nltk

nltk.download('punkt')

import nltk

from nltk.tokenize import word_tokenize

from indicnlp.tokenize import indic_tokenize  # Use Indic NLP for better Hindi tokenization

 

# Set up Indic NLP resources

import os

os.environ["INDIC_RESOURCES_PATH"] = "/path/to/indic_nlp_resources"

text = "My son is a very good boy"

 

# Tokenize the text

words = indic_tokenize.trivial_tokenize(text)

 

# Perform parsing (example: chunking)

grammar = r"""

  NP: {<NN.*><JJ.*>*}  # Noun Phrase

  VP: {<VB.*><NP|PP>*}  # Verb Phrase

  PP: {<IN><NP>}       # Prepositional Phrase

"""

cp = nltk.RegexpParser(grammar)

tree = cp.parse(nltk.pos_tag(words))

 

print(tree)

 

 

हिंदी पाठ के लिए :

नोट : अभी नहीं हो रहा है

!pip install nltk

!pip install indic-nlp-library

import nltk

nltk.download('punkt')

import nltk

from nltk.tokenize import word_tokenize

from indicnlp.tokenize import indic_tokenize  # Use Indic NLP for better Hindi tokenization

 

# Set up Indic NLP resources

import os

os.environ["INDIC_RESOURCES_PATH"] = "/path/to/indic_nlp_resources"

text = "मैं आज बाजार जा रहा हूँ।"

 

# Tokenize the text

words = indic_tokenize.trivial_tokenize(text)

 

# Perform parsing (example: chunking)

grammar = r"""

  NP: {<NN.*><JJ.*>*}  # Noun Phrase

  VP: {<VB.*><NP|PP>*}  # Verb Phrase

  PP: {<IN><NP>}       # Prepositional Phrase

"""

cp = nltk.RegexpParser(grammar)

tree = cp.parse(nltk.pos_tag(words))

 

print(tree)

NLTK Treebank से वाक्य का पद-विच्छेदन :

NLTK में उपलब्ध Treebanks का प्रयोग करते हुए पार्सिंग भी की जा सकती है। यहाँ ट्रीबैंक के पार्स किए हुए वाक्य को प्रोग्राम से जोड़कर दिखाया गया है-


 


Thursday, December 5, 2024

पदबंध (Phrase)

 पदबंध (Phrase)

कोई एक शब्द या शब्दों का समूह जो वाक्य में एक ही प्रकार्य (जैसे- कर्ता, कर्म, क्रिया आदि) को संपन्न करता है, पदबंध कहलाता है।

पदबंध के प्रकार-

(1) शब्द संख्या की दृष्टि से :

(क) एकशब्दीय पदबंध : ऐसा पदबंध जिसमें अकेला शब्द पूरे पदबंध का कार्य करता है, जैसे-

लड़का घर गया।

इसमें तीन शब्द हैं और तीन पदबंध भी हैं-

लड़का + घर + गया।

 (ख) बहुशब्दीय पदबंध : ऐसा पदबंध जिसमें एक से अधिक शब्द जुड़कर एक ही प्रकार्य करते हों, जैसे-

वह लड़का अपने घर गया है।

इसमें 06 शब्द हैं, लेकिन पदबंध तीन ही हैं-

 वह लड़का + अपने घर  + गया है।

 (2) शब्दभेद (Parts of Speech) की दृष्टि से : इस दृष्टि से निम्नलिखित भेद होते हैं-

(क) संज्ञा पदबंध 

(ख) क्रिया पदबंध 

(ग) विशेषण पदबंध 

(घ) क्रिया-विशेषण पदबंध             आदि।

इनमें से संज्ञा पदबंध के बारे में निम्नलिखित लिंक पर पढ़ें-

संज्ञा पदबंध (Noun Phrase)


संज्ञा पदबंध (Noun Phrase)

 संज्ञा पदबंध (Noun Phrase)ऐसा पदबंध जिसका शीर्ष पद संज्ञा होता हैसंज्ञा पदबंध कहलाता है। संज्ञा पदबंध रचनाएँ अंतःकेंद्रिक पदबंध रचनाएँ होती हैं। उदाहरण-

 राम

 लड़का

 छोटा बच्चा

 बहुत बड़ा आदमी

संज्ञा पदबंध का विस्तार-

संज्ञा पदबंध का निर्माण संज्ञा शीर्ष पद (Head Word Noun) से होता है। उसके पहले विभिन्न प्रकार के शब्दों को जोड़कर संज्ञा पदबंध का विस्तार किया जाता है। उदाहरण-

(क) विशेषण द्वारा विस्तार-

लड़का खेल रहा है।

अच्छा लड़का खेल रहा है।

बहुत अच्छा लड़का खेल रहा है।

(ख) सार्वनामिक विशेषण द्वारा विस्तार-

वह लड़का खेल रहा है।

अपना लड़का खेल रहा है।

(ग) संख्या विशेषण द्वारा विस्तार-

एक लड़का खेल रहा है।

दो लड़के खेल रहे हैं।

(घ) संबंधवाची (संज्ञा + का/की/के) द्वारा विस्तार-

रमेश का लड़का खेल रहा है।

उसका लड़का खेल रहा है।

मेरी सहेली के लड़के खेल रहे हैं।

इसी प्रकार विभिन्न प्रकार के शब्द जोड़कर संज्ञा पदबंध का विस्तार किया जाता है।