Compartir a través de


Ajuste de hiperparámetros

Las bibliotecas de Python como Optuna, Ray Tune y Hyperopt simplifican y automatizan el ajuste de hiperparámetros para encontrar de forma eficaz un conjunto óptimo de hiperparámetros para los modelos de aprendizaje automático. Estas bibliotecas se escalan entre varios procesos para encontrar rápidamente hiperparámetros con requisitos mínimos de orquestación y configuración manuales.

Optuna

Optuna es un marco ligero que facilita la definición de un espacio de búsqueda dinámico para la optimización de hiperparámetros y la selección del modelo. Optuna incluye algunos de los algoritmos de optimización y aprendizaje automático más recientes.

Optuna se puede paralelizar fácilmente con Joblib para escalar cargas de trabajo e integrarlas con Mlflow para realizar un seguimiento de hiperparámetros y métricas en las pruebas.

Para empezar a trabajar con Optuna, consulte Ajuste de hiperparámetros con Optuna.

Ray Tune

Databricks Runtime ML incluye Ray, un marco de código abierto que se usa para el procesamiento de proceso paralelo. Ray Tune es una biblioteca de ajuste de hiperparámetros que viene con Ray y usa Ray como back-end para la computación distribuida.

Para más información sobre cómo ejecutar Ray en Databricks, consulte ¿Qué es Ray en Azure Databricks?. Para obtener ejemplos de Ray Tune, consulte la documentación de Ray Tune.

Hyperopt

Nota:

La versión de código abierto de Hyperopt ya no se mantiene.

Hyperopt se quitará en la siguiente versión principal de DBR ML. Azure Databricks recomienda usar Optuna para obtener una experiencia similar y acceder a algoritmos de ajuste de hiperparámetros más actualizados.

Hyperopt es una biblioteca de Python que se usa para la optimización de hiperparámetros distribuidos y la selección de modelos. Hyperopt funciona con algoritmos de Machine Learning distribuidos como Apache Spark MLlib y Horovod, así como con modelos de Machine Learning para un solo equipo, como scikit-Learn y TensorFlow.

Para empezar a usar Hyperopt, consulte Uso de algoritmos de entrenamiento distribuidos con Hyperopt.

Seguimiento de MLflow automatizado de MLlib

Nota:

El seguimiento automatizado de MLflow de MLlib está en desuso y deshabilitado de forma predeterminada en clústeres que ejecutan Databricks Runtime 10.4 LTS ML y versiones posteriores.

En su lugar, use el registro automático de MLflow PySpark ML mediante una llamada a mlflow.pyspark.ml.autolog(), que está habilitado de manera predeterminada con el registro automático de Databricks.

Con el seguimiento automatizado de MLflow de MLlib, al ejecutar código de optimización que usa CrossValidator o TrainValidationSplit. Los hiperparámetros y las métricas de evaluación se registran automáticamente en MLflow.