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
CountVectorizer
vonsklearn.feature_extraction.text
undtrain_test_split
vonsklearn.model_selection
. - Erstelle eine Serie
y
, die du für die Beschriftungen verwenden kannst, indem du das Attribut.label
vondf
zuy
zuweist. - Erstelle mit
df["text"]
(Features) undy
(Labels) Trainings- und Testsets mittrain_test_split()
. Verwende einetest_size
von0.33
und einerandom_state
von53
. - Erstelle ein
CountVectorizer
Objekt mit dem Namencount_vectorizer
. Achte darauf, dass du das Schlüsselwortargumentstop_words="english"
angibst, damit Stoppwörter entfernt werden. - Passe die Trainingsdaten
X_train
an und transformiere sie mit der Methode.fit_transform()
deinesCountVectorizer
Objekts. Mache das Gleiche mit den TestdatenX_test
, nur dass du die Methode.transform()
verwendest. - Drucke die ersten 10 Merkmale von
count_vectorizer
mit der Methode.get_feature_names()
.
Interaktive Übung zum Anfassen
Probieren Sie diese Übung aus, indem Sie diesen Beispielcode ausführen.
# 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])