Natural Language Processing (NLP) यह एक Computer Science और Artificial Intelligence का हिस्सा है। जो इंसान और कंप्यूटर के बिच होने वाले Communication से संबंधित है। NLP AI की मदद से Computers को texts को समझने और किसी इंसान की तरह बोलने की ability प्रदान करती है। Computers को Natural Language को समझने, Processing करने और उसका सही जवाब देने के लिए Program किया जाता है। लेकिन जितना हमे दिख रहा है उतना यह आसान नहीं है।
जैसे हम किसी से बात करते है और सामने वाला हमारी बात को सुन रहा होता है, हमारी बात को समझ रहा होता है और हम जो भी कह रहे है उस पर क्या जवाब दे यह सोच रहा होता है. कुछ देर बाद जब हम बात करना बंद कर देते है या अपनी बात पूरी करते है तब वह हमने कही उस बात का जवाब देता है. जैसे मान लो आपका दोस्त आपसे हिंदी और इंग्लिश भाषा को मिक्स कर आपको कुछ बता रहा है और आप उसकी बात को सुन कर, समझ कर उसे जवाब देते है. जवाब किसी ऐसी भाषा में होता है जो आपके दोस्त को समझ में आ जाए.
जब दो Medium एक दूसरे की भाषा को समझते है और उस पर React करते है तभी उनके बीच सही से Communication हो पाता है. बड़ी-बड़ी कंपनियां बिलकुल यही चाहती है की उनके कंप्यूटर इंसान की भाषा को समझे, उसे प्रोसेस करे और उस पर जवाब दे. Computers ने जो जवाब दिया है वह इंसान समझ सके. कंपनियां चाहती है की इंसान और मशीन एक दूसरे से ऐसे बात करे जैसे दो इंसान एक दूसरे से बात करते है. इसी चीज को कंपनियां NLP यानी Natural Language Processing की मदद से इम्प्लीमेंट करना चाहती है और अपने कम्प्यूटर्स को स्मार्ट बनाना चाहती है.
Natural Language कैसे Generate कि जाती है?
Natural Language को Generate करने के लिए सिस्टम को 3 Procedures से गुजरना होता है.
1. Automatic Speech Recognition (ASR)
यह Module यूजर के द्वारा बोली गई Speech को अच्छे से पहचान कर उसे Collect करता है और इसे अगले Module NLU को भेजता है.
2. Natural Language Understanding (NLU)
NLU को Natural Language Interpretation(NLI) भी कहां जाता है. जब आप कोई वीडियो देखते है, जैसे मूवी हो या कोई और वीडियो आप उस वीडियो को अच्छे से समझते हो, बिल्कुल यही काम NLU करता है. ASR द्वारा भेजी गई Speech को NLU समझता है और प्रोसेस किया हुआ डाटा अगले Moduel NLG को भेजता है.
3. Natural Language Generation (NLG)
जैसे हम Google Assistant से कोई सवाल पूछते है तो वह उसे सुनता है, समझता है और फिर उस पर अपना जवाब देता है. सुनने को हम ASR कह सकते है, सवाल को समझने को हम NLU कह सकते है और उस पर रिप्लाई करने को NLG कह सकते है.
Natural Language Generation(NLG) NLP कि आखरी स्टेप होती है जो Natural Language को Generate करती है. ऐसी Language जो इंसान को आसानी से समझ में आ जाए.
NLU में क्या-क्या Challenges आते है?
1. What is Lexical Ambiguity in NLP? in Hindi
Lexical Ambiguity मतलब एक ऐसी कंडीशन जिसमे किसी एक शब्द के दो या दो से ज्यादा मतलब निकल कर आए. मान लो एक लाइन है “How Are You?”, Lexical Ambiguity में यह लाइन अलग-अलग हो जाती है मतलब एक लाइन में जितने भी शब्द है उन्हें अलग-अलग किया जाता है. जब शब्द अलग-अलग होंगे तो एक शब्द के कई मतलब हो सकते है.
Example: “The tank is filled with water”, मतलब टैंक है जो की पानी से भरा हुआ है. अब यहां यह तो समझ में आता है की पानी से भरा हुवा है लेकिन Tank जो है क्या वह घर में इस्तेमाल किया जाने वाला tank है या मिलिट्री tank है? यह एक बहुत ही बड़ा Challenges है NLU के लिए.
2. What is Syntactic Ambiguity in NLP? in Hindi
Syntactic Ambiguity को Structured Ambiguity भी कहा जाता है. Syntactic Ambiguity का मतलब है की हमने जो लाइन कही है उसके Structure में अगर कोई गलती हुई हो तो पूरी लाइन का मतलब बदल सकता है. मतलब ऐसी कंडीशन जहां एक लाइन के दो या उससे भी ज्यादा मतलब हो सकते है.
Example: “Call me a taxi”, यहां कोई इंसान उसके लिए taxi को बुलाने की बात कर रहा है. लेकिन यह हो सकता है की हम उसे taxi कहे, या वो चाहता हो की हम उसे taxi कह कर बुलाए. यहीं बात अगर इंसान से भी कहीं जाए तो हो सकता है वह भी थोड़ी देर सोच मे पड़ जाए. लेकिन उस इंसान के हाव भाव से इंसान यह समझ सकता है कि आखिर वह चाहता क्या है. एक मशीन के लिए यह समझना काफी मुश्किल हो जाता है.
3. What is Semantic Ambiguity in NLP? in Hindi
Semantic Ambiguity को Polygemy भी कहा जाता है. यह वह कंडीशन है जहां किसी शब्द, वाक्यांश या वाक्य, संदर्भ से बाहर निकल जाता है, जिसकी एक से अधिक Definition होती है.
Example: “कार ने बच्ची को टक्कर मार दी जब वह चल रही थी” यहां पर Ambiguity यह है कि चल क्या रही थी कार चल रही थी या बच्ची चल रही थी.
4. What is Pragmatic Ambiguity in NLP? in Hindi
Pragmatic Ambiguity कंडीशन तब आती है जब Context किसी Statement के बारे में पूरी जानकारी नहीं देता मतलब अधूरी जानकारी देता है.
Example: “पुलिस आ रही है” ठीक है पुलिस आ रही है लेकिन क्यों आ रही है? किसके लिए आ रही है? कहां आ रही है?
इंसान के लिए यह समझना आसान हो जाता है, लेकिन मशीन के लिए यह समझना काफी मुश्किल काम होता है. हम इंसान अपने पास्ट के बेस पर, आसपड़ोस की जानकारी के बेस पर या किसी और चीज के बेस पर पता लगा लेंगे की क्यों आ रही है.
NLG में क्या-क्या Challenges आते है?
यूजर को क्या रिप्लाई करना है?
NLG में सबसे पहले हम यह देखते है की हमें क्या रिप्लाई करना है? क्योंकि जो भी रिप्लाई करना है वह यूजर के पूछे गए सवाल के बेस पर ही वह रिप्लाई होना चाहिए.
जैसे यूजर ने पूछा “Tell me the nearby places to eat” और मशीन रिप्लाई कर रही है “Nearby places for Shopping”. हमने पूछा खाने के बारे में और हमें जवाब मिल रहा है कपड़ो के बारे में. यह एक बड़ा चैलेंज होता है NLG के लिए.
सही Structure में रिप्लाई करना
NLG के लिए यह भी एक चैलेंज होता है की वह यूजर को सही फॉर्मेट में यानी सही Structure में रिप्लाई करें. ताकि यूजर को वह जानकारी अच्छे से और आसानी से समझ में आए.
Example: जब हम गूगल पर आज का Weather सर्च करते है तो हमें रिजल्ट एक विशेष फॉर्मेट में दिखाया जाता है.
NLP के Application कौन कौनसे है?
1. Speech Recognition
सबसे ज्यादा इस्तेमाल किया जाने वाला यह फीचर काफी सारी कंपनियों के लिए एक Important हिस्सा बन गया है. बड़ी-बड़ी कंपनियां जैसे Google, Amazon और Apple Speech Recognition के ऊपर काम करते रहते है और अपने सिस्टम को और बेहतर बनाने के लिए काफी मेहनत करते है.
Speech Recognition का सबसे बड़ा Example है Google Assistant और Siri जो की Apple का प्रोडक्ट है.
यहां पर चाहे Google Assistant हो या Siri हो आप कोई सवाल पूछते हो या कोई Instruction देते हो. जो भी भाषा आपको आती है आप उस भाषा में सवाल पूछते हो. आपके पूछे उस सवाल को समझ कर उसे प्रोसेस कर सिस्टम आपको सही जवाब दे रहा है और उसी भाषा में जवाब दे रहा है. इसको Speech Recognition कहा जाता है.
2. Sentimental Analysis
Sentimental Analysis को आप Opinion Mining या Emotion AI भी कह सकते है. इसका इस्तेमाल Natural Language Processing, Text Analysis, Computational Linguistics, और Biometrics के लिए किया जाता है. Sentimental Analysis की मदद से हम क्या कोई चीज अच्छी है, बुरी है यह देख सकते है. किसी डाटा को लेकर आप यह देख सकते हो की उस डाटा के अंदर किस चीज पर सबसे ज्यादा फोकस किया गया है. जैसे मूवी को लेकर रेटिंग आती है की क्या यह मूवी अच्छी है या अच्छी नहीं है.
3. Machine Translation
Machine Translation का सबसे बड़ा Example है Google Translator. किसी को अगर चाइनीज़ भाषा नहीं आती और वह किसी चीनी को उसने पूछे किसी सवाल का जवाब देना चाहता है तो वह पहले उसके सवाल को Translate करेगा, उसे समझेगा और अपना जवाब अपनी भाषा में लिख कर उसे चाइनीज़ में Translate कर रिप्लाई देगा.
जब हमें कमेंट आते है लेकिन वह कमैंट्स किसी और भाषा में होते है, तब हम उस कमैंट्स को कॉपी कर Translate करके देखते है की आखिर वह क्या है? उस कमेंट को समझने के बाद हम उसका जवाब भी उसे उसी भाषा में देते है. लेकिन पहले अपनी भाषा में लिखते है उसे कन्वर्ट करते है उसकी भाषा में और फिर उसे रिप्लाई करते है. इसे Machine Translation कहा जाता है.
4. Chatbots
Chatbots एक मशीन होती है. जैसे कई कंपनियों के Chatbots होते है जैसे Hike मैसेंजर का एक Chatbot है Natasha. जब हम अपनी तरफ से कोई मैसेज करते है तो यह bots अपने डेटाबेस में से बिलकुल सही जवाब हमें रिप्लाई करते है. पहले के ज़माने में सामने भी एक इंसान ही होता था जो हमारे सवालों का जवाब देता था. लेकिन आज के समय में Chatbots का काफी ज्यादा इस्तेमाल होता है.