有没有办法使用 MLflow 记录数据集的描述性统计信息?
Is there a way to get log the descriptive stats of a dataset using MLflow?
有没有办法使用 MLflow 记录数据集的描述性统计信息?如果有的话,你能分享一下细节吗?
一般来说,您可以使用 mlflow_log_artifact() 函数记录代码的任意输出。来自 the docs:
mlflow.log_artifact(local_path, artifact_path=None)
Log a local file or directory as an artifact of the currently active run.
Parameters:
local_path – Path to the file to write.
artifact_path – If provided, the directory in artifact_uri to write to.
举个例子,假设您的统计数据在 pandas 数据框中,stat_df
。
## Write csv from stats dataframe
stat_df.to_csv('dataset_statistics.csv')
## Log CSV to MLflow
mlflow.log_artifact('dataset_statistics.csv')
这将显示在跟踪 UI 中此 MLflow 运行 的工件部分下。如果您进一步浏览文档,您会发现您还可以记录整个目录和其中的对象。通常,MLflow 为您提供了很大的灵活性——您写入文件系统的任何内容都可以使用 MLflow 进行跟踪。当然,这并不意味着你应该。 :)
也可以将工件记录为 html 文件,以便在 mlflow 中显示为(丑陋的)table。
import seaborn as sns
import mlflow
mlflow.start_run()
df_iris = sns.load_dataset("iris")
df_iris.describe().to_html("iris.html")
mlflow.log_artifact("iris.html",
"stat_descriptive")
mlflow.end_run()
有没有办法使用 MLflow 记录数据集的描述性统计信息?如果有的话,你能分享一下细节吗?
一般来说,您可以使用 mlflow_log_artifact() 函数记录代码的任意输出。来自 the docs:
mlflow.log_artifact(local_path, artifact_path=None) Log a local file or directory as an artifact of the currently active run.
Parameters:
local_path – Path to the file to write. artifact_path – If provided, the directory in artifact_uri to write to.
举个例子,假设您的统计数据在 pandas 数据框中,stat_df
。
## Write csv from stats dataframe
stat_df.to_csv('dataset_statistics.csv')
## Log CSV to MLflow
mlflow.log_artifact('dataset_statistics.csv')
这将显示在跟踪 UI 中此 MLflow 运行 的工件部分下。如果您进一步浏览文档,您会发现您还可以记录整个目录和其中的对象。通常,MLflow 为您提供了很大的灵活性——您写入文件系统的任何内容都可以使用 MLflow 进行跟踪。当然,这并不意味着你应该。 :)
也可以将工件记录为 html 文件,以便在 mlflow 中显示为(丑陋的)table。
import seaborn as sns
import mlflow
mlflow.start_run()
df_iris = sns.load_dataset("iris")
df_iris.describe().to_html("iris.html")
mlflow.log_artifact("iris.html",
"stat_descriptive")
mlflow.end_run()