Tf-idf
Deși numărul de apariții ale cuvintelor poate fi util pentru construirea modelelor, cuvintele care apar de foarte multe ori pot distorsiona rezultatele în mod nedorit. Pentru a limita influența acestor cuvinte frecvente asupra modelului tău, se poate folosi o formă de normalizare. În această lecție vei folosi frecvența termenului-frecvența inversă a documentului (Tf-idf), așa cum a fost discutat în videoclip. Tf-idf are efectul de a reduce valoarea cuvintelor comune, mărind în același timp ponderea cuvintelor care nu apar în multe documente.
Acest exercițiu face parte din cursul
Ingineria caracteristicilor pentru Machine Learning în Python
Instrucțiuni pentru exercițiu
- Importă
TfidfVectorizerdinsklearn.feature_extraction.text. - Instanțiază
TfidfVectorizerlimitând numărul de caracteristici la 100 și eliminând cuvintele de stop din engleză. - Antrenează și aplică vectorizatorul pe coloana
text_cleanîntr-un singur pas. - Creează un DataFrame
tv_dfcare să conțină ponderile cuvintelor și numele caracteristicilor ca nume de coloane.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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())