N-gramas de orden superior para análisis de sentimiento
Al igual que en un ejercicio anterior, vamos a construir un clasificador que detecte si la reseña de una película es positiva o negativa. Sin embargo, esta vez usaremos n-gramas hasta n=2 para la tarea.
Las reseñas de entrenamiento con n-gramas están disponibles como X_train_ng. Las reseñas de prueba correspondientes están disponibles como X_test_ng. Por último, usa y_train y y_test para acceder a las clases de sentimiento de entrenamiento y prueba, respectivamente.
Este ejercicio forma parte del curso
Ingeniería de características para NLP en Python
Instrucciones del ejercicio
- Define una instancia de MultinomialNB. Llámala
clf_ng. - Ajusta el clasificador con
X_train_ngyy_train. - Mide la
accuracyenX_test_ngyy_testusando el métodoscore().
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Define an instance of MultinomialNB
clf_ng = ____
# Fit the classifier
clf_ng.____(____, ____)
# Measure the accuracy
accuracy = ____
print("The accuracy of the classifier on the test set is %.3f" % accuracy)
# Predict the sentiment of a negative review
review = "The movie was not good. The plot had several holes and the acting lacked panache."
prediction = clf_ng.predict(ng_vectorizer.transform([review]))[0]
print("The sentiment predicted by the classifier is %i" % (prediction))