NLTK का परिचय
NLTK (Natural Language Toolkit) प्राकृतिक भाषा प्रसंस्करण (NLP) के लिए Python की सबसे लोकप्रिय और व्यापक रूप से उपयोग की जाने वाली लाइब्रेरी है। 2001 में पेंसिल्वेनिया विश्वविद्यालय में विकसित, यह टेक्स्ट के साथ काम करने के लिए टोकनाइज़ेशन, मॉर्फोलॉजिकल एनालिसिस, सिंटैक्टिक पार्सिंग, फ्रीक्वेंसी डिस्ट्रीब्यूशन और बहुत कुछ जैसे व्यापक टूल्स और संसाधन प्रदान करती है। इस लाइब्रेरी का उपयोग शैक्षिक उद्देश्यों और टेक्स्ट एनालिसिस के व्यावहारिक प्रोजेक्ट्स दोनों में सक्रिय रूप से किया जाता है।
NLTK में Penn Treebank, Brown Corpus, WordNet और कई अन्य सहित 50 से अधिक कॉर्पस और लेक्सिकल संसाधन शामिल हैं। यह इसे प्राकृतिक भाषा प्रसंस्करण के कार्यों पर काम करने वाले शोधकर्ताओं, छात्रों और डेवलपर्स के लिए एक अपरिहार्य उपकरण बनाता है।
NLTK की आर्किटेक्चर और घटक
लाइब्रेरी के मुख्य मॉड्यूल
NLTK मॉड्यूलर सिद्धांत पर बनाई गई है, जहां प्रत्येक मॉड्यूल NLP के एक विशिष्ट क्षेत्र के लिए जिम्मेदार है:
tokenize मॉड्यूल - टेक्स्ट को टोकन में विभाजित करने के लिए विभिन्न एल्गोरिदम प्रदान करता है stem मॉड्यूल - स्टेमिंग और लेमेटाइज़ेशन एल्गोरिदम शामिल करता है tag मॉड्यूल - पार्ट-ऑफ-स्पीच टैगिंग के लिए जिम्मेदार है parse मॉड्यूल - सिंटैक्टिक एनालिसिस के लिए पार्सर शामिल करता है chunk मॉड्यूल - फ्रैगमेंट निकालने के एल्गोरिदम लागू करता है classify मॉड्यूल - मशीन लर्निंग क्लासिफायर शामिल करता है corpus मॉड्यूल - कॉर्पस और लेक्सिकल संसाधनों तक पहुंच प्रदान करता है
कॉर्पस और लेक्सिकल संसाधन
NLTK क्लासिक साहित्यिक कृतियों, समाचार लेखों, टैग किए गए टेक्स्ट और विशेष शब्दकोशों सहित कॉर्पस के एक विस्तृत संग्रह तक पहुंच प्रदान करता है। ये संसाधन NLP एल्गोरिदम को प्रशिक्षित और परीक्षण करने का आधार बनते हैं।
NLTK की क्षमताएं और लाभ
बड़ी संख्या में भाषाई कॉर्पस का समर्थन - विभिन्न भाषाओं में 50 से अधिक कॉर्पस
टोकनाइज़ेशन, स्टेमिंग, लेमेटाइज़ेशन के लिए विविध एल्गोरिदम - सरल से जटिल तरीकों तक
मॉर्फोलॉजिकल और सिंटैक्टिक एनालिसिस के लिए उपकरण - विभिन्न प्रकार के पार्सर सहित
टेक्स्ट के सांख्यिकीय विश्लेषण के साधन - फ्रीक्वेंसी डिस्ट्रीब्यूशन, कोलोकेशन, n-ग्राम
प्रोसेसिंग पाइपलाइनों को कस्टमाइज़ करने के लिए लचीली आर्किटेक्चर - अपने स्वयं के हैंडलर बनाने की संभावना
सक्रिय दस्तावेज़ीकरण और शैक्षिक संसाधन - किताबें, गाइड, कोड उदाहरण
लोकप्रिय लाइब्रेरीज़ के साथ एकीकरण - NumPy, Matplotlib, scikit-learn
इंस्टॉलेशन और प्रारंभिक सेटअप
लाइब्रेरी इंस्टॉल करना
pip install nltk
अतिरिक्त सुविधाओं के लिए, निम्नलिखित इंस्टॉल करने की भी सिफारिश की जाती है:
pip install numpy matplotlib
कनेक्ट करना और संसाधन लोड करना
import nltk
# संसाधनों की इंटरैक्टिव लोडिंग
nltk.download()
# विशिष्ट संसाधन लोड करना
nltk.download('punkt') # टोकनाइज़ेशन के लिए
nltk.download('wordnet') # लेमेटाइज़ेशन के लिए
nltk.download('stopwords') # स्टॉप-वर्ड्स
nltk.download('averaged_perceptron_tagger') # POS-टैग
nltk.download('maxent_ne_chunker') # NER
nltk.download('words') # अंग्रेजी शब्दों का शब्दकोश
इंस्टॉलेशन की जांच
import nltk
print(nltk.__version__)
nltk.data.find('tokenizers/punkt')
कॉर्पस और टेक्स्ट डेटा के साथ काम करना
बिल्ट-इन कॉर्पस लोड करना
NLTK में पूर्व-संसाधित टेक्स्ट का एक समृद्ध संग्रह है:
from nltk.corpus import gutenberg, brown, reuters, inaugural
# गुटेनबर्ग कॉर्पस लोड करना
nltk.download('gutenberg')
sample_text = gutenberg.raw('austen-emma.tx