Clasificación de intenciones con sklearn
Ya tienes un array X con los vectores que describen cada una de las frases del conjunto de datos ATIS y un array 1D y con las etiquetas. Las etiquetas son enteros que corresponden a las intenciones del conjunto de datos. Por ejemplo, la etiqueta 0 corresponde a la intención atis_flight.
Ahora vas a usar la biblioteca scikit-learn para entrenar un clasificador sobre este mismo conjunto de datos. En concreto, ajustarás y evaluarás un clasificador de vectores de soporte.
Este ejercicio forma parte del curso
Creación de chatbots en Python
Instrucciones del ejercicio
- Importa la clase
SVCdesklearn.svm. - Instancia un clasificador
clfllamando aSVCcon un único argumento con nombreCcon valor1. - Ajusta el clasificador a los datos de entrenamiento
X_trainyy_train. - Predice las etiquetas del conjunto de prueba,
X_test.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Import SVC
____
# Create a support vector classifier
clf = ____
# Fit the classifier using the training data
____
# Predict the labels of the test set
y_pred = ____
# Count the number of correct predictions
n_correct = 0
for i in range(len(y_test)):
if y_pred[i] == y_test[i]:
n_correct += 1
print("Predicted {0} correctly out of {1} test examples".format(n_correct, len(y_test)))