LSTM का उपयोग करके भाषा मॉडलिंग कार्यों में अज्ञात शब्दों को संभालना


11

एक प्राकृतिक भाषा प्रसंस्करण (एनएलपी) कार्य के लिए अक्सर शब्दों के लिए एक एम्बेडिंग के रूप में शब्द 2vec वैक्टर का उपयोग किया जाता है। हालाँकि, ऐसे कई अज्ञात शब्द हो सकते हैं, जो शब्द 2vec vectors द्वारा कैप्चर नहीं किए गए हैं, क्योंकि ये शब्द अक्सर प्रशिक्षण डेटा में पर्याप्त नहीं देखे जाते हैं (कई कार्यान्वयन शब्दावली में शब्द जोड़ने से पहले एक न्यूनतम गणना का उपयोग करते हैं)। यह विशेष रूप से उदाहरण के लिए ट्विटर से पाठ के साथ मामला हो सकता है, जहां शब्द अक्सर गलत वर्तनी वाले होते हैं।

एनएलपी टास्क को मॉडलिंग करते समय इस तरह के अज्ञात शब्दों को कैसे संभाला जाना चाहिए जैसे कि लॉन्ग शॉर्ट-टर्म (LSTM) नेटवर्क का उपयोग करके भावुक भविष्यवाणी? मुझे दो विकल्प दिखाई देते हैं:

  1. शब्द 2vec शब्दकोश में एक 'अज्ञात शब्द' टोकन जोड़ना।
  2. इन अज्ञात शब्दों को ऐसे हटाना कि LSTM को यह पता भी न चले कि वाक्य में कौन सा शब्द है।

इन शब्दों को संभालने का पसंदीदा तरीका क्या है?


2
मैंने पहले भी इसी तरह के सवाल का जवाब दिया है; जब सवाल तब LSTMs के लिए विशिष्ट नहीं था, तो ऐसा लगता है कि मैंने जो कुछ भी लिखा था, वह उतना ही लागू होगा: आंकड़े.stackexchange.com/questions/163005/…
fnl

जवाबों:


12

विकल्प 1 (एक अज्ञात शब्द टोकन जोड़ना) है कि ज्यादातर लोग इस समस्या को कैसे हल करते हैं।

विकल्प 2 (अज्ञात शब्दों को हटाना) एक बुरा विचार है क्योंकि यह वाक्य को इस तरह से रूपांतरित करता है जो कि एलएसटीएम को प्रशिक्षित करने के तरीके के अनुरूप नहीं है।

एक और विकल्प जो हाल ही में विकसित किया गया है, वह है कि एक कंटेस्टेंट न्यूरल नेटवर्क या एक अलग LSTM का उपयोग करके प्रत्येक शब्द के लिए एक शब्द एम्बेडिंग-ऑन-फ्लाई बनाया जाए जो एक समय में प्रत्येक शब्द के वर्णों को संसाधित करता है। इस तकनीक का उपयोग करने से आपका मॉडल कभी भी एक ऐसे शब्द का सामना नहीं करेगा, जिसके लिए वह एक एम्बेडिंग नहीं बना सकता है।


हाय हारून, क्या आप मुझे एक दो पॉइंटर्स (कागजात या कोड) दे सकते हैं जो आपके तीसरे विकल्प का उपयोग करें?
भविष्यवक्ता

arxiv.org/abs/1508.02096 यहाँ एक है
हारून


1
एक और हाल ही में एक (EMNLP 2017) arxiv.org/abs/1707.06961 कोड के साथ github.com/yuvalpinter/Mimick
jayelm

-1

दुर्लभ शब्दों को मैप करने का मतलब है कि हम उन शब्दों को हटा दें और उन्हें प्रशिक्षण डेटा में टोकन के साथ बदल दें। इस प्रकार हमारे मॉडल को किसी भी दुर्लभ शब्द का पता नहीं है। यह चौरसाई का एक कच्चा रूप है क्योंकि मॉडल मानता है कि टोकन वास्तव में वास्तविक डेटा में कभी नहीं होगा या बेहतर अभी तक यह इन एन-ग्राम की पूरी तरह से उपेक्षा नहीं करता है।


4
कृपया इस उत्तर के लिए पर्याप्त रूप से जोड़ें। उदाहरण के लिए दावा करें कि "अज्ञात शब्द टोकन जोड़ना सबसे अच्छा विकल्प है"।
जिम
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.