अपने फीचर्स को सीमित करना
जैसा कि आपने देखा, CountVectorizer को डिफॉल्ट सेटिंग्स के साथ इस्तेमाल करने पर आपके कॉर्पस के हर शब्द के लिए एक फीचर बनता है. इससे बहुत अधिक फीचर्स बन सकते हैं, जिनमें अक्सर ऐसे भी होते हैं जिनकी विश्लेषणात्मक वैल्यू बहुत कम होती है.
इसी उद्देश्य से CountVectorizer में कुछ पैरामीटर्स हैं जिनसे आप फीचर्स की संख्या घटा सकते हैं:
min_df: केवल वे शब्द लें जो दस्तावेज़ों के इस प्रतिशत से अधिक में आते हों. इससे उन आउट्लायर शब्दों को हटाया जा सकता है जो अलग-अलग टेक्स्ट में जनरलाइज़ नहीं होते.max_df: केवल वे शब्द लें जो दस्तावेज़ों के इस प्रतिशत से कम में आते हों. यह उन बहुत सामान्य शब्दों (जैसे "and" या "the") को हटाने में उपयोगी है जो हर कॉर्पस में आते हैं लेकिन वैल्यू नहीं जोड़ते.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में मशीन लर्निंग के लिए फीचर इंजीनियरिंग
अभ्यास निर्देश
- CountVectorizer में फीचर्स की संख्या सीमित करें: किसी शब्द के आने वाले दस्तावेज़ों की न्यूनतम सीमा 20% और अधिकतम 80% सेट करें.
text_cleanकॉलम पर वेक्टराइज़र को एक ही चरण में फिट और अप्लाई करें.- इस ट्रांसफ़ॉर्म किए हुए (sparse) ऐरे को काउंट्स वाले numpy ऐरे में बदलें.
- नए, घटाए गए ऐरे के आयाम प्रिंट करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Import CountVectorizer
from sklearn.feature_extraction.text import CountVectorizer
# Specify arguements to limit the number of features generated
cv = ____
# Fit, transform, and convert into array
cv_transformed = ____(speech_df['text_clean'])
cv_array = ____
# Print the array shape
print(____)