एनएलपी पूर्ण परियोजना: बैग ऑफ वर्ड्स और टीएफ-आईडीएफ सीखें (शुरुआती के लिए)

출처
hi-orig
Jul 26, 2025 Aug 2, 2026
Video preview
공유:

यह वीडियो एनएलपी की मूल अवधारणाओं को समझाता है और बैग ऑफ वर्ड्स तथा टीएफ-आईडीएफ तकनीकों का उपयोग करके टेक्स्ट क्लासिफिकेशन प्रोजेक्ट को लागू करना सिखाता है।

एनएलपी का परिचय और अनुप्रयोग ⏱ 0:00

  • •एनएलपी (नेचुरल लैंग्वेज प्रोसेसिंग) आर्टिफिशियल इंटेलिजेंस का हिस्सा है जो कंप्यूटर को मानव भाषा (जैसे हिंदी, इंग्लिश) समझने, पढ़ने और लिखने में सक्षम बनाता है।
  • •इसके प्रमुख अनुप्रयोगों में चैटबॉक्स और वर्चुअल असिस्टेंट (चैटजीपीटी, एलेक्सा, सिरी), ईमेल स्पैम फिल्टरिंग (जीमेल), और सेंटीमेंट एनालिसिस (ट्विटर, अमेज़न रिव्यू) शामिल हैं।
  • एनएलपी के दृष्टिकोण और पाइपलाइन ⏱ 16:19

  • •तीन मुख्य दृष्टिकोण हैं: रूल-बेस्ड (पुराना, हैंड-रिटन रूल्स, सीमित), मशीन लर्निंग (सांख्यिकीय, बैग ऑफ वर्ड्स और टीएफ-आईडीएफ जैसी तकनीक), और डीप लर्निंग (आधुनिक, न्यूरल नेटवर्क, वर्ड एम्बेडिंग)।
  • •मशीन लर्निंग दृष्टिकोण में टेक्स्ट को नंबरों में बदलना आवश्यक है; इस वीडियो में बैग ऑफ वर्ड्स और टीएफ-आईडीएफ पर ध्यान केंद्रित किया जाएगा।
  • •एनएलपी पाइपलाइन के पहले चरण में डेटा एकत्र करना शामिल है, जो प्री-बिल्ट डेटासेट (जैसे कैगल) या वेब स्क्रेपिंग से किया जा सकता है।
  • डेटा संग्रह के तरीके ⏱ 20:00

  • •डेटा प्राप्त करने के लिए वेब स्क्रैपिंग, API, मैन्युअल संग्रह/क्राउडसोर्सिंग, और NLP टूल्स का उपयोग करके डेटा ऑटो-जनरेट करना शामिल है।
  • •वेब स्क्रैपिंग में HTML टैग्स (जैसे <p>, <span>) हटाने की आवश्यकता होती है; यह कानूनी नहीं हो सकता है, जबकि API (Twitter, LinkedIn, Instagram) संरचित और कानूनी डेटा प्रदान करते हैं।
  • •क्राउडसोर्सिंग का उदाहरण: Google फॉर्म के माध्यम से लगभग 1000 छात्र समीक्षाएँ एकत्र की गईं।
  • टेक्स्ट क्लीनिंग के चरण ⏱ 22:34

  • •टेक्स्ट क्लीनिंग के मुख्य चरण: लोअरकेसिंग, विराम चिह्न हटाना, संख्याएँ हटाना (कार्य पर निर्भर), URL/लिंक हटाना, HTML टैग हटाना, इमोजी/विशेष वर्ण हटाना, स्टॉपवर्ड्स हटाना, और वैकल्पिक रूप से वर्तनी सुधारना।
  • •लोअरकेसिंग महत्वपूर्ण है क्योंकि मशीन लर्निंग 'The' और 'the' को अलग तरह से समझती है; पंक्चुएशन ML में हटाए जाते हैं, लेकिन BERT/GPT जैसे डीप लर्निंग मॉडल में वे अर्थ रखते हैं।
  • •स्टॉपवर्ड्स (जैसे 'is', 'for', 'in') हटाने से अर्थ प्रभावित नहीं होता, जैसे 'Bhopal is peaceful place for you' → 'Bhopal peaceful place you'।
  • प्रोजेक्ट कार्यान्वयन (Kaggle डेटासेट) ⏱ 27:41

  • •इमोशन डेटासेट (train.txt) का उपयोग करके टेक्स्ट प्रीप्रोसेसिंग की गई; फ़ाइल में अर्धविराम से अलग किए गए टेक्स्ट और इमोशन्स हैं (जैसे 'i didnt feel humiliated' → sadness)।
  • •डेटा लोड करने के लिए pandas.read_csv का उपयोग किया गया, सेपरेटर ';' और header=None के साथ, कॉलम नाम 'text' और 'emotion' दिए गए।
  • •डेटासेट में 6 अद्वितीय इमोशन्स (sadness, anger, love, surprise, fear, joy) हैं; उन्हें डिक्शनरी (0 से 5) के माध्यम से संख्यात्मक मानों में बदला गया, और null मान शून्य थे।
  • लोअरकेसिंग और विराम चिह्न हटाना (कोड) ⏱ 36:20

  • •लोअरकेसिंग: lambda फ़ंक्शन का उपयोग करके df['text'].apply(lambda x: x.lower()) लागू किया गया (डेटा पहले से lowercase था)।
  • •विराम चिह्न हटाने के लिए: string.punctuation के साथ str.translate का उपयोग करके फ़ंक्शन बनाया गया, और df['text'] पर apply किया गया।
  • •उदाहरण कोड: def remove_punctuation(text): return text.translate(str.maketrans('', '', string.punctuation))
  • डेटा प्रीप्रोसेसिंग के चरण ⏱ 40:01

  • •स्पैम डिटेक्शन और इमोशन डिटेक्शन में नंबर हटाने चाहिए। इसके लिए एक फंक्शन बनाया गया जो सिर्फ डिजिट को छोड़कर बाकी सब रखता है।
  • •URL और लिंक हटाने के लिए https या स्लैश जैसी चीज़ों को पहचानकर हटाया जा सकता है, हालांकि इस डेटासेट में URLs नहीं हैं।
  • •HTML टैग्स भी नहीं हैं क्योंकि डेटा Kaggle से लिया गया है।
  • •इमोजीस और स्पेशल कैरेक्टर्स हटाने के लिए ASCII वैल्यू का उपयोग किया जाता है: इमोजीस के पास यूनिकोड होते हैं, लेकिन हम सिर्फ ASCII वैल्यू वाले कैरेक्टर रखते हैं।
  • स्टॉपवर्ड्स हटाना और NLP की मूल अवधारणाएँ ⏱ 43:35

  • •स्टॉपवर्ड्स (जैसे is, are, the) मशीन लर्निंग में नॉइज़ जोड़ते हैं, इसलिए हटा देना चाहिए, लेकिन डीप लर्निंग में कभी-कभी रखने से अर्थ समझने में मदद मिलती है।
  • •NLTK (नेचुरल लैंग्वेज टूलकिट) एक लोकप्रिय लाइब्रेरी है जो टेक्स्ट प्रीप्रोसेसिंग, टोकनाइजेशन, स्टेमिंग आदि के लिए उपयोग होती है।
  • •कॉर्पस = टेक्स्ट का संग्रह (जैसे 10,000 ट्वीट्स का फोल्डर), सेंटेंस = अर्थपूर्ण वर्ड्स का समूह, टोकन = हर अलग वर्ड/सिंबल, और टोकनाइजेशन = टेक्स्ट को टोकन्स में तोड़ना।
  • •स्टॉपवर्ड्स डाउनलोड करने के लिए पंक्ट टोकनाइज़र डाउनलोड करना ज़रूरी है, और वर्ड टोकनाइज़र स्प्लिट से बेहतर है क्योंकि यह पंक्चुएशन को भी अलग टोकन के रूप में पहचानता है।
  • फीचर एक्सट्रैक्शन और वन-हॉट एनकोडिंग ⏱ 60:02

  • •मशीन लर्निंग मॉडल सिर्फ नंबर समझते हैं, इसलिए शब्दों को नंबर में बदलना ज़रूरी है, जिसे वेक्टराइजेशन कहते हैं।
  • •मशीन लर्निंग में बैग ऑफ वर्ड्स और टीएफ-आईडीएफ का उपयोग होता है, जबकि डीप लर्निंग में एम्बेडिंग्स (जैसे वर्ड2वेक, बर्ट) का।
  • •वन-हॉट एनकोडिंग में हर शब्द को एक वेक्टर द्वारा दर्शाया जाता है, जहाँ वोकैबुलरी के आधार पर केवल एक स्थान पर 1 होता है, बाकी जगह 0।
  • •वन-हॉट एनकोडिंग के नुकसान: स्पार्सिटी (5000 वर्ड की वोकैबुलरी में मैट्रिक्स 50*50000 बनता है), आउट ऑफ वोकैबुलरी (OOV) समस्या, अलग-अलग साइज़ के डॉक्यूमेंट, और सिमेंटिक मीनिंग कैप्चर न होना (टाइम, सक्सेस, आईपैड का डिस्टेंस समान रहता है)।
  • बैग ऑफ वर्ड्स ⏱ 78:59

  • •बैग ऑफ वर्ड्स टेक्स्ट को नंबर में बदलने की तकनीक है, जिसमें डेटासेट के सभी यूनिक शब्दों की लिस्ट (वोकैबुलरी) बनती है।
  • •फिर हर सेंटेंस के लिए प्रत्येक शब्द की गिनती की जाती है, जिससे संख्यात्मक वेक्टर बनता है।
  • •यह वन-हॉट एनकोडिंग से बेहतर है, लेकिन फिर भी इसमें सिमेंटिक मीनिंग की कमी रहती है।
  • बैग ऑफ वर्ड्स: अवधारणा, कार्यान्वयन, लाभ-हानि ⏱ 80:03

  • •बैग ऑफ वर्ड्स वाक्य को शब्दों के अव्यवस्थित समूह के रूप में देखता है, जिसमें व्याकरण और शब्द क्रम की परवाह नहीं की जाती, केवल शब्द आवृत्ति मायने रखती है।
  • •उदाहरण: 'शेरियंस टीच शेरियंस' में शेरियंस दो बार और टीच एक बार गिना जाता है। इस तरह प्रत्येक दस्तावेज़ को वेक्टर में बदला जाता है, जो शब्द आवृत्ति पर आधारित होता है।
  • •कार्यान्वयन के लिए sklearn से काउंट वेक्टराइज़र का उपयोग होता है, जैसे: CountVectorizer()। इसके पैरामीटर हैं जैसे max_features (सबसे अधिक बार आने वाले शब्दों को चुनता है), binary (true होने पर आवृत्ति को 1 में बदल देता है), और ngram_range।
  • •लाभ: लागू करने में आसान, निश्चित आकार का वेक्टर जो मशीन लर्निंग में प्रयोग योग्य है, एमएल मॉडल्स के साथ काम करता है, वन-हॉट एनकोडिंग से तेज़ और कुशल। हानि: स्पार्स मैट्रिक्स, आउट ऑफ वोकैबुलरी शब्दों को पकड़ नहीं पाता, सिमेंटिक अर्थ अच्छी तरह नहीं पकड़ता, और शब्द क्रम की जानकारी नष्ट हो जाती है।
  • एन-ग्राम्स: बायग्राम उदाहरण ⏱ 97:06

  • •एन-ग्राम में कई शब्दों को मिलाकर वोकैबुलरी बनाई जाती है, जैसे बायग्राम में दो शब्द जोड़े: (आकर्ष, वॉच), (वॉच, शेरियंस), (हर्ष, आल्सो), (शेरियंस, टीच) आदि।
  • एन-ग्राम्स और टीएफ-आईडीएफ का उपयोग ⏱ 100:06

  • •बायग्राम, ट्रायग्राम आदि एन-ग्राम्स का उपयोग करके वेक्टराइजेशन में सिमेंटिक मीनिंग को थोड़ा बेहतर कैप्चर किया जा सकता है।
  • •उदाहरण: 'क्रिकेट इज वेरी गुड' और 'क्रिकेट इज नॉट गुड' में बायग्राम से 5 में से 4 डायमेंशन अलग मिलते हैं, जबकि यूनीग्राम से केवल 2 अलग मिलते हैं।
  • •एन-ग्राम्स के फायदे: सिमेंटिक मीनिंग कुछ हद तक कैप्चर होती है; नुकसान: डायमेंशनैलिटी बढ़ जाती है और आउट-ऑफ-वोकैबुलरी की समस्या बनी रहती है।
  • •n_gram_range पैरामीटर से यूनीग्राम, बायग्राम, ट्रायग्राम आदि सेट किए जा सकते हैं, जैसे (1,1), (1,2), (2,2), (1,3) आदि।
  • •टीएफ-आईडीएफ दो चीजों का गुणन है: टर्म फ्रीक्वेंसी (TF) और इनवर्स डॉक्यूमेंट फ्रीक्वेंसी (IDF)।
  • •TF = (किसी टर्म की घटनाएँ दस्तावेज़ में) / (दस्तावेज़ में कुल टर्म्स)। यह हमेशा 0 और 1 के बीच रहता है।
  • •IDF = log(कुल दस्तावेज़ / जिन दस्तावेज़ों में टर्म मौजूद है)। यह शब्द की दुर्लभता (rarity) मापता है; जितना कम दस्तावेज़ में शब्द हो, उतनी अधिक IDF।
  • •उदाहरण: 3 दस्तावेज़ों में से 'शेरियंस' तीनों में है, तो IDF = log(3/3) = 0; 'आकर्ष' दो में है, तो IDF = log(3/2); 'हर्ष' केवल एक में है, तो IDF = log(3/1)।
  • •TF और IDF का गुणा करके प्रत्येक शब्द का भार (weight) निकाला जाता है, जिससे वेक्टर प्रतिनिधित्व अधिक सार्थक होता है, जैसे 0.7, 0.2, 0.3 आदि।
  • TF-IDF की व्याख्या, फायदे-नुकसान और कोड उदाहरण ⏱ 120:06

  • •TF-IDF इस तरह काम करता है कि अब शब्दों की फ्रीक्वेंसी के आधार पर 0 और 1 के बजाय 0 और 1 के बीच के मान आते हैं, जैसे 0.70, 0.43, 0.5. अगर कोई शब्द बार-बार आता है तो लॉग डिवाइड होकर उसे कम कर देता है, और कम फ्रीक्वेंसी वाले शब्दों को ज़्यादा वेटेज मिलता है.
  • •कोड में TF-IDF का उपयोग करने के लिए TfidfVectorizer इम्पोर्ट करते हैं और बस काउंट वेक्टराइज़र की जगह TfidfVectorizer का उपयोग करते हैं.
  • •TF-IDF के फायदे: इन्फॉर्मेशन रिट्रीवल में बहुत काम आता है, जैसे Google Search में. नुकसान: स्पार्सिटी (बड़े डॉक्यूमेंट्स में बहुत सारे शून्य), आउट-ऑफ-वोकैबुलरी प्रॉब्लम, और डायमेंशन्स (50,000 शब्दों की वोकैबुलरी होने पर 50,000 डायमेंशन हो जाते हैं).
  • प्रोजेक्ट: टेक्स्ट क्लासिफिकेशन मॉडल बनाना ⏱ 125:43

  • •प्रोजेक्ट में 10,000 डेटा पॉइंट्स हैं, जिन्हें 80:20 के अनुपात में ट्रेनिंग और टेस्टिंग में विभाजित किया गया (8000 ट्रेनिंग, 2011 टेस्टिंग).
  • •टेक्स्ट को वेक्टराइज़ करने के लिए बैग ऑफ़ वर्ड्स (CountVectorizer) और TF-IDF (TfidfVectorizer) दोनों का उपयोग किया जाएगा.
  • •मॉडल के रूप में मल्टीनॉमिनल नेव बायस और लॉजिस्टिक रिग्रेशन का उपयोग किया जाएगा, क्योंकि ये टेक्स्ट क्लासिफिकेशन के लिए सबसे अच्छे हैं. बैग ऑफ़ वर्ड्स के साथ नेव बायस मॉडल की एक्यूरेसी 0.768125 (76.8%) आई है.
  • मॉडल निर्माण और तुलना ⏱ 140:07

  • •- टीएफ-आईडीएफ वेक्टराइज़र का उपयोग करके नए मॉडल बनाए गए, जिसमें नेव बायस (NB2) और लॉजिस्टिक रिग्रेशन शामिल हैं।
  • •- NB2 मॉडल से 66% एक्यूरेसी मिली, जबकि लॉजिस्टिक रिग्रेशन (मैक्स_इटरेशन=1000) से 86% एक्यूरेसी प्राप्त हुई।
  • •- लॉजिस्टिक रिग्रेशन को प्राथमिकता इसलिए दी गई क्योंकि यह प्रोबेबिलिटी पर काम करता है और टीएफ-आईडीएफ की वैल्यू 0.6, 0.7 जैसी होती हैं।
  • •- सभी मॉडल्स को एक ही डेटा पर फिट किया गया, लेकिन वेक्टराइज़ेशन विधि बदलने से एक्यूरेसी में अंतर आया।
  • मुख्य बिंदु

  • •एनएलपी तीन दृष्टिकोणों में काम करता है: रूल-बेस्ड, मशीन लर्निंग और डीप लर्निंग।
  • •डेटा संग्रह के तरीकों में वेब स्क्रैपिंग, API, मैन्युअल संग्रह और ऑटो-जनरेशन शामिल हैं।
  • •टेक्स्ट क्लीनिंग में लोअरकेसिंग, विराम चिह्न हटाना, संख्याएँ हटाना, URL और HTML टैग हटाना और स्टॉपवर्ड्स हटाना शामिल है।
  • •बैग ऑफ वर्ड्स टेक्स्ट को शब्द आवृत्ति के आधार पर नंबर में बदलता है, व्याकरण की परवाह किए बिना।
  • •टीएफ-आईडीएफ शब्दों को महत्व देता है जो डेटासेट में कम बार आते हैं, जिससे अधिक सार्थक फीचर मिलते हैं।
  • •प्रोजेक्ट में 10,000 डेटा पॉइंट्स को 80:20 अनुपात में विभाजित करके टीएफ-आईडीएफ वेक्टराइज़र से नेव बायस मॉडल 66% एक्यूरेसी देता है।
  • निष्कर्ष

    इस वीडियो में एनएलपी के मूल सिद्धांतों और बैग ऑफ वर्ड्स तथा टीएफ-आईडीएफ तकनीकों को प्रोजेक्ट-आधारित तरीके से समझाया गया। इन तकनीकों का उपयोग करके टेक्स्ट क्लासिफिकेशन मॉडल बनाने की प्रक्रिया को विस्तार से दिखाया गया।

    이 영상에 대해 질문하기