लैंग्वेज मॉडल क्या होता है?
लैंग्वेज मॉडल, टोकन या टोकन के किसी क्रम के, टोकन के लंबे क्रम में आने की संभावना का अनुमान लगाता है. टोकन कोई शब्द, सबवर्ड (किसी शब्द का सबसेट) या कोई वर्ण हो सकता है.
इस वाक्य और इसे पूरा करने वाले टोकन पर विचार करें:
When I hear rain on my roof, I _______ in my kitchen.
कोई भाषा मॉडल, उस खाली जगह को भरने के लिए अलग-अलग टोकन या टोकन के क्रम की संभावनाओं का पता लगाता है. उदाहरण के लिए, यहां दी गई टेबल में कुछ संभावित टोकन और उनकी संभावनाओं के बारे में बताया गया है:
| प्रॉबेबिलिटी | टोकन |
|---|---|
| 9.4% | सूप बनाना |
| 5.2% | केतली में पानी गर्म करना |
| 3.6% | डर के मारे दुबक जाना |
| 2.5% | नींद |
| 2.2% | आराम |
कुछ मामलों में, टोकन का क्रम पूरा वाक्य, पैराग्राफ़ या पूरा निबंध हो सकता है.
कोई ऐप्लिकेशन, अनुमान लगाने के लिए संभावना टेबल का इस्तेमाल कर सकता है. अनुमान में सबसे ज़्यादा संभावना वाला जवाब (उदाहरण के लिए, "सूप बनाओ") हो सकता है. इसके अलावा, इसमें ऐसे टोकन का रैंडम चुनाव भी हो सकता है जिनकी संभावना किसी थ्रेशोल्ड से ज़्यादा हो.
किसी टेक्स्ट सीक्वेंस में खाली जगह भरने की संभावना का अनुमान लगाने की सुविधा को ज़्यादा मुश्किल टास्क के लिए भी इस्तेमाल किया जा सकता है. जैसे:
- टेक्स्ट जनरेट किया जा रहा है.
- एक भाषा के टेक्स्ट को दूसरी भाषा में अनुवाद करना.
- दस्तावेज़ों की खास जानकारी जनरेट की जा रही है.
टोकन के आंकड़ों के पैटर्न को मॉडल करके, मॉडर्न लैंग्वेज मॉडल, भाषा के बेहद असरदार इंटरनल रिप्रेजेंटेशन तैयार करते हैं. साथ ही, वे भाषा को जनरेट कर सकते हैं.
एन-ग्राम लैंग्वेज मॉडल
एन-ग्राम, शब्दों के क्रम से बने होते हैं. इनका इस्तेमाल भाषा के मॉडल बनाने के लिए किया जाता है. यहां N, क्रम में मौजूद शब्दों की संख्या होती है. उदाहरण के लिए, जब N की वैल्यू 2 होती है, तो N-ग्राम को 2-ग्राम (या bigram) कहा जाता है. जब N की वैल्यू 5 होती है, तो N-ग्राम को 5-ग्राम कहा जाता है. ट्रेनिंग के दस्तावेज़ में यह वाक्यांश दिया गया है:
you are very nice
इससे मिलने वाले दो शब्दों के क्रम इस तरह हैं:
- आप
- बहुत ज़्यादा हैं
- बहुत अच्छा
जब N की वैल्यू 3 होती है, तो N-ग्राम को 3-ग्राम (या ट्राइग्राम) कहा जाता है. उस वाक्यांश के आधार पर, तीन शब्दों वाले ये वाक्यांश मिलते हैं:
- तुम बहुत
- बहुत अच्छे हैं
इनपुट के तौर पर दो शब्द दिए जाने पर, 3-ग्राम पर आधारित कोई लैंग्वेज मॉडल तीसरे शब्द के आने की संभावना का अनुमान लगा सकता है. उदाहरण के लिए, यहां दिए गए दो शब्दों को देखें:
orange is
कोई भाषा मॉडल, अपने ट्रेनिंग कॉर्पस से मिले सभी 3-ग्राम की जांच करता है. ये 3-ग्राम, orange is से शुरू होते हैं. इससे यह तय किया जाता है कि तीसरा शब्द क्या हो सकता है.
orange is से शुरू होने वाले सैकड़ों 3-ग्राम हो सकते हैं. हालांकि, आपको सिर्फ़ इन दो विकल्पों पर ध्यान देना चाहिए:
orange is ripe orange is cheerful
पहली संभावना (orange is ripe) में, संतरे के बारे में बताया गया है. वहीं, दूसरी संभावना (orange is cheerful) में, नारंगी रंग के बारे में बताया गया है.
कॉन्टेक्स्ट
इंसान, लंबे कॉन्टेक्स्ट को याद रख सकते हैं. किसी नाटक का तीसरा ऐक्ट देखते समय, आपको पहले ऐक्ट में दिखाए गए किरदारों के बारे में जानकारी होती है. इसी तरह, लंबे चुटकुले का पंचलाइन सुनकर आपको हंसी इसलिए आती है, क्योंकि आपको चुटकुले के सेटअप से उसका कॉन्टेक्स्ट याद रहता है.
भाषा मॉडल में, कॉन्टेक्स्ट, टारगेट टोकन से पहले या बाद में दी गई काम की जानकारी होती है. कॉन्टेक्स्ट से, भाषा मॉडल को यह तय करने में मदद मिल सकती है कि "नारंगी" शब्द का मतलब, खट्टे फल से है या रंग से.
कॉन्टेक्स्ट से, लैंग्वेज मॉडल को बेहतर अनुमान लगाने में मदद मिल सकती है. हालांकि, क्या 3-ग्राम से ज़रूरी कॉन्टेक्स्ट मिलता है? माफ़ करें, 3-ग्राम में सिर्फ़ पहले दो शब्दों का कॉन्टेक्स्ट मिलता है. उदाहरण के लिए, orange is दो शब्दों से भाषा मॉडल को तीसरा शब्द का अनुमान लगाने के लिए ज़रूरी कॉन्टेक्स्ट नहीं मिलता.
कॉन्टेक्स्ट की कमी की वजह से, 3-ग्राम पर आधारित भाषा मॉडल कई गलतियां करते हैं.
ज़्यादा शब्दों वाले एन-ग्राम, कम शब्दों वाले एन-ग्राम की तुलना में ज़्यादा कॉन्टेक्स्ट देते हैं. हालांकि, N के बढ़ने पर, हर इंस्टेंस के होने की संभावना कम हो जाती है. जब N बहुत बड़ा हो जाता है, तो आम तौर पर भाषा मॉडल में N टोकन के हर उदाहरण का सिर्फ़ एक इंस्टेंस होता है. इससे टारगेट टोकन का अनुमान लगाने में ज़्यादा मदद नहीं मिलती.
रिकरंट न्यूरल नेटवर्क
रीकरंट न्यूरल नेटवर्क, एन-ग्राम की तुलना में ज़्यादा कॉन्टेक्स्ट देते हैं. रिकरंट न्यूरल नेटवर्क, एक तरह का न्यूरल नेटवर्क होता है. यह टोकन के क्रम के आधार पर ट्रेन होता है. उदाहरण के लिए, एक रिकरंट न्यूरल नेटवर्क, वाक्य के हर शब्द से चुने गए कॉन्टेक्स्ट को धीरे-धीरे सीख सकता है. साथ ही, वह यह भी सीख सकता है कि किस कॉन्टेक्स्ट को अनदेखा करना है. यह ठीक उसी तरह काम करता है जैसे किसी व्यक्ति के बोलने पर आप करते हैं. एक बड़ा रिकरंट न्यूरल नेटवर्क, कई वाक्यों के पैसेज से कॉन्टेक्स्ट हासिल कर सकता है.
हालांकि, रिकरंट न्यूरल नेटवर्क, एन-ग्राम की तुलना में ज़्यादा कॉन्टेक्स्ट सीखते हैं, लेकिन रिकरंट न्यूरल नेटवर्क से मिलने वाला काम का कॉन्टेक्स्ट अब भी सीमित होता है. रिकरंट न्यूरल नेटवर्क, जानकारी का आकलन "टोकन के हिसाब से" करते हैं. इसके उलट, लार्ज लैंग्वेज मॉडल (अगले सेक्शन में इसके बारे में बताया गया है) पूरे कॉन्टेक्स्ट का एक साथ आकलन कर सकते हैं.
ध्यान दें कि लंबे कॉन्टेक्स्ट के लिए, रिकरंट न्यूरल नेटवर्क को ट्रेन करने पर वैनिशिंग ग्रेडिएंट की समस्या आती है.
एक्सरसाइज़: देखें कि आपको कितना समझ आया
- छह शब्दों के क्रम पर आधारित लैंग्वेज मॉडल
- पांच शब्दों के क्रम पर आधारित एक भाषा मॉडल