Last chance! 50% off DataCamp Premium
Sale ends in
नैचुरल लैंग्वेज प्रोसेसिंग (NLP) मशीन लर्निंग का उपयोग करके टेक्स्ट की संरचना और अर्थ को पहचानते हुए मनुष्यों और कंप्यूटरों के बीच संचार को बेहतर बनाती है। नैचुरल लैंग्वेज प्रोसेसिंग अनुप्रयोगों के साथ, संगठन टेक्स्ट का विश्लेषण करके और अधिक सार्थक जानकारी निकालकर उत्पादकता बढ़ा सकते हैं और लागत घटा सकते हैं, जिससे ग्राहक अनुभव में सुधार होता है।
हम यह नहीं कह सकते कि हम अक्सर अपनी भाषा की सूक्ष्मताओं के बारे में सोचते हैं। यह एक सहज व्यवहार है जो शब्दों, संकेतों या चित्रों जैसे सेमान्टिक संकेतों पर निर्भर करता है ताकि जानकारी और अर्थ संप्रेषित किए जा सकें। यह कभी-कभी कहा जाता है कि किशोरावस्था में भाषा सीखना आसान होता है क्योंकि यह एक दोहराने योग्य व्यवहार है जिसे आत्मसात किया जा सकता है, ठीक वैसे ही जैसे चलना। साथ ही, भाषाएँ कड़े नियमों का पालन नहीं करतीं और उनमें कई अपवाद होते हैं।
भाषा अधिग्रहण मनुष्यों के लिए भले ही स्वाभाविक हो, लेकिन कंप्यूटरों के लिए यह अत्यंत जटिल है क्योंकि इसमें बहुत सारा असंरचित डेटा, कड़े नियमों का अभाव और ठोस दृष्टिकोण या संदर्भ नहीं होता। फिर भी, मनुष्य संचार और कार्य निष्पादन के लिए कंप्यूटर सिस्टम पर अधिकाधिक निर्भर हो रहे हैं। यही कारण है कि मशीन लर्निंग (ML) और आर्टिफिशियल इंटेलिजेंस (AI) इतनी चर्चा और लोकप्रियता बटोर रहे हैं। नैचुरल लैंग्वेज प्रोसेसिंग AI के विकास का अनुसरण कर रही है। यद्यपि ये दोनों शब्द भविष्यवादी रोबोट्स की छवियाँ मन में ला सकते हैं, नैचुरल लैंग्वेज प्रोसेसिंग के साधारण अनुप्रयोग पहले से ही हमारे दैनिक जीवन में मौजूद हैं।
NLP, AI का वह घटक है जो लिखित और/या बोली जाने वाली मानव भाषा को समझने पर केंद्रित है। ऐसा करने के लिए विशिष्ट कंप्यूटर प्रोग्राम विकसित किए जाते हैं; एक सामान्य कंप्यूटर को बहुत सटीक, परिभाषित, संरचित और अस्पष्टता-रहित प्रोग्रामिंग भाषा में निर्देश चाहिए होते हैं। दुर्भाग्य से, प्राकृतिक मानव भाषा अप्रमाणित, द्व्यर्थी और भ्रमित करने वाली होती है। किसी प्रोग्राम को शब्दों का अर्थ समझाने के लिए ऐसे एल्गोरिद्म आवश्यक होते हैं जो अर्थ और संरचना का विश्लेषण करके शब्दों को समझने योग्य बनाएँ, कुछ संदर्भों को पहचानें और फिर भाषा जेनरेट करें।
NLP एल्गोरिद्म व्याकरणिक नियमों के आधार पर वाक्यों के अर्थ का आकलन करने के लिए विभिन्न वाक्य-संरचनात्मक और सैमैन्टिक विश्लेषण करते हैं। वे यह कार्य इस प्रकार करते हैं:
सामान्य NLP तकनीकों में शामिल हैं:
NLP का उपयोग अनेक प्रकार के अनुप्रयोगों में होता है। यहाँ कुछ सबसे सामान्य क्षेत्र दिए गए हैं।
मैसेजिंग फ़िल्टर ऑनलाइन नैचुरल लैंग्वेज प्रोसेसिंग के शुरुआती बुनियादी अनुप्रयोगों में से एक हैं। इस तकनीक का सबसे पहले उपयोग स्पैम फ़िल्टर बनाने में हुआ था, जो कुछ शब्दों या वाक्यांशों के आधार पर अवांछित संदेशों की पहचान करते थे। जैसे-जैसे नैचुरल लैंग्वेज प्रोसेसिंग विकसित हुई, फ़िल्टर भी उन्नत होते गए।
इस तकनीक का सबसे सामान्य और हालिया अनुप्रयोगों में से एक है Gmail द्वारा ईमेल का वर्गीकरण। यह सिस्टम ईमेल की सामग्री के आधार पर उसे तीन श्रेणियों (प्राइमरी, सोशल नेटवर्क्स या प्रमोशंस) में वर्गीकृत कर सकता है। इससे Gmail उपयोगकर्ता अपने इनबॉक्स को बेहतर ढंग से प्रबंधित कर पाते हैं और महत्त्वपूर्ण ईमेल पर शीघ्रता से नज़र डालकर उत्तर दे सकते हैं।
Siri (Apple) और Alexa (Amazon) जैसे इंटेलिजेंट असिस्टेंट वॉइस रिकग्निशन का उपयोग करके भाषण पैटर्न पहचानते हैं, अर्थ निकालते हैं और एक उपयोगी प्रतिक्रिया सुझाते हैं। आज, Siri से कोई प्रश्न पूछना, उसका हमें समझना और प्रासंगिक उत्तर देना सामान्य लगता है। इसी प्रकार, हम अपने थर्मोस्टैट, लाइट्स, कार आदि के ज़रिए हर दिन Siri या Alexa से बातचीत करने के आदी होते जा रहे हैं।
अब हम Alexa और Siri जैसे असिस्टेंट से उम्मीद करते हैं कि वे संदर्भ-सूत्र पकड़ें ताकि हमारी रोज़मर्रा की ज़िंदगी में मदद कर सकें और कुछ कार्य (जैसे, वस्तुएँ मँगाना) कर सकें। हमें उनके मज़ेदार जवाब भी पसंद आते हैं या जब वे अपने बारे में बताती हैं। जैसे-जैसे वे हमें जानती हैं, हमारी बातचीत और अधिक व्यक्तिगत हो जाती है। New York Times के लेख Why We May Soon Be Living in Alexa's World के अनुसार, "एक बड़ा बदलाव आने वाला है। Alexa संभवतः इस दशक का तीसरा बड़ा उपभोक्ता प्लेटफ़ॉर्म बन जाएगी।"
सर्च इंजन समान खोज व्यवहार या उपयोगकर्ता इरादे के आधार पर प्रासंगिक परिणाम दिखाने के लिए नैचुरल लैंग्वेज प्रोसेसिंग का उपयोग करते हैं। इससे हर कोई बिना किसी विशेष कौशल के अपनी आवश्यकता की चीज़ें खोज सकता है।
उदाहरण के लिए, जब आप कोई क्वेरी टाइप करना शुरू करते हैं, तो Google आपको लोकप्रिय संबंधित सर्च दिखाता है, लेकिन वह शाब्दिक शब्दों से परे आपकी क्वेरी के सामान्य अर्थ को भी पहचान सकता है। यदि आप Google में कोई फ़्लाइट नंबर टाइप करते हैं, तो आपको उसकी स्थिति पता चल जाएगी। यदि आप कोई स्टॉक सिंबल टाइप करते हैं, तो आपको स्टॉक रिपोर्ट मिलेगी। यदि आप कोई गणितीय समीकरण टाइप करते हैं, तो आपको एक कैलकुलेटर मिलेगा। आपकी खोज विविध परिणाम दे सकती है क्योंकि इसमें उपयोग की गई नैचुरल लैंग्वेज प्रोसेसिंग तकनीक किसी द्व्यर्थी क्वेरी को किसी विशिष्ट इकाई से जोड़कर उपयोगी परिणाम प्रस्तुत करती है।
ऑटोकरेक्ट, ऑटोकम्प्लीट और इन्ट्यूटिव इनपुट जैसी सुविधाएँ आज हमारे स्मार्टफ़ोन पर इतनी आम हैं कि हम उन्हें सामान्य समझते हैं। ऑटो-टाइपिंग और इन्ट्यूटिव टाइपिंग सर्च इंजन के समान ही हैं, क्योंकि वे टाइप किए गए टेक्स्ट पर निर्भर करती हैं ताकि शब्द या वाक्यांश का अंत सुझाया जा सके। ऑटोकरेक्ट कभी-कभी आपके संदेश के समग्र अर्थ को सुधारने के लिए कुछ शब्द भी बदल देता है।
साथ ही, ये फ़ंक्शन आपके साथ विकसित होते हैं। उदाहरण के लिए, इन्ट्यूटिव टाइपिंग समय के साथ आपकी विशिष्ट अभिव्यक्तियों के अनुरूप ढल जाती है। इससे कभी-कभी मज़ेदार संदेश आदान-प्रदान होते हैं, जिनमें वाक्य पूरी तरह से इन्ट्यूटिव इनपुट पर आधारित होते हैं। परिणाम आश्चर्यजनक रूप से व्यक्तिगत और रोचक हो सकता है और कभी-कभी मीडिया का ध्यान भी आकर्षित कर चुका है।
यदि आपकी विदेशी भाषा का अभ्यास व्याकरणिक त्रुटियों से भरा है, तो आपके शिक्षक को शायद पता चल जाएगा कि आपने नैचुरल लैंग्वेज प्रोसेसिंग तकनीक का सहारा लिया है। दुर्भाग्य से, कई भाषाएँ सीधे अनुवाद के लिए उपयुक्त नहीं होतीं क्योंकि उनकी वाक्य-रचनाएँ भिन्न होती हैं, जिसे कभी-कभी अनुवाद सेवाओं ने नज़रअंदाज़ कर दिया था। हालाँकि, ये सिस्टम अब बहुत आगे बढ़ चुके हैं।
नैचुरल लैंग्वेज प्रोसेसिंग की बदौलत, ऑनलाइन अनुवाद उपकरण अधिक सटीक और व्याकरण-सम्मत अनुवाद प्रदान करते हैं। इसलिए, यदि आपको ऐसे व्यक्ति से संवाद करना हो जो आपकी भाषा नहीं बोलता, तो ये अत्यंत उपयोगी हैं। यदि आपको किसी विदेशी टेक्स्ट का अनुवाद करना हो, तो ये उपकरण प्रविष्ट टेक्स्ट की भाषा भी पहचान सकते हैं।
कुछ कंपनियों को कॉल करते समय हममें से अधिकांश ने संभवतः यह घोषणा सुनी होगी कि "यह कॉल प्रशिक्षण उद्देश्यों के लिए रिकॉर्ड की जा सकती है"। यद्यपि इन रिकॉर्डिंग्स का उपयोग प्रशिक्षण के लिए किया जा सकता है (उदा., किसी नाराज़ ग्राहक के साथ संवाद का विश्लेषण), उन्हें आमतौर पर ऐसे डेटाबेस में संग्रहीत किया जाता है जो नैचुरल लैंग्वेज प्रोसेसिंग सिस्टम को सीखने और विकसित होने देता है। स्वचालित सिस्टम ग्राहक कॉल्स को किसी एजेंट या ऑनलाइन चैटबॉट की ओर निर्देशित करते हैं, जो उनकी अनुरोधों का उत्तर देने के लिए प्रासंगिक जानकारी प्रदान करेगा। यह नैचुरल लैंग्वेज प्रोसेसिंग तकनीक पहले से ही कई कंपनियों, जिनमें प्रमुख टेलिकॉम ऑपरेटर शामिल हैं, द्वारा उपयोग की जा रही है।
डिजिटल फ़ोन कॉल तकनीक कंप्यूटर को मानव आवाज़ की नकल करने में भी सक्षम बनाती है। इस प्रकार, गैराज या हेयरड्रेसर पर अपॉइंटमेंट तय करने के लिए स्वचालित फ़ोन कॉल्स की योजना बनाना संभव है।
नैचुरल लैंग्वेज क्षमताएँ अब विश्लेषणात्मक वर्कफ़्लो में एकीकृत हो चुकी हैं। वास्तव में, अधिकाधिक BI विक्रेता अपनी डेटा विज़ुअलाइज़ेशन के लिए नैचुरल लैंग्वेज इंटरफ़ेस प्रदान कर रहे हैं। अधिक बुद्धिमान विज़ुअल कोडिंग, उदाहरण के लिए, डेटा के सैमैन्टिक्स के आधार पर किसी विशिष्ट कार्य के लिए सबसे उपयुक्त विज़ुअलाइज़ेशन प्रस्तावित करने देती है। कोई भी व्यक्ति नैचुरल लैंग्वेज कथनों या प्रश्नों के अंशों का उपयोग करके डेटा का अन्वेषण कर सकता है, जिनके कीवर्ड की व्याख्या और समझ की जाती है।
भाषा का उपयोग करके डेटा का अन्वेषण करना डेटा को अधिक सुलभ बनाता है और एनालिटिक्स को IT विश्लेषकों और डेवलपर्स के पार, पूरे उद्यम तक खोल देता है।
टेक्स्ट एनालिटिक्स विभिन्न भाषायी, सांख्यिकीय और मशीन लर्निंग तकनीकों का उपयोग करके असंरचित टेक्स्टुअल डेटा को विश्लेषण योग्य डेटा में बदलता है।
सेंटिमेंट एनालिसिस ब्रांड्स के लिए एक कठिन चुनौती लग सकती है (विशेषकर बड़े ग्राहक आधार की स्थिति में)। हालाँकि, नैचुरल लैंग्वेज प्रोसेसिंग-आधारित टूल आमतौर पर ग्राहक इंटरैक्शन (जैसे सोशल मीडिया पर टिप्पणियाँ या समीक्षाएँ, या यहाँ तक कि ब्रांड नाम के उल्लेख) को स्कैन करके उनकी प्रकृति का आकलन कर सकता है। इसके बाद, ब्रांड्स इन इंटरैक्शनों का विश्लेषण करके अपनी मार्केटिंग मुहिम की प्रभावशीलता का आकलन कर सकते हैं या ग्राहक समस्याओं के विकास की निगरानी कर सकते हैं। फिर वे यह तय कर सकते हैं कि कैसे प्रतिक्रिया दें, या अपने सेवा स्तर में सुधार करें ताकि बेहतर अनुभव प्रदान किया जा सके।
नैचुरल लैंग्वेज प्रोसेसिंग टेक्स्ट एनालिटिक्स में कीवर्ड निकालने और असंरचित टेक्स्ट डेटा में पैटर्न या रुझान पहचानने में भी योगदान देती है। मुख्य NLP मॉडल कौन-से हैं?
हालाँकि NLP कुछ समय से मौजूद है, हालिया प्रगतियाँ उल्लेखनीय रही हैं, विशेषकर ट्रांसफॉर्मर-आधारित मॉडलों और अग्रणी टेक कंपनियों द्वारा विकसित बड़े-पैमाने के भाषा मॉडलों के उभार के साथ। कुछ सबसे उन्नत मॉडलों में शामिल हैं:
ट्रांसफॉर्मर-आधारित मॉडल:
लार्ज लैंग्वेज मॉडल (LLMs):
इस ट्यूटोरियल में, हम देखेंगे कि NLP के लिए BERT का उपयोग कैसे होता है।
BERT, जिसका पूरा रूप "Bidirectional Encoder Representations from Transformers" है, Google AI द्वारा जारी किया गया एक मॉडल है। यह अभिनव तकनीक नैचुरल लैंग्वेज प्रोसेसिंग (NLP) पर आधारित है।
यह एल्गोरिद्म मूल रूप से मशीन लर्निंग और आर्टिफिशियल इंटेलिजेंस का उपयोग करके इंटरनेट उपयोगकर्ताओं द्वारा की गई क्वेरियों को समझता है। इस प्रकार, यह उनके खोज-इरादों, यानी उनके द्वारा उपयोग की गई प्राकृतिक भाषा, की व्याख्या करने की कोशिश करता है।
इस अर्थ में, BERT का संबंध Google Home जैसे व्यक्तिगत वॉइस असिस्टेंट्स से है। यह टूल अब उपयोगकर्ता द्वारा दर्ज किए गए प्रत्येक शब्द पर आधारित न होकर, पूरी अभिव्यक्ति और उसके संदर्भ पर विचार करता है। ऐसा परिणामों को परिष्कृत करने के लिए किया जाता है। यह जटिल खोजों को संभालने में अधिक कुशल है, चाहे उपयोग किया गया माध्यम कोई भी हो।
और ठोस रूप में, BERT सर्च इंजन को यह सक्षम बनाता है:
अन्य अनुप्रयोगों के लिए, BERT का उपयोग यहाँ होता है:
इस प्रकार, Google BERT का प्रभाव स्वाभाविक रूप से टाइप की गई लंबी क्वेरियों में लगभग 10% तक माना जाता है।
नैचुरल लैंग्वेज प्रोसेसिंग उपयोगकर्ता द्वारा टाइप किए गए शब्दों के विश्लेषण पर केंद्रित होती है। कीवर्ड, उसके पूर्ववर्ती और अनुवर्ती सभी की जाँच की जाती है ताकि क्वेरी को बेहतर समझा जा सके। यही "ट्रांसफॉर्मर्स" द्वारा अपनाया गया विश्लेषण सिद्धांत है।
यह एल्गोरिद्म लॉन्ग-टेल सर्च के लिए विशेष रूप से प्रभावी है, जहाँ पूर्वसर्ग अर्थ को प्रभावित करते हैं। दूसरी ओर, सामान्य क्वेरियों पर इसका प्रभाव कम महत्त्वपूर्ण है, क्योंकि उन्हें Google पहले से ही अच्छी तरह समझता है। अन्य समझ-संबंधी उपकरण, इसलिए, कार्यशील बने रहते हैं।
चाहे क्वेरी अव्यवस्थित ढंग से हो या सटीकता के साथ, सर्च इंजन उसे प्रोसेस करने में सक्षम है। परंतु अधिक दक्षता के लिए, अधिक उपयुक्त शब्दों का उपयोग करना बेहतर है।
संदर्भ, BERT द्वारा किए गए विश्लेषण में महत्त्वपूर्ण भूमिका निभाता है। मशीन अनुवाद और भाषायी मॉडलिंग अनुकूलित हो जाते हैं। गुणवत्तापूर्ण टेक्स्ट जनरेशन में भी उल्लेखनीय सुधार देखे जाते हैं।
इस मॉडल का उपयोग करने के लिए, पहले आवश्यक लाइब्रेरी और पैकेज आयात करें, जैसा यहाँ दिखाया गया है:

अगला कदम है Large Movie Review Dataset को डाउनलोड और एक्सट्रैक्ट करना, फिर डायरेक्टरी की संरचना का अन्वेषण करना।

एक लेबल्ड tf.data.Dataset बनाने के लिए हम नीचे दिखाए अनुसार text_dataset_from_directory का उपयोग करेंगे। अगला, हम validation_split आर्गुमेंट का उपयोग करके प्रशिक्षण डेटा के 80:20 विभाजन से एक वैलिडेशन सेट बनाएँगे।

validation_split का उपयोग करते समय एक रैंडम सीड निर्दिष्ट करना महत्त्वपूर्ण है ताकि वैलिडेशन और ट्रेनिंग स्प्लिट में कोई ओवरलैप न हो।
अगला कदम यह चुनना होगा कि आप Tensorflow Hub से कौन-सा BERT मॉडल लोड और फाइन-ट्यून करना चाहते हैं; आप अपने फाइन-ट्यून किए गए मॉडल को संकलित करने के लिए hub.KerasLayer का उपयोग कर सकते हैं। फिर, हम कुछ टेक्स्ट पर प्रीप्रोसेसिंग मॉडल आज़माएँगे और आउटपुट देखेंगे।

अब, आप एक सरल मॉडल बनाएँगे जो प्रीप्रोसेसिंग मॉडल, पिछले चरणों में चुने गए BERT मॉडल, एक डेंस लेयर और एक Dropout लेयर से मिलकर बना होगा।

अब, आप जाँच सकते हैं कि आपका मॉडल प्रीप्रोसेसिंग मॉडल के आउटपुट के साथ चलता है या नहीं।

लॉस फ़ंक्शन यहाँ आवश्यक कदम है; हम losses.BinaryCrossentropy लॉस फ़ंक्शन चुनेंगे क्योंकि हम एक बाइनरी वर्गीकरण समस्या से निपट रहे हैं।

फाइन-ट्यूनिंग के लिए, वही ऑप्टिमाइज़र उपयोग करें जिसके साथ BERT को मूल रूप से प्रशिक्षित किया गया था: "Adaptive Moments" (Adam)। यह ऑप्टिमाइज़र प्रेडिक्शन लॉस को न्यूनतम करता है और वेट डिके द्वारा रेग्युलराइज़ेशन करता है, जिसे AdamW भी कहा जाता है।

पहले बनाए गए classifier_model का उपयोग करते हुए, आप लॉस, मेट्रिक और ऑप्टिमाइज़र के साथ मॉडल को कम्पाइल कर सकते हैं।

ध्यान दें कि आपके द्वारा चुने गए BERT मॉडल की जटिलता पर निर्भर करते हुए आपके मॉडल को प्रशिक्षण में अधिक या कम समय लग सकता है।

अब, हम लॉस और एक्युरेसी जाँचकर देखेंगे कि हमारे मॉडल ने कैसा प्रदर्शन किया।

यदि आप प्रशिक्षण और वैलिडेशन सेट के लिए लॉस और एक्युरेसी को प्लॉट करना चाहें, तो आप history ऑब्जेक्ट का उपयोग कर सकते हैं:

उपरोक्त सभी चरण इस नोटबुक में विस्तार से दिए गए हैं। आप इन चरणों का अभ्यास कर सकते हैं और सूची में दिए गए प्रत्येक BERT मॉडल के लिए कोड चलाकर आउटपुट देख सकते हैं।
नैचुरल लैंग्वेज प्रोसेसिंग डिजिटल दुनिया में पहले से ही मज़बूती से स्थापित है। जैसे-जैसे कंपनियाँ और उद्योग इसके लाभों की खोज करेंगे और इसे अपनाएँगे, इसके अनुप्रयोग बढ़ते जाएँगे। जहाँ जटिल संचार समस्याओं के लिए मानवीय हस्तक्षेप आवश्यक बना रहेगा, वहीं नैचुरल लैंग्वेज प्रोसेसिंग हमारा रोज़ का सहयोगी होगी—शुरुआत में छोटे कार्यों का प्रबंधन और स्वचालन करेगी, और फिर तकनीक के उन्नत होने के साथ क्रमशः अधिक जटिल कार्यों को संभालेगी।
NLP कैसे काम करता है और इसका उपयोग कैसे करें, इसके बारे में अधिक जानने के लिए हमारा Deep Learning for NLP in Python कोर्स देखें।
BERT द्विदिश भाषा समझ के लिए बनाया गया है, यानी यह वाक्य में किसी शब्द के पूर्ण संदर्भ पर विचार करता है। इसके विपरीत, GPT मॉडल (जैसे GPT-4) ऑटोरेग्रेसीव होते हैं, यानी वे बाएँ-से-दाएँ शब्दों का पूर्वानुमान लगाते हैं और टेक्स्ट जनरेशन के लिए अनुकूलित होते हैं।
BERT का व्यापक उपयोग इन कार्यों में होता है:
हाँ, BERT को फाइन-ट्यून करने के लिए प्रायः GPU की आवश्यकता होती है क्योंकि डीप लर्निंग मॉडलों के प्रशिक्षण में भारी गणना लगती है। हालाँकि, BERT के प्री-ट्रेन्ड संस्करणों का उपयोग कई NLP कार्यों के लिए न्यूनतम कंप्यूटिंग संसाधनों के साथ किया जा सकता है।
कई मॉडल BERT पर आधारित हैं या उससे प्रतिस्पर्धा करते हैं, जिनमें शामिल हैं:
BERT के साथ शुरू करने के लिए:
इन पाठ्यक्रमों के साथ NLP के बारे में और जानें!
कोर्स