CountVectorizer para classificação de texto
É hora de você começar a criar seu classificador de texto! Os dados foram carregados em um DataFrame chamado df
. Explore-o no Shell IPython para investigar quais colunas você pode usar. O método .head()
é particularmente informativo.
Neste exercício, você usará o site pandas
junto com o scikit-learn para criar um vetorizador de texto esparso que possa ser usado para treinar e testar um modelo supervisionado simples. Para começar, você configurará um CountVectorizer
e investigará alguns de seus recursos.
Este exercício faz parte do curso
Introdução ao processamento de linguagem natural em Python
Instruções de exercício
- Importe
CountVectorizer
desklearn.feature_extraction.text
etrain_test_split
desklearn.model_selection
. - Crie uma série
y
para usar nos rótulos, atribuindo o atributo.label
dedf
ay
. - Usando
df["text"]
(recursos) ey
(rótulos), crie conjuntos de treinamento e teste usandotrain_test_split()
. Use umtest_size
de0.33
e umrandom_state
de53
. - Crie um objeto
CountVectorizer
chamadocount_vectorizer
. Certifique-se de que você especifique o argumento da palavra-chavestop_words="english"
para que as palavras de parada sejam removidas. - Ajuste e transforme os dados de treinamento
X_train
usando o método.fit_transform()
do seu objetoCountVectorizer
. Faça o mesmo com os dados de testeX_test
, só que usando o método.transform()
. - Imprima os 10 primeiros recursos do site
count_vectorizer
usando seu método.get_feature_names()
.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
# 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])