首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ClearML,如何查询特定项目和度量的最佳执行模型

ClearML,如何查询特定项目和度量的最佳执行模型
EN

Stack Overflow用户
提问于 2022-09-07 08:02:57
回答 1查看 82关注 0票数 0

我想下载某个ClearlML项目的性能最好的模型。在我的ClearML实验平台中,我有以下内容:

根据:https://clear.ml/docs/latest/docs/clearml_sdk/model_sdk#querying-models,我可以获得一个特定项目的模型列表:

代码语言:javascript
复制
model_list = Model.query_models(
    # Only models from `examples` project
    project_name='YOLOv5', 
    # Only models with input name
    model_name=None,
    # Only models with `demo` tag but without `TF` tag
    tags=['demo', '-TF'],
    # If `True`, only published models
    only_published=False,
    # If `True`, include archived models
    include_archived=True,
    # Maximum number of models returned
    max_results=5
)

print(model_list)

其中的指纹:

代码语言:javascript
复制
[<clearml.model.Model object at 0x7fefbaf22130>, <clearml.model.Model object at 0x7fefbaf22340>]

这样我就可以跑了

代码语言:javascript
复制
model_list[0].get_local_copy()

得到这个特定的模型。但是,如何在特定的度量(在本例中为mAP_0.5:0.95 MAX)上下载该项目的最佳性能?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-09-07 08:17:13

最后我做了以下几件事:

代码语言:javascript
复制
try:
    import clearml
    from clearml import Dataset, Task, Model, OutputModel
    assert hasattr(clearml, '__version__')  # verify package import not local dir
except (ImportError, AssertionError):
    clearml = None

tasks = Task.get_tasks(project_name='YOLOv5', task_name='exp', task_filter={'status': ['completed']})

results = {}
best_task = None
for task in tasks:
    results[task.id] = task.get_last_scalar_metrics()['metrics']['mAP_0.5:0.95']['max']

best_model_task_id = max(results, key=results.get)
model_list = Task.get_task(best_model_task_id).get_models()
dest = model_list['output'][0].get_local_copy()
print('Saved model at:', dest)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73632015

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档