Categories

Versions

Logs the result into a run (MLFlow)

Synopsis

This operator logs the results of a model evaluation into an existing run

Description

This operator is the central operator to store several results into a run which was created before. The operator allows you to store: The model, parameters of the model, performance as well as processes associated to the run in the run.

The user has to provide a connection object to the mlflow server on the con port as well as a RunIOObject to the run port. A RunIOObject can be created with the Create Run operator, which creates a new run or with the Get Run operator which can retrieve an previously created run.

The user can provide a performance vector, a model and the parameters of the model as a ParameterSet object to the operator. The parameters and performances are stored in the run object as parameters and metrics. The model is serialized into its json representation and put into the artifact store on top level.

If log_repository is set to true, the operator is also storing the processes creating the results. If manually_define_process folder is not set to true it will log all the processes which are on the same level as the current process and will go recursively go down. You can change the root folder for this behaviour using the process_folder setting which will appear if you set manually_define_process_folder to true.

If log_ioobjects is set to true also ioobjects will be stored. This is sometimes necessary, because you need to include preprocessing models like normalization, but can cause big memory consumption on the mlflow server.

Input

  • con (Connection)

    Connection to a MLFlow Server

  • run

    A RunIOObject to log the results into

  • per (Performance Vector)

    A PerformanceVector with the performances to log.

  • mod

    The model object to store

  • par (Parameter Set)

    The parameter set to store

Output

  • con (Connection)

    Connection to a MLFlow Server

  • run

    A RunIOObject to log the results into

  • per (Performance Vector)

    A PerformanceVector with the performances to log.

  • mod

    The model object to store

  • par (Parameter Set)

    The parameter set to store

Parameters

  • finish run If set to true the run will be set to finished at the end of this operator.
  • log repository If set to true processes and potentially ioobjects are also put into the mlflow server
  • manually define process folder If set to true the user provides a folder location to store. Otherwise all processes in the same folder than the current process and within subfolders are stored.
  • process folder The folder to log in the run
  • log ioobjects If set to true also IOObjects will be stored in the run and not just processes.
  • user defined parameters Allows the user to add additional parameters, which are also logged as parameters. An example for this would be the used normalization scheme.

Tutorial Processes