Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Prácticas recomendadas para el ajuste de hiperparámetros
La optimización de hiperparámetros (HPO) no es un proceso totalmente automatizado. Para mejorar la optimización, siga estas prácticas recomendadas de ajuste de hiperparámetros.
Temas
- Elegir una estrategia de ajuste
- Elección del número de hiperparámetros
- Elección de intervalos de hiperparámetros
- Utilizar las escalas correctas para los hiperparámetros
- Elección del mejor número de trabajos de entrenamiento simultáneos
- Ejecución de trabajos de entrenamiento en varias instancias
- Uso de una semilla aleatoria para reproducir configuraciones de hiperparámetros
Elegir una estrategia de ajuste
Para trabajos de gran tamaño, el uso de la estrategia de ajuste Hyperband puede reducir el tiempo de cálculo. Hyperband tiene un mecanismo de parada temprana para detener los trabajos con bajo rendimiento. Hyperband también puede reasignar recursos hacia configuraciones de hiperparámetros bien utilizadas y ejecutar trabajos paralelos. Para trabajos de entrenamiento más pequeños con menos tiempo de ejecución, utilice la búsqueda aleatoria o la optimización bayesiana.
Utilice la optimización bayesiana para tomar decisiones cada vez más fundamentadas sobre la mejora de las configuraciones de hiperparámetros en la próxima ejecución. La optimización bayesiana utiliza la información recopilada de ejecuciones anteriores para mejorar ejecuciones posteriores. Debido a su naturaleza secuencial, la optimización bayesiana no puede escalar masivamente.
Utilice la búsqueda aleatoria para ejecutar un gran número de trabajos paralelos. En la búsqueda aleatoria, los trabajos posteriores no dependen de los resultados de los trabajos anteriores y se pueden ejecutar de forma independiente. En comparación con otras estrategias, la búsqueda aleatoria es capaz de ejecutar el mayor número de trabajos paralelos.
Utilice la búsqueda por cuadrículas para reproducir los resultados de un trabajo de ajuste o si es importante que el algoritmo de optimización sea sencillo y transparente. También puede utilizar la búsqueda por cuadrículas para explorar todo el espacio de búsqueda de hiperparámetros de forma uniforme. La búsqueda en cuadrículas busca metódicamente todas las combinaciones de hiperparámetros para encontrar los valores de hiperparámetros óptimos. A diferencia de la búsqueda por cuadrículas, la optimización bayesiana, la búsqueda aleatoria y Hyperband extraen hiperparámetros de forma aleatoria del espacio de búsqueda. Como la búsqueda en cuadrículas analiza todas las combinaciones de hiperparámetros, los valores óptimos de los hiperparámetros serán idénticos entre los trabajos de ajuste que utilicen los mismos hiperparámetros.
Elección del número de hiperparámetros
Durante la optimización, la complejidad computacional de un trabajo de ajuste de hiperparámetros depende de lo siguiente:
-
El número de hiperparámetros
-
El rango de valores que Amazon SageMaker AI tiene que buscar
Si bien puede especificar simultáneamente hasta 30 hiperparámetros, limitar la búsqueda a un número menor puede reducir el tiempo de cálculo. La reducción del tiempo de cálculo permite que la SageMaker IA converja más rápidamente hacia una configuración de hiperparámetros óptima.
Elección de intervalos de hiperparámetros
El rango de valores que elija buscar puede afectar negativamente a la optimización de hiperparámetros. Por ejemplo, un rango que abarque todos los valores de hiperparámetros posibles puede generar tiempos de cálculo elevados y un modelo que no se generalice bien con datos invisibles. Si sabe que usar un subconjunto del rango más grande posible es adecuado para su caso de uso, considere limitar el rango a ese subconjunto.
Utilizar las escalas correctas para los hiperparámetros
Durante el ajuste de los hiperparámetros, la SageMaker IA intenta deducir si los hiperparámetros tienen una escala logarítmica o lineal. Inicialmente SageMaker , la IA asume un escalado lineal para los hiperparámetros. Si los hiperparámetros tienen una escala en registros, elegir la escala correcta hará que la búsqueda sea más eficaz. También puedes seleccionar Auto
CreateHyperParameterTuningJobAPIsi quieres que la SageMaker IA detecte la escala por ti. ScalingType
Elección del mejor número de trabajos de entrenamiento simultáneos
Puede utilizar los resultados de ensayos anteriores para mejorar el rendimiento de ensayos posteriores. Elija el mayor número de trabajos paralelos que proporcionen un resultado incremental significativo que también esté dentro de su región y las restricciones de computación de la cuenta. Utilice el campo MaxParallelTrainingJobs
para limitar el número de trabajos de entrenamiento que un trabajo de ajuste de hiperparámetros puede iniciar en paralelo. Para obtener más información, consulte Ejecutar varios HPO trabajos en paralelo en Amazon SageMaker AI
Ejecución de trabajos de entrenamiento en varias instancias
Cuando un trabajo de formación se ejecuta en varias máquinas en modo distribuido, cada máquina emite una métrica objetiva. HPOsolo puede usar una de estas métricas objetivas emitidas para evaluar el rendimiento del modelo. En el modo distribuido, HPO utiliza la métrica objetiva que se registró en el último trabajo en ejecución en todas las instancias.
Uso de una semilla aleatoria para reproducir configuraciones de hiperparámetros
Puede especificar un número entero como semilla aleatoria para el ajuste de hiperparámetros y usar esa semilla durante la generación de hiperparámetros. Más adelante, puede utilizar la misma semilla para reproducir configuraciones de hiperparámetros que sean coherentes con los resultados anteriores. Para las estrategias de búsqueda aleatoria y Hyperband, el uso de la misma semilla aleatoria puede proporcionar hasta un 100% de reproducibilidad de la configuración de hiperparámetros anterior para el mismo trabajo de ajuste. En el caso de la estrategia bayesiana, el uso de la misma semilla aleatoria mejorará la reproducibilidad para el mismo trabajo de ajuste.