केरस में उपयोग करने के लिए एक प्रशिक्षित शब्द एम्बेडिंग (गेंसिम) में अज्ञात शब्द
मैं GENSIM (word2vec) का उपयोग करके एक शब्द को एम्बेड कर रहा हूं और KERAS में एक तंत्रिका नेटवर्क में प्रशिक्षित मॉडल का उपयोग कर रहा हूं। एक समस्या तब होती है जब मेरे पास एक अज्ञात (आउट-ऑफ-शब्दावली) शब्द होता है इसलिए तंत्रिका नेटवर्क अब काम नहीं करता है क्योंकि यह उस विशिष्ट शब्द के लिए भार नहीं पा सकता है। मुझे लगता है कि इस समस्या को ठीक करने का एक तरीका <unk>
शून्य-भार (या शायद यादृच्छिक भार?) के साथ एम्बेड किए गए पूर्व-प्रशिक्षित शब्द में एक नया शब्द ( ) जोड़ रहा है ? कौन सा बेहतर है?) क्या यह दृष्टिकोण ठीक है? इसके अलावा, इस शब्द को एम्बेड करने के लिए, वज़न इस तंत्रिका नेटवर्क में ट्रेन करने योग्य नहीं है।
जवाब
अधिकांश विशिष्ट अज्ञात शब्दों को अनदेखा करना है। (उन्हें प्लग-शब्द या मूल-वेक्टर के साथ बदलना, अधिक विकृत है।)
आप FastText
इसके बजाय एक विधा के प्रशिक्षण पर भी विचार कर सकते हैं , जो हमेशा एक शब्द-शब्द के लिए कुछ अनुमान-सदिश का संश्लेषण करता है, प्रशिक्षण के दौरान बनाए गए चरित्र-एन-ग्राम वैक्टर से। (ये सिंथेटिक वैक्टर अक्सर कुछ नहीं से बेहतर होते हैं, खासकर जब किसी शब्द में संबंधित शब्दों के साथ ओवरलैपिंग शब्द की जड़ें होती हैं - लेकिन सभी प्रासंगिक शब्द usages के उदाहरणों के साथ अधिक प्रशिक्षण डेटा प्राप्त करना बेहतर है, और बस दुर्लभ अज्ञात शब्दों की अनदेखी करना उतना बुरा नहीं है।)