La Falla de GridSearchCV
Antes de utilizar GridSearchCV, tenga en cuenta que KNeighborsClassifier posee más hiperparámetros además de n_neighbors. Dos de los más importantes son weights y p.
Pesos
Por defecto, el clasificador utiliza weights='uniform', lo que significa que todos los vecinos k votan de manera equitativa.
Configurar weights='distance' otorga mayor influencia a los vecinos más cercanos, lo que a menudo mejora las predicciones cuando los puntos cercanos son más relevantes.
P
El parámetro p controla la métrica de distancia:
p=1: distancia Manhattan;p=2: distancia Euclidiana.
Un parámetro p puede tomar cualquier entero positivo. Existen muchas distancias diferentes, pero son más difíciles de visualizar que p=1 o p=2.
No se preocupe si los detalles de weights o p no son claros. Se presentan simplemente para mostrar que existe más de un hiperparámetro que puede influir en las predicciones del modelo. Considérelos como ejemplos de hiperparámetros que pueden ajustarse.
Anteriormente, solo se ajustaba n_neighbors. Para buscar entre los tres hiperparámetros, utilice:
param_grid = {
'n_neighbors': [1, 3, 5, 7],
'weights': ['distance', 'uniform'],
'p': [1, 2]
}
GridSearchCV prueba todas las combinaciones posibles para encontrar la mejor, por lo que intentará todas estas:
Una cuadrícula más grande como:
param_grid = {
'n_neighbors': [...],
'weights': ['distance', 'uniform'],
'p': [1, 2, 3, 4, 5]
}
crea 100 combinaciones. Con validación cruzada de 5 particiones, el modelo se entrena 500 veces. Esto es adecuado para conjuntos de datos pequeños, pero para conjuntos más grandes se vuelve demasiado lento.
Para reducir el tiempo de cómputo, RandomizedSearchCV prueba solo un subconjunto aleatorio de combinaciones, generalmente encontrando resultados sólidos mucho más rápido que una búsqueda en cuadrícula completa.
¡Gracias por tus comentarios!
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
Awesome!
Completion rate improved to 3.13
La Falla de GridSearchCV
Desliza para mostrar el menú
Antes de utilizar GridSearchCV, tenga en cuenta que KNeighborsClassifier posee más hiperparámetros además de n_neighbors. Dos de los más importantes son weights y p.
Pesos
Por defecto, el clasificador utiliza weights='uniform', lo que significa que todos los vecinos k votan de manera equitativa.
Configurar weights='distance' otorga mayor influencia a los vecinos más cercanos, lo que a menudo mejora las predicciones cuando los puntos cercanos son más relevantes.
P
El parámetro p controla la métrica de distancia:
p=1: distancia Manhattan;p=2: distancia Euclidiana.
Un parámetro p puede tomar cualquier entero positivo. Existen muchas distancias diferentes, pero son más difíciles de visualizar que p=1 o p=2.
No se preocupe si los detalles de weights o p no son claros. Se presentan simplemente para mostrar que existe más de un hiperparámetro que puede influir en las predicciones del modelo. Considérelos como ejemplos de hiperparámetros que pueden ajustarse.
Anteriormente, solo se ajustaba n_neighbors. Para buscar entre los tres hiperparámetros, utilice:
param_grid = {
'n_neighbors': [1, 3, 5, 7],
'weights': ['distance', 'uniform'],
'p': [1, 2]
}
GridSearchCV prueba todas las combinaciones posibles para encontrar la mejor, por lo que intentará todas estas:
Una cuadrícula más grande como:
param_grid = {
'n_neighbors': [...],
'weights': ['distance', 'uniform'],
'p': [1, 2, 3, 4, 5]
}
crea 100 combinaciones. Con validación cruzada de 5 particiones, el modelo se entrena 500 veces. Esto es adecuado para conjuntos de datos pequeños, pero para conjuntos más grandes se vuelve demasiado lento.
Para reducir el tiempo de cómputo, RandomizedSearchCV prueba solo un subconjunto aleatorio de combinaciones, generalmente encontrando resultados sólidos mucho más rápido que una búsqueda en cuadrícula completa.
¡Gracias por tus comentarios!