2014-12-19 5 views
6

शब्द वेक्टर कैसे बनाएं? मैंने शब्द वेक्टर बनाने के लिए एक गर्म कुंजी का उपयोग किया, लेकिन यह बहुत ही विशाल और समान अर्थपूर्ण शब्द के लिए सामान्यीकृत नहीं है। तो मैंने तंत्रिका नेटवर्क का उपयोग करके शब्द वेक्टर के बारे में सुना है जो शब्द समानता और शब्द वेक्टर पाता है। तो मैं शब्द वेक्टर बनाने शुरू करने के लिए इस वेक्टर (एल्गोरिदम) या अच्छी सामग्री को उत्पन्न करने के बारे में जानना चाहता था?शब्द वेक्टर

+0

आप टाइप एक्स दस्तावेज़ मैट्रिक्स, टीएफ-आईडीएफ वेटिंग, और कोसाइन समानता के साथ शुरू करना चाहते हैं। यह गूगल। आपको समस्या का एक अच्छा अंतर्दृष्टि मिलेगा। – Pierre

उत्तर

8

शब्द-वैक्टर या तथाकथित वितरित अभ्यावेदन, अब तक एक लंबा इतिहास है एस Bengio के काम से शायद शुरू कर: यह एक अच्छा प्रारंभिक बिंदु है (बेंगियो, वाई।, डचर्म, आर।, & विन्सेंट, पी। (2001)। एक तंत्रिका संभाव्य भाषा मॉडल। एनआईपीएस) जहां उन्होंने तंत्रिका-नेट लैन्यूज मॉडल प्रशिक्षण के उप-उत्पाद के रूप में शब्द-वैक्टर प्राप्त किए।

कई शोधों से पता चला कि ये वैक्टर शब्द के बीच अर्थपूर्ण संबंध प्राप्त करते हैं (उदाहरण के लिए http://research.microsoft.com/pubs/206777/338_Paper.pdf देखें)। कोलोबर्ट एट अल द्वारा भी यह महत्वपूर्ण पेपर (http://arxiv.org/abs/1103.0398) शब्द शब्द वैक्टर को समझने के साथ एक अच्छा प्रारंभिक बिंदु है, जिस तरह से उन्हें प्राप्त किया जाता है और उपयोग किया जाता है।

शब्द 2vec के अलावा उन्हें प्राप्त करने के लिए कई तरीके हैं। एक्सपैमल्स में कोलोबर्ट एट अल (http://ronan.collobert.com/senna/) द्वारा एसएनएनएए एम्बेडिंग शामिल हैं, टी। मिकोलोव द्वारा आरएनएन एम्बेडिंग जिन्हें आरएनएनटीयूएलकिट (http://www.fit.vutbr.cz/~imikolov/rnnlm/) और बहुत कुछ का उपयोग करके गणना की जा सकती है। अंग्रेजी के लिए, इन वेब साइटों से तैयार किए गए एम्बेडिंग डाउनलोड किए जा सकते हैं। word2vec वास्तव में स्किप-ग्राम मॉडल (तंत्रिका नेटवर्क मॉडल नहीं) का उपयोग करता है। शब्द प्रस्तुतियों की गणना के लिए एक और तेज़ कोड ग्लोवी (http://www-nlp.stanford.edu/projects/glove/) है। यह एक खुला प्रश्न है जो अच्छे एम्बेडिंग प्राप्त करने के लिए जो भी गहरे तंत्रिका नेटवर्क आवश्यक हैं या नहीं।

आपके आवेदन के आधार पर, आप विभिन्न प्रकार के शब्द-वैक्टरों का उपयोग करना पसंद कर सकते हैं, इसलिए कई लोकप्रिय एल्गोरिदम का प्रयास करना और आपके लिए बेहतर काम करने का एक अच्छा विचार है।

3

मुझे लगता है कि आप जिस चीज का मतलब है Word2Vec (https://code.google.com/p/word2vec/)। यह किसी दिए गए कॉर्पस के आधार पर दस्तावेजों के एन-आयामी शब्द वैक्टरों को प्रशिक्षित करता है। तो word2vec की मेरी समझ में तंत्रिका नेटवर्क का उपयोग दस्तावेज़ वेक्टर के आयामों को एकत्रित करने और शब्दों के बीच कुछ संबंधों को कैप्चर करने के लिए किया जाता है। लेकिन क्या उल्लेख किया जाना चाहिए कि यह वास्तव में अर्थात् संबंधित नहीं है, यह सिर्फ आपके प्रशिक्षण निकाय में संरचनात्मक संबंध को दर्शाता है।

आप अर्थ संबद्धता पर कब्जा करना चाहते हैं, एक नज़र एक WordNet आधारित उपाय कार्यान्वित उदाहरण के लिए इन libaries है:

आरंभ करने के लिए word2vec के साथ आप अपने pretrained वैक्टर का उपयोग कर सकते हैं। आपको इसके बारे में https://code.google.com/p/word2vec/ पर सभी जानकारी मिलनी चाहिए।

जब आप जावा कार्यान्वयन की तलाश करते हैं। http://deeplearning4j.org/word2vec.html

मुझे आशा है कि इस मदद करता है

बेस्ट चाहती