首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未记录任何项目MLFlow

未记录任何项目MLFlow
EN

Stack Overflow用户
提问于 2020-07-04 01:19:37
回答 3查看 987关注 0票数 2

我无法在MLFlow中存储、查看和检索工件。工件文件夹是空的,与创建新实验和分配正确的实验名称和位置无关。

服务器: mlflow server --backend-store-uri mlruns/ --default-artifact root mlruns/ --host 0.0.0.0 --port 5000

创建一个实验: mlflow.create_experiment(exp_name,artifact_location=‘mlrun/’)

代码语言:javascript
复制
with mlflow.start_run():
    mlflow.log_metric("mse", float(binary))
    mlflow.log_artifact(data_path, "data")
    # log model
    mlflow.keras.log_model(model, "models")

代码编译并运行,但没有记录任何工件。它有mlflow.log-model.history文件,但没有model.h5

EN

回答 3

Stack Overflow用户

发布于 2021-04-09 17:34:00

当我开始开发MLflow时,我也遇到了同样的问题。

所以概念是tracking uriartifact uri是两个不同的东西。

tracking uri存储日志,artifact uri存储工件(如yaml、pkl等)。

但是如果你想要一个通用的uri,你可以使用SQLite作为本地数据库,然后你的命令就会是这样的……

mlflow服务器--后端存储-uri sqlite:/mlruns.db--主机0.0.0.0 --端口5000

Note:如果您使用的是远程服务器,那么您的工件存储也应该是远程存储,它不适用于本地数据库

别忘了显式地设置跟踪uri,也有两种方法:

代码mlflow.set_tracking_uri("sqlite:///mlruns.db")

  • using环境中的
  • 可变export MLFLOW_TRACKING_URI=sqlite:///mlruns.db
票数 1
EN

Stack Overflow用户

发布于 2021-04-12 16:43:13

工件存储需要对服务器和客户端都是可访问的。如果您的客户端是从远程计算机连接的,并且您还没有配置像S3这样的远程工件存储,那么它们的工件文件将保存在本地。您可以查看本地存储

这里有一个关于现在支持的不同工件存储的解释:https://mlflow.org/docs/latest/tracking.html#artifact-stores

票数 0
EN

Stack Overflow用户

发布于 2021-06-22 17:01:48

我也有同样的问题(对于mlflow.pytorch)。对我来说,它是通过替换log_model()log_atrifacts()来修复的。

所以记录这个工件的是:

代码语言:javascript
复制
mlflow.log_metric("metric name", [metric value])
mlflow.pytorch.log_model(model, "model")
mlflow.log_artifacts(output_dir)

此外,对于终端中的ui,请cd到mlruns所在的目录。例如,如果mlruns的位置是...\your-project\mlruns

代码语言:javascript
复制
cd ...\your-project

转到安装了mlflow的环境。

代码语言:javascript
复制
...\your-project> conda activate [myenv]

然后,运行mlflow ui

代码语言:javascript
复制
(myenv) ...\your-project> mlflow ui

我在this post中也回答了这个问题:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62720044

复制
相关文章

相似问题

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