pattern for ML model versioning?

74 views
Skip to first unread message

Sam T

unread,
Sep 4, 2019, 6:48:26 PM9/4/19
to mlflow-users
Hi,

Is there a standard pattern for tracking different versions of a model in mlflow?

Ideally, I would like to use a model id and version to determine a mlflow URI that can be used to load that model. 

I could use mlflow tags, but tags wouldn't enforce version uniqueness for a given model id.

run_id can't really be used as a version number as a model run can be resumed from an existing run_id.

Thanks for any pointers.

Matei Zaharia

unread,
Sep 12, 2019, 6:35:57 PM9/12/19
to Sam T, mlflow-users
This is a great question, Sam. We’re actually working on a Model Registry API that will help with this (see a quick demo here: https://youtu.be/QJW_kkRWAUs?t=1391) but in the meantime, you can try one of the following methods:

- Copy the models to another storage system, such as Git, and use versioning there. Each MLflow Model is just a directory and it includes a link to the run ID that produced it, so you can always follow that to go back to the run. We’ve seen people placing the models in Git or just in a shared storage system like S3, where they assign them version numbers and make sure not to modify them.

- Use run IDs but ask people not to resume the runs. It’s pretty uncommon to resume a run, but that behavior is supported in case you have a long training job that can restart from a checkpoint on failure.

Hope this helps,

Matei

--
You received this message because you are subscribed to the Google Groups "mlflow-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mlflow-users...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mlflow-users/9eead3fb-8a55-4fbf-889d-c298434ae313%40googlegroups.com.

Reply all
Reply to author
Forward
0 new messages