Tf-idf
हालाँकि शब्दों की गिनती से मॉडल बनाना उपयोगी हो सकता है, जो शब्द बहुत बार आते हैं वे परिणामों को अवांछित रूप से तिरछा कर सकते हैं. इन सामान्य शब्दों के असर को सीमित करने के लिए एक तरह का normalization प्रयोग किया जा सकता है. इस लेसन में आप वीडियो में चर्चा किए गए Term frequency-inverse document frequency (Tf-idf) का उपयोग करेंगे. Tf-idf का प्रभाव यह होता है कि यह सामान्य शब्दों के मान को घटाता है, जबकि उन शब्दों का वेट बढ़ाता है जो बहुत से डॉक्युमेंट्स में नहीं आते.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में मशीन लर्निंग के लिए फीचर इंजीनियरिंग
अभ्यास निर्देश
sklearn.feature_extraction.textसेTfidfVectorizerइम्पोर्ट करें.TfidfVectorizerको instantiate करें, फीचर्स की संख्या 100 तक सीमित रखते हुए और English stop words हटाते हुए.- एक ही स्टेप में
text_cleanकॉलम पर vectorizer को fit और apply करें. - एक DataFrame
tv_dfबनाएँ जिसमें शब्दों के वेट्स हों और फीचर नेम्स कॉलम नामों के रूप में हों.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Import TfidfVectorizer
____
# Instantiate TfidfVectorizer
tv = ____
# Fit the vectroizer and transform the data
tv_transformed = ____(speech_df['text_clean'])
# Create a DataFrame with these features
tv_df = pd.DataFrame(tv_transformed.____,
columns=tv.____).add_prefix('TFIDF_')
print(tv_df.head())