Efecto de la eliminación de ejemplos
Los vectores de soporte se definen como ejemplos de entrenamiento que influyen en el límite de decisión. En este ejercicio, observará este comportamiento eliminando los vectores no compatibles del conjunto de entrenamiento.
El conjunto de datos sobre la calidad del vino ya está cargado en X
y y
(sólo las dos primeras características). (Nota: especificamos lims
en plot_classifier()
para que los dos gráficos se vean obligados a utilizar los mismos límites de eje y puedan compararse directamente).
Este ejercicio forma parte del curso
Clasificadores lineales en Python
Instrucciones de ejercicio
- Entrene un SVM lineal en todo el conjunto de datos.
- Crear un nuevo conjunto de datos que contenga sólo los vectores soporte.
- Entrene un nuevo SVM lineal en el conjunto de datos más pequeño.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
# Train a linear SVM
svm = SVC(kernel="linear")
svm.fit(____)
plot_classifier(X, y, svm, lims=(11,15,0,6))
# Make a new data set keeping only the support vectors
print("Number of original examples", len(X))
print("Number of support vectors", len(svm.support_))
X_small = X[____]
y_small = y[____]
# Train a new SVM using only the support vectors
svm_small = SVC(kernel="linear")
svm_small.fit(____)
plot_classifier(X_small, y_small, svm_small, lims=(11,15,0,6))