2012-05-05 8 views
8

में एक कस्टम वर्गीकृत कॉर्पस बनाना मुझे कुछ समस्याएं आ रही हैं जिन्हें नियमित अभिव्यक्तियों और CategorizedPlaintextCorpusReader पायथन में करना है।एनएलटीके और पायथन

मैं एक कस्टम वर्गीकृत कॉर्पस बनाना चाहता हूं और उस पर एक बेवकूफ-बेयस वर्गीकृत को प्रशिक्षित करना चाहता हूं। मेरा मुद्दा निम्न है: मैं दो श्रेणियां, "pos" और "neg" रखना चाहता हूं। सकारात्मक फाइलें सभी एक निर्देशिका में हैं, main_dir/pos/*.txt, और नकारात्मक एक अलग निर्देशिका में हैं, main_dir/neg/*.txt

मैं पॉज़ निर्देशिका में सभी सकारात्मक फ़ाइलों को लोड और लेबल करने के लिए CategorizedPlaintextCorpusReader का उपयोग कैसे कर सकता हूं, और नकारात्मक लोगों के लिए ऐसा ही कर सकता हूं?

एनबी: सेटअप बिल्कुल Movie_reviews कॉर्पस (~nltk_data\corpora\movie_reviews) जैसा ही है।

+0

देखें http://stackoverflow.com/questions/29275614/using-my-own-corpus-instead-of-movie-reviews-corpus-for-classification-in-nltk – alvas

उत्तर

18

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

reader = CategorizedPlaintextCorpusReader('~/MainFolder/', r'.*\.txt', cat_pattern=r'(\w+)/*') 

अन्य दृष्टिकोण है कि मैं विचार कर रहा था एक ही फ़ोल्डर में सब कुछ डाल और फ़ाइलों का नामकरण किया गया है 0_neg.txt, 0_pos.txt, 1_neg.txt आदि अपने पाठक कुछ ऐसा दिखाई देगा के लिए कोड:

reader = CategorizedPlaintextCorpusReader('~/MainFolder/', r'.*\.txt', cat_pattern=r'\d+_(\w+)\.txt') 

मुझे आशा है कि इससे भविष्य में किसी की मदद मिलेगी।

+1

यह किया गया, धन्यवाद! :) –

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