Aan de slagGa gratis aan de slag

CountVectorizer voor tekstclassificatie

Tijd om te beginnen met het bouwen van je tekstclassifier! De data is ingeladen in een DataFrame met de naam df. Verken het in de IPython Shell om te onderzoeken welke kolommen je kunt gebruiken. De methode .head() is daarbij bijzonder informatief.

In deze oefening gebruik je pandas samen met scikit-learn om een sparse tekstvectorizer te maken die je kunt gebruiken om een eenvoudig supervised model te trainen en te testen. Je begint met het opzetten van een CountVectorizer en het verkennen van enkele van diens features.

Deze oefening maakt deel uit van de cursus

Introductie tot Natural Language Processing in Python

Cursus bekijken

Oefeninstructies

  • Importeer CountVectorizer uit sklearn.feature_extraction.text en train_test_split uit sklearn.model_selection.
  • Maak een Series y voor de labels door de attribuutwaarde .label van df toe te wijzen aan y.
  • Maak met df["text"] (features) en y (labels) de training- en testsets met train_test_split(). Gebruik een test_size van 0.33 en een random_state van 53.
  • Maak een CountVectorizer-object met de naam count_vectorizer. Zorg dat je het keywordargument stop_words="english" meegeeft zodat stopwoorden worden verwijderd.
  • Fit en transformeer de trainingsdata X_train met de methode .fit_transform() van je CountVectorizer-object. Doe hetzelfde voor de testdata X_test, maar gebruik daar de methode .transform().
  • Print de eerste 10 features van de count_vectorizer met behulp van de methode .get_feature_names().

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Import the necessary modules
____
____

# Print the head of df
print(df.head())

# Create a series to store the labels: y
y = ____

# Create training and test sets
X_train, X_test, y_train, y_test = ____

# Initialize a CountVectorizer object: count_vectorizer
count_vectorizer = ____

# Transform the training data using only the 'text' column values: count_train 
count_train = ____

# Transform the test data using only the 'text' column values: count_test 
count_test = ____

# Print the first 10 features of the count_vectorizer
print(____[:10])
Code bewerken en uitvoeren