如何将 MLflow 和 H2O 文件记录到与具有层次结构的 Experiment_id 和 run_uuid 对应的文件夹中?

问题描述

我在 AWS Databricks 上运行 MLflow 和 H2O AutoML。根据 MLflow 跟踪文档,认情况下,MLflow Python API 日志在本地运行到运行程序的 mlruns 目录中的文件中。我正在学习结合 MLflow 和 H2O 的教程,在 Iris 数据集上运行 H2O 的 AutomML。运行 AutoML 后,所有文件都被转储到我运行程序的文件夹中,这样当我执行 h2o.ls() 时它会显示 180 个文件。我不知道如何像在 Linux (pwd) 中那样打印工作目录的名称,或者只显示子目录,但是从列出的 10 个文件(共 180 个)中,我没有看到 mlruns 文件夹,我也没有t 认为它在那里是因为 ls 命令列出了一堆 AutoML 文件

enter image description here

教程调用

all_mlflow_runs = client.list_run_infos(experiment.experiment_id)
if len(all_mlflow_runs) > 0:
    run_info = all_mlflow_runs[-1]
    model = mlflow.h2o.load_model("mlruns/{exp_id}/{run_id}/artifacts/model/".format(exp_id=experiment.experiment_id,run_id=run_info.run_uuid))
    result = model.predict(valid)

调用 load_model 失败并显示错误消息:OSError: No such file or directory: 'mlruns/4128256956389970/fad7dfd76fae4330b3ee0c7bd69f7f7b/artifacts/model/.'

教程中没有任何地方展示如何创建 mlruns 文件夹,或者将所有 AutoML 文件动态创建/登录到与 Experiment_id 和 run_id 对应的文件夹中。在这种情况下,在 run_uuid 下,是 artifacts/model 文件夹。我希望在类似的层次结构中创建我的 AutoML 运行文件,其中包含的文件夹对于 Experiment_id 和 run_uuid 是唯一的,并且模型文件像上面的路径一样被隔离。我查看了 MLflow 文档,但没有找到说明如何执行此操作的示例。有人可以向我提供一些执行此操作的示例代码吗?

最后,关于 h2o.ls() 命令,我如何显示所有 180 个文件?如何查看 mlruns 文件夹是否真的存在?如果在那里,你如何列出那里的文件?有没有办法在执行 h2o.ls() 命令之前更改目录或指定子目录?

谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...