CountVectorizer für die Textklassifizierung
Es ist an der Zeit, deinen Textklassifikator zu bauen! Die Daten wurden in einen DataFrame namens df geladen. Erforsche sie in der IPython Shell, um herauszufinden, welche Spalten du verwenden kannst. Die Methode .head() ist besonders informativ.
In dieser Übung verwendest du pandas zusammen mit scikit-learn, um einen sparsamen Textvektorisierer zu erstellen, den du zum Trainieren und Testen eines einfachen überwachten Modells verwenden kannst. Zu Beginn wirst du eine CountVectorizer einrichten und einige ihrer Funktionen untersuchen.
Diese Übung ist Teil des Kurses
Einführung in die natürliche Sprachverarbeitung in Python
Anleitung zur Übung
- Importiere
CountVectorizervonsklearn.feature_extraction.textundtrain_test_splitvonsklearn.model_selection. - Erstelle eine Serie
y, die du für die Beschriftungen verwenden kannst, indem du das Attribut.labelvondfzuyzuweist. - Erstelle mit
df["text"](Features) undy(Labels) Trainings- und Testsets mittrain_test_split(). Verwende einetest_sizevon0.33und einerandom_statevon53. - Erstelle ein
CountVectorizerObjekt mit dem Namencount_vectorizer. Achte darauf, dass du das Schlüsselwortargumentstop_words="english"angibst, damit Stoppwörter entfernt werden. - Passe die Trainingsdaten
X_trainan und transformiere sie mit der Methode.fit_transform()deinesCountVectorizerObjekts. Mache das Gleiche mit den TestdatenX_test, nur dass du die Methode.transform()verwendest. - Drucke die ersten 10 Merkmale von
count_vectorizermit der Methode.get_feature_names().
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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])