AutoML experiment: get model and metrics for any algorithm (not only for the best one)
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- azure, jupyter-notebook, python
- Área
- api, machine-learning
Línea de trabajo
Comienza con el uso del cliente de MLflow mostrado en el issue, incluidos get_run, la etiqueta automl_best_child_run_id y pipeline_id_000. Rastrea cómo se identifican las ejecuciones secundarias de AutoML y cómo se relacionan los nombres de los algoritmos con sus nombres de ejecución internos. Se considera completado cuando se documente o habilite la recuperación de un modelo y sus métricas para cualquier algoritmo del experimento, no solo para la mejor ejecución.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
What I'm trying to do
For an AutoML Forecasting experiment, I'd like to compare the performance of the best model with the performance of another model from the same experiment.
For an AutoML run, I understand how to get the best performing model and its metrics like this:
# ...initialize MLFlow client...
mlflow_parent_run = mlflow_client.get_run('upbeat_square_abs3942')
best_child_run_id = mlflow_parent_run.data.tags["automl_best_child_run_id"]
best_run = mlflow_client.get_run(best_child_run_id)
best_run.data.metrics
# etc...
But how can I fetch the job for any model based on the algorithm name?
Something like:
# pseudocode:
mlflow_client.get_automl_run_by_algorithm('XGBoostRegressor')
So far, I managed to figure out the following:
- list of algorithms used in the AutoML experiment
mlflow_parent_run.data.tags['pipeline_id_000']
# '__AutoML_Naive__;__AutoML_SeasonalNaive__;__AutoML_Average__;__AutoML_SeasonalAverage__;__AutoML_Ensemble__'
However, this list seems to be in an arbitrary order and I struggle to get the corresponding job names for the algorithms.
- "internal" job names for the child runs
The child runs seem to have different names than the names shown in Azure ML Studio.
They are named for instance upbeat_square_abs3942_2 - i.e. the name of the parent run upbeat_square_abs3942 followed by underscore plus a number (_2in this example).
But Azure ML Studio displays names like (no upbeat_square_abs3942_2 to be found):

So this code works:
child_run = mlflow_client.get_run('upbeat_square_abs3942_2')
but using a name shown in the screenshot above throws an exception, e.g.
child_run = mlflow_client.get_run('green_floor_0ln3tlpv')
Question
How can I obtain the model and metrics for any algorithm used in the experiment?
Thanks!
- Lenguaje dominante
- Jupyter Notebook
- Estrellas
- 4.4k
- Forks
- 2.6k
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de Azure/MachineLearningNotebooks
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Azure/MachineLearningNotebooks#1975 · 1 comentario ·
-
duplicates Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 68/100
Azure/MachineLearningNotebooks#1960 ·
-
machine Abierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 10/100
Azure/MachineLearningNotebooks#1987 ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
Azure/MachineLearningNotebooks#1985 · 1 comentario ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
Azure/MachineLearningNotebooks#1981 · 1 reacción ·
Todos los issues de Azure/MachineLearningNotebooks
Issues similares
-
Area: Excel support
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
orbeon/orbeon-forms#7893 ·
-
essnmx good first issue
Dificultad 1/5 Menos de una hora Aptitud para principiantes 95/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
yeti-platform/yeti#1380 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
modelcontextprotocol/python-sdk#3566 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
griptape-ai/griptape#2353 ·