2016-01-22 7 views
6

मैं एक दस्तावेज़ को वेक्टर में बदलने के लिए पाइथन में gensim का Doc2Vec फ़ंक्शन का उपयोग कर रहा हूं।मुझे gensim के Doc2Vec फ़ंक्शन में "आकार" पैरामीटर की व्याख्या कैसे करनी चाहिए?

उपयोग

model = Doc2Vec(documents, size=100, window=8, min_count=5, workers=4)

का एक उदाहरण मैं size पैरामीटर विवेचना कैसे करूं। मुझे पता है कि अगर मैंने size = 100 सेट किया है, तो आउटपुट वेक्टर की लंबाई 100 होगी, लेकिन इसका क्या अर्थ है? उदाहरण के लिए, यदि मैं size से 200 बढ़ाता हूं, तो क्या अंतर है?

+1

आह, आकार काला जादू! – alvas

उत्तर

1

अंतर यह विवरण है कि मॉडल कैप्चर कर सकता है। आम तौर पर, आप Word2Vec जितना अधिक आयाम देते हैं, उतना बेहतर मॉडल - एक निश्चित बिंदु तक।

आम तौर पर आकार 100-300 के बीच है। आपको हमेशा यह मानना ​​होगा कि अधिक आयामों का भी अर्थ है कि अधिक स्मृति की आवश्यकता है।

+0

हैलो, आपकी टिप्पणी के लिए बहुत बहुत धन्यवाद। लेकिन मेरा सवाल, मॉडल "कैप्चर" क्या करता है? उदाहरण के लिए, टीएफ मॉडल में, यदि मैं आकार = 100 सेट करता हूं, तो यह 100 सबसे लगातार शब्द लौटाएगा - समझना आसान है। लेकिन Doc2Vec में, मैं वास्तव में समझ में नहीं आता। – mamatv

+0

समस्या यह है कि आप बस यह नहीं कह सकते कि अधिक आयामों के प्रभाव क्या होंगे। आपको इसे एक अलग तरीके से देखना होगा। जब आपके पास 100 आयाम होते हैं, तो आपके पास किसी शब्द के संबंधों के मॉडल के लिए केवल 100 चर होते हैं। लेकिन 300 आयामों के साथ आपके पास 300 है। इसलिए सिद्धांत में यह अधिक विस्तार से कब्जा कर सकता है, क्योंकि इसमें प्रशिक्षण के दौरान खेलने के लिए अधिक चर होते हैं। या छोटा: ट्वीट बनाम बुक, आप किसी विषय पर अधिक विस्तृत अवलोकन कहां पाएंगे? : डी – Saytiras

+0

हैलो @ सैतिरास, मैं इसे पूरी तरह से समझता हूं :), लेकिन मेरा सवाल यह है कि, "100" क्या मतलब है। उदाहरण के लिए, जैसा कि मैंने कहा था, टीएफ मॉडल में, 100 का मतलब है पाठ में 100 सबसे अधिक शब्द, इसलिए यदि मैं पैरामीटर को 200 में बदलता हूं, तो यह मुझे 200 सबसे लगातार शब्दों को वापस कर देगा। लेकिन डॉक 2 वीक में, तकनीकी भाषा में इसका वास्तव में क्या अर्थ है? – mamatv

7

Word2Vec एक शब्द जो अनिवार्य रूप से मतलब की वितरित प्रतिनिधित्व कैप्चर करता है, कई न्यूरॉन्स एक भी अवधारणा (अवधारणा भाषण आदि के शब्द अर्थ/भावना/हिस्सा हो सकता है) पर कब्जा, और यह भी एक एकल न्यूरॉन कई अवधारणाओं के लिए योगदान ।

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

आकार पैरामीटर अधिक है, इन अवधारणाओं का प्रतिनिधित्व करने के लिए आपके तंत्रिका नेटवर्क की क्षमता अधिक होगी, लेकिन इन वैक्टरों को प्रशिक्षित करने के लिए अधिक डेटा की आवश्यकता होगी (क्योंकि उन्हें यादृच्छिक रूप से प्रारंभ किया गया है)। पर्याप्त संख्या में वाक्यों/कंप्यूटिंग शक्ति की अनुपस्थिति में, size छोटे रखने के लिए बेहतर है।

Doc2Vec Word2Vec की तुलना में थोड़ा अलग तंत्रिका नेटवर्क आर्किटेक्चर का पालन करता है, लेकिन size का अर्थ समान है।

+0

हैलो, आपका मतलब है ''आकार'' न्यूरल नेटवर्क में न्यूरॉन्स की संख्या है डॉक 2 वेक वेक्टर को प्रशिक्षित करने और आउटपुट करने के लिए उपयोग किया जाता है? –

+0

तंत्रिका नेटवर्क की प्रत्येक परत में न्यूरॉन्स की संख्या आर्किटेक्चर पर निर्भर करेगी, चाहे डीबीओ या डीएम। पेपर चेकआउट (उत्तर में उल्लिखित) – kampta

संबंधित मुद्दे