मुझे gensim का उपयोग करके ट्वीट्स पर word2vec प्रतिनिधित्व को प्रशिक्षित करने की आवश्यकता है। अधिकांश ट्यूटोरियल और कोड के विपरीत मैंने जीन्सिम पर देखा है कि मेरा डेटा कच्चा नहीं है, लेकिन पहले से ही प्रीप्रोसेस्ड किया गया है। मेरे पास एक टेक्स्ट दस्तावेज़ में एक शब्दकोश है जिसमें 65k शब्द हैं (एक "अज्ञात" टोकन और एक ईओएल टोकन) और ट्वीट्स को इस शब्दकोश में इंडेक्स के साथ एक numpy मैट्रिक्स के रूप में सहेजा जाता है। डेटा स्वरूप का एक सरल उदाहरण नीचे देखा जा सकता है:पूर्वनिर्धारित शब्दकोश और शब्द-सूचकांक डेटा पर Gensim word2vec
dict.txt
you
love
this
code
ट्वीट्स (5 अज्ञात है और 6 EOL)
[[0, 1, 2, 3, 6],
[3, 5, 5, 1, 6],
[0, 1, 3, 6, 6]]
मैं अनिश्चित कैसे मुझे इंडेक्स प्रतिनिधित्व को संभालना चाहिए। एक आसान तरीका सिर्फ इंडेक्स की सूची को तारों की सूची में परिवर्तित करना है (यानी [0, 1, 2, 3, 6] -> ['0', '1', '2', '3', '6 ']) जैसा कि मैंने इसे word2vec मॉडल में पढ़ा है। हालांकि, यह gensim के रूप में अक्षम होना चाहिए तो उदाहरण के लिए इस्तेमाल आंतरिक सूचकांक देखने की कोशिश करेगा '2'।
मैं इस डेटा को कैसे लोड करूं और gensim का उपयोग करके कुशल तरीके से word2vec प्रतिनिधित्व कैसे बना सकता हूं?
मैं पुष्टि कर सकता हूं कि मैं बस मॉडल में पूर्णांक इनपुट नहीं कर सकता। जैसा कि मूल पोस्ट (शायद स्पष्ट रूप से पर्याप्त नहीं है) में बताया गया है, यह स्ट्रिंग्स को पूर्णांक को मैप करके बस काम करता है। – pir
जिज्ञासा से, आप 2 डी numpy सरणी से '5' और' 6' कैसे फ़िल्टर करेंगे? प्रत्येक पंक्ति में हमेशा एक ही आकार होना चाहिए। यह शब्द 2vec को प्रदान करने के लिए मैट्रिक्स पर पुनरावृत्ति करते समय किया जा सकता है, लेकिन यह बहुत अक्षम लगता है। – pir