ComeçarComece de graça

Prevendo o sentimento de uma resenha de filme

No exercício anterior, você gerou as representações bag-of-words para os dados de treino e teste das resenhas de filmes. Neste exercício, vamos usar esse modelo para treinar um classificador Naive Bayes capaz de detectar o sentimento de uma resenha e calcular sua acurácia. Observe que, como este é um problema de classificação binária, o modelo só consegue classificar uma resenha como positiva (1) ou negativa (0). Ele não é capaz de detectar resenhas neutras.

Caso não se lembre, os vetores BoW de treino e teste estão disponíveis como X_train_bow e X_test_bow, respectivamente. Os rótulos correspondentes estão disponíveis como y_train e y_test, respectivamente. Além disso, para sua referência, o conjunto de dados original de resenhas de filmes está disponível como df.

Este exercício faz parte do curso

Feature Engineering para NLP em Python

Ver curso

Instruções do exercício

  • Instancie um objeto de MultinomialNB. Dê a ele o nome clf.
  • Treine clf usando X_train_bow e y_train.
  • Meça a acurácia de clf usando X_test_bow e y_test.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Create a MultinomialNB object
clf = ____

# Fit the classifier
clf.____(____, ____)

# Measure the accuracy
accuracy = clf.score(____, ____)
print("The accuracy of the classifier on the test set is %.3f" % accuracy)

# Predict the sentiment of a negative review
review = "The movie was terrible. The music was underwhelming and the acting mediocre."
prediction = clf.predict(vectorizer.transform([review]))[0]
print("The sentiment predicted by the classifier is %i" % (prediction))
Editar e executar o código