Probemos ahora un algoritmo de K vecinos. Importamos la clase KNeighborsClassifier de Scikit-Learn y la instanciamos especificando apenas 2 vecinos (para evitar tiempos de entrenamiento demasiado largos):
from sklearn.neighbors import KNeighborsClassifier
model = KNeighborsClassifier(n_neighbors = 2)
Ahora validamos el modelo vía validación cruzada:
%%time
cross_val_score(model, X, y, cv = 5).mean()
Wall time: 55min 23s
0.9692833333333335
Confirmamos que la exactitud del modelo es bastante buena y mucho más elevada que con el árbol de decisión (aunque el tiempo de entrenamiento es muy superior).