Capítulo 11. Selección del modelo
Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com
Este capítulo tratará sobre la optimización de los hiperparámetros. También explorará la cuestión de si el modelo necesita más datos para funcionar mejor.
Curva de validación
Crear una curva de validación es una forma de determinar un valor adecuado para un hiperparámetro. Una curva de validación es un gráfico que muestra cómo responde el rendimiento del modelo a los cambios en el valor del hiperparámetro (véase la Figura 11-1). El gráfico muestra tanto los datos de entrenamiento como los de validación. Las puntuaciones de validación nos permiten inferir cómo respondería el modelo ante datos no vistos. Normalmente, elegiríamos un hiperparámetro que maximizara la puntuación de validación.
En el siguiente ejemplo, utilizaremos Yellowbrick para ver si cambiar el valor del hiperparámetro max_depthmodifica el rendimiento del modelo de un bosque aleatorio. Puedes proporcionar un conjunto de parámetros scoring a una métrica del modelo scikit-learn (el valor predeterminado para la clasificación es 'accuracy'):
Consejo
Utiliza el parámetro n_jobs para aprovechar las CPUs y ejecutarlo más rápido. Si lo ajustas a -1, utilizará todas las CPUs.
>>>fromyellowbrick.model_selectionimport(...ValidationCurve,...)>>>fig,ax=plt.subplots(figsize=(6,4))>>>vc_viz=ValidationCurve(...RandomForestClassifier(n_estimators=100),... ...