AutoML experiment: get model and metrics for any algorithm (not only for the best one)
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 35/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- azure, jupyter-notebook, python
- Lĩnh vực
- api, machine-learning
Hướng nghiên cứu
Bắt đầu với cách sử dụng MLflow client được nêu trong issue, bao gồm get_run, tag automl_best_child_run_id và pipeline_id_000. Theo dõi cách các child run của AutoML được xác định và cách tên thuật toán liên hệ với tên run nội bộ của chúng. Công việc được xem là hoàn tất khi việc truy xuất một model và các metric của nó cho bất kỳ thuật toán nào trong experiment được ghi lại hoặc được hỗ trợ, không chỉ cho run tốt nhất.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
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!
- Ngôn ngữ chính
- Jupyter Notebook
- Star
- 4.4k
- Fork
- 2.6k
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của Azure/MachineLearningNotebooks
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Azure/MachineLearningNotebooks#1975 · 1 bình luận ·
-
duplicates Đang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 68/100
Azure/MachineLearningNotebooks#1960 ·
-
machine Đang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 10/100
Azure/MachineLearningNotebooks#1987 ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
Azure/MachineLearningNotebooks#1985 · 1 bình luận ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 35/100
Azure/MachineLearningNotebooks#1981 · 1 reaction ·
Tất cả issue của Azure/MachineLearningNotebooks
Issue tương tự
-
Area: Excel support
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
orbeon/orbeon-forms#7893 ·
-
essnmx good first issue
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 95/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
yeti-platform/yeti#1380 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
modelcontextprotocol/python-sdk#3566 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
griptape-ai/griptape#2353 ·