Paso 3: Crear un clasificador
Este es el último paso de la predicción de análisis de sentimiento. Hemos explorado y enriquecido nuestro conjunto de datos con características relacionadas con el sentimiento y creado vectores numéricos a partir de él.
Usarás el conjunto de datos que construiste en los pasos anteriores. Concretamente, contiene una característica con la longitud de las reseñas y 200 características creadas con el vectorizador Tfidf.
Tu tarea es entrenar una regresión logística para predecir el sentimiento. Los datos se han importado por ti y se llaman reviews_transformed. El objetivo se llama score y es binario: 1 cuando la reseña del producto es positiva y 0 en caso contrario.
Entrena un modelo de regresión logística y evalúa su rendimiento en los datos de prueba. ¿Qué tal funciona el modelo?
Todos los paquetes necesarios ya se han importado por ti.
Este ejercicio forma parte del curso
Sentiment Analysis in Python
Instrucciones del ejercicio
- Realiza la división entrenamiento/prueba, asignando el 20% de los datos a prueba y estableciendo la semilla aleatoria en
456. - Entrena un modelo de regresión logística.
- Predice la clase.
- Muestra por pantalla la puntuación de exactitud y la matriz de confusión en el conjunto de prueba.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Define X and y
y = reviews_transformed.score
X = reviews_transformed.drop('score', axis=1)
# Train/test split
X_train, X_test, y_train, y_test = ____(____, ____, ____=0.2, ____=456)
# Train a logistic regression
log_reg = ____.____(____, ____)
# Predict the labels
y_predicted = log_reg.____(____)
# Print accuracy score and confusion matrix on test set
print('Accuracy on the test set: ', ____(____, ____))
print(____(____, ____)/len(y_test))