CountVectorizer para classificação de texto
É hora de começar a construir seu classificador de texto! Os dados foram carregados em um DataFrame chamado df. Explore-o no IPython Shell para ver quais colunas você pode usar. O método .head() é especialmente informativo.
Neste exercício, você usará pandas junto com scikit-learn para criar um vetorizador de texto esparso que poderá usar para treinar e testar um modelo supervisionado simples. Para começar, você vai 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 do exercício
- Importe
CountVectorizerdesklearn.feature_extraction.textetrain_test_splitdesklearn.model_selection. - Crie uma Series
ypara usar como rótulos atribuindo o atributo.labeldedfay. - Usando
df["text"](features) ey(rótulos), crie os conjuntos de treino e teste usandotrain_test_split(). Usetest_sizede0.33erandom_statede53. - Crie um objeto
CountVectorizerchamadocount_vectorizer. Certifique-se de especificar o argumento nomeadostop_words="english"para remover stop words. - Ajuste e transforme os dados de treino
X_trainusando o método.fit_transform()do seu objetoCountVectorizer. Faça o mesmo com os dados de testeX_test, mas usando o método.transform(). - Imprima as 10 primeiras features do
count_vectorizerusando seu método.get_feature_names().
Exercício interativo prático
Experimente este exercício completando 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])