मेरे पास एक डेनिश वर्डनेट की .txt फ़ाइल है। क्या एनएलटीके जैसे पाइथन के लिए एनएलपी लाइब्रेरी के साथ इसका उपयोग करने का कोई तरीका है? यदि नहीं, तो आप किसी ऐसी भाषा में प्राकृतिक भाषा प्रसंस्करण के बारे में कैसे जा सकते हैं जो किसी दिए गए लाइब्रेरी द्वारा समर्थित नहीं है। यह भी कहना है कि आप स्पासी जैसी लाइब्रेरी में अंग्रेजी या डच के अलावा किसी अन्य भाषा में नामांकित इकाई पहचान करना चाहते हैं। क्या इसे करने का कोई तरीका है?क्या लाइब्रेरी में अपना खुद का वर्डनेट जोड़ना संभव है?
उत्तर
क्या एनएलटीके जैसे पायथन के लिए एनएलपी लाइब्रेरी के साथ इसका उपयोग करने का कोई तरीका है?
आप इसे एनएलटीके के साथ कर सकते हैं, हालांकि यह थोड़ा अजीब है।
आपको अपने वर्डनेट कॉर्पस को Open Multilingual Wordnet प्रारूप में परिवर्तित करने की आवश्यकता होगी, जो एक साधारण टैब-डिलीमिटेड प्रारूप है। ध्यान दें कि उनके पास पहले से ही एक डेनिश वर्डनेट है।
फिर आपको एनएलटीके में वर्डनेट और ओपन बहुभाषी वर्डनेट कॉर्पोरेशन स्थापित करना चाहिए यदि आपने पहले से ऐसा नहीं किया है। यह प्रत्येक भाषा फ़ाइल के लिए उपनिर्देशिका के साथ ~/nltk_data/corpora/omw/
जैसी निर्देशिका तैयार करेगा। आप इसके लिए एक निर्देशिका बनाने और इस तरह अपनी फ़ाइल नामकरण से अपने कोष जोड़ने की आवश्यकता होगी:
~/nltk_data/corpora/omw/xxx/wn-data-xxx.tab
xxx
कुछ भी हो सकता है, लेकिन यह दोनों स्थानों में ही होना चाहिए। यह फ़ाइल नाम पैटर्न एनएलटीके here में हार्ड-कोड किया गया है।
इसके बाद आप xxx
को lang
पैरामीटर के रूप में निर्दिष्ट करके अपने वर्डनेट का उपयोग कर सकते हैं। यहाँ एक उदाहरण from the documentation है:
>>> wn.synset('dog.n.01').lemma_names('ita') # change 'ita' to 'xxx'
['cane', 'Canis_familiaris']
आप एक भाषा है कि किसी भी पुस्तकालय द्वारा समर्थित नहीं है में प्राकृतिक भाषा संसाधन के बारे में कैसे जा सकते हैं?
मैंने इसे जापानी के साथ अक्सर किया है।
कुछ तकनीकें आपके टोकन के अंदर दिखती हैं - यानी, वे जांचते हैं कि कोई शब्द शब्दशः "कहें" या "होना" या कुछ है। यह स्पष्ट कारणों से स्टेमर्स और लेमैमाइज़र के साथ आम है। कुछ सिस्टम धारणाओं के आधार पर नियमों का उपयोग करते हैं भाषण के कुछ हिस्सों किसी दिए गए भाषा (आमतौर पर अंग्रेजी) में कैसे बातचीत करते हैं। आप इन उम्मीदों को अपनी भाषा में अनुवाद करने में सक्षम हो सकते हैं, लेकिन आमतौर पर आप इनका उपयोग नहीं कर सकते हैं।
हालांकि, कई उपयोगी तकनीकें आपके टोकन के अंदर बिल्कुल नहीं दिखती हैं - वे सिर्फ देखभाल करते हैं कि दो टोकन बराबर हैं या नहीं। ये आम तौर पर लेबल या कॉलोकेशन डेटा जैसी सुविधाओं पर भरोसा करते हैं। आपको अपने डेटा को पूर्व-टोकननाइज़ करने की आवश्यकता हो सकती है, और आप भाषा में विकिपीडिया पर एक सामान्य भाषा मॉडल को प्रशिक्षित करना चाहेंगे, लेकिन यह है। वर्ड वेक्टर, एनईआर, दस्तावेज़ समानता उदाहरण समस्याएं हैं जहां भाषा समर्थन की कमी आमतौर पर एक मुद्दा नहीं है।
यह भी कहना है कि आप स्पासी जैसे लाइब्रेरी में अंग्रेजी या डच के अलावा किसी अन्य भाषा में नामांकित इकाई पहचान करना चाहते हैं। क्या इसे करने का कोई तरीका है?
स्पासी एनईआर के लिए custom labelling का माध्यम प्रदान करता है। के साथ इसका उपयोग अन्यथा असमर्थित भाषा दस्तावेज नहीं है और थोड़ा मुश्किल होगा। हालांकि, चूंकि आपको एनईआर के लिए पूर्ण भाषा मॉडल की आवश्यकता नहीं है, इसलिए आप लेबल किए गए उदाहरणों के साथ एक एनईआर विशिष्ट टूल का उपयोग कर सकते हैं।
He PRP B-NP
reckons VBZ B-VP
the DT B-NP
current JJ I-NP
account NN I-NP
deficit NN I-NP
will MD B-VP
narrow VB I-VP
to TO B-PP
only RB B-NP
# # I-NP
1.8 CD I-NP
billion CD I-NP
in IN B-PP
September NNP B-NP
. . O
He PRP B-NP
reckons VBZ B-VP
..
प्रारूप इस तरह की कई सीआरएफ या अन्य एनईआर उपकरण द्वारा समर्थित है:
यहाँ CoNLL प्रारूप पर आधारित CRF++ के लिए कुछ उदाहरण प्रशिक्षण डेटा है। सीआरएफएसयूइट Python wrapper के साथ एक है।
इस तरह के डेटा के लिए, एल्गोरिदम वास्तव में पहले कॉलम में क्या ख्याल नहीं रखता है, इसलिए भाषा समर्थन कोई मुद्दा नहीं है।
आशा है कि मदद करता है!
- 1. अपना खुद का BIOS लिखना
- 2. अपना खुद का एप्लिकेशन हैकिंग
- 3. अपना खुद का .net obfuscator
- 4. अपना खुद का इटरेटर बनाना
- 5. अपना खुद का प्रिंट पूर्वावलोकन लागू करना?
- 6. सी # में अपना खुद का रैपर कैसे लिखें?
- 7. सी - डिजाइन अपना खुद का मुफ्त() फ़ंक्शन
- 8. सी # से अपना खुद का इंस्टॉलर बनाएं?
- 9. लोगों को अपना खुद का क्लासलोडर
- 10. अपना खुद का एमडी 5 टकराव बनाएं
- 11. सी #: अपना खुद का शफलर लिखा; डेक
- 12. फेसबुक में अपना खुद का वीडियो प्लेयर कैसे एम्बेड करें?
- 13. अपना खुद का कस्टम ब्राउज़र बनाएं
- 14. अपना खुद का "ड्रैगगेबल" फ़ंक्शन बनाना
- 15. क्या चार्ट में शीर्षक जोड़ना संभव है?
- 16. अपना खुद का 3 डी गेम इंजन
- 17. java.lang.Exception बनाम अपना खुद का अपवाद रोलिंग
- 18. अपना खुद का मॉलोक फ़ंक्शन बना रहा है?
- 19. एंड्रॉइड डिवाइस में डिफ़ॉल्ट कीबोर्ड के बजाय अपना खुद का कीबोर्ड जोड़ना इनपुट
- 20. जावा में अपना खुद का मार्कर इंटरफ़ेस कैसे लिखें?
- 21. टीएफएस - क्या एक शेल्फ को किसी कार्य आइटम से जोड़ना संभव है? खुद ब खुद? (और अधिक)
- 22. जावा में अपना स्वयं का अनचेक अपवाद बनाना संभव है?
- 23. डेविस बनाम का उपयोग कब करें। अपना खुद का प्रमाणीकरण
- 24. वर्डनेट
- 25. अपना खुद का एक्सएमएल पार्सर/एक्सएमएल पार्सिंग एल्गोरिदम रोल करें?
- 26. वर्डनेट
- 27. जेडब्ल्यूएनएल (वर्डनेट लाइब्रेरी) का उपयोग करके अनुमानित आवृत्ति आदेश में समानार्थी कैसे मिल सकता है?
- 28. अपना खुद का 'सब कुछ एक फ़ाइल है' इंटरफ़ेस
- 29. क्या मैं जावा में प्रोग्रामेटिक रूप से अपना खुद का कीटैब उत्पन्न कर सकता हूं?
- 30. अपना खुद का लाटेक्स गणित प्रतीक कैसे बनाएं?
संक्षिप्त उत्तर: आप नहीं कर सकते। एक एपीआई केवल वही समर्थन करता है जो यह समर्थन करता है (और यह स्पासी के लिए सबसे बड़ी कमी में से एक है)। लंबा जवाब यह है कि, यदि आप वास्तव में जानते हैं कि आप क्या कर रहे हैं, तो मुझे लगता है कि आप संभावित रूप से स्रोत को संपादित कर सकते हैं। – spicypumpkin
@Posh_Pumpkin, यह सही नहीं है। एपीआई को विस्तारित करना संभव है क्योंकि यह एक ओपन सोर्स प्रोजेक्ट है, https://github.com/nltk/nltk/pull/1621 देखें। यहां तक कि 'spacy' के लिए, मेरा मानना है कि @ होननिबल और @ines योगदान को प्रोत्साहित करते हैं: https://github.com/explosion/spaCy/blob/master/CONTRIBUTING.md – alvas
@alvas Well, yes। क्या यह स्रोत को संपादित करने के रूप में नहीं गिना जाता है? मुझे पूरा यकीन है कि ओपी चाहता है कि बिल्कुल नहीं है। – spicypumpkin