Constructs an `Estimator`

instance from given keras model.

tf.compat.v1.keras.estimator.model_to_estimator( keras_model=None, keras_model_path=None, custom_objects=None, model_dir=None, config=None, checkpoint_format='saver' )

If you use infrastructure or other tooling that relies on Estimators, you can still build a Keras model and use model_to_estimator to convert the Keras model to an Estimator for use with downstream systems.

For usage example, please see: Creating estimators from Keras Models.

Estimators returned by `model_to_estimator`

are configured so that they can handle sample weights (similar to `keras_model.fit(x, y, sample_weights)`

).

To pass sample weights when training or evaluating the Estimator, the first item returned by the input function should be a dictionary with keys `features`

and `sample_weights`

. Example below:

keras_model = tf.keras.Model(...) keras_model.compile(...) estimator = tf.keras.estimator.model_to_estimator(keras_model) def input_fn(): return dataset_ops.Dataset.from_tensors( ({'features': features, 'sample_weights': sample_weights}, targets)) estimator.train(input_fn, steps=1)

Args | |
---|---|

`keras_model` | A compiled Keras model object. This argument is mutually exclusive with `keras_model_path` . Estimator's `model_fn` uses the structure of the model to clone the model. Defaults to `None` . |

`keras_model_path` | Path to a compiled Keras model saved on disk, in HDF5 format, which can be generated with the `save()` method of a Keras model. This argument is mutually exclusive with `keras_model` . Defaults to `None` . |

`custom_objects` | Dictionary for cloning customized objects. This is used with classes that is not part of this pip package. For example, if user maintains a `relu6` class that inherits from `tf.keras.layers.Layer` , then pass `custom_objects={'relu6': relu6}` . Defaults to `None` . |

`model_dir` | Directory to save `Estimator` model parameters, graph, summary files for TensorBoard, etc. If unset a directory will be created with `tempfile.mkdtemp` |

`config` | `RunConfig` to config `Estimator` . Allows setting up things in `model_fn` based on configuration such as `num_ps_replicas` , or `model_dir` . Defaults to `None` . If both `config.model_dir` and the `model_dir` argument (above) are specified the `model_dir` argument takes precedence. |

`checkpoint_format` | Sets the format of the checkpoint saved by the estimator when training. May be `saver` or `checkpoint` , depending on whether to save checkpoints from `tf.train.Saver` or `tf.train.Checkpoint` . This argument currently defaults to `saver` . When 2.0 is released, the default will be `checkpoint` . Estimators use name-based `tf.train.Saver` checkpoints, while Keras models use object-based checkpoints from `tf.train.Checkpoint` . Currently, saving object-based checkpoints from `model_to_estimator` is only supported by Functional and Sequential models. Defaults to 'saver'. |

Returns | |
---|---|

An Estimator from given keras model. |

Raises | |
---|---|

`ValueError` | If neither keras_model nor keras_model_path was given. |

`ValueError` | If both keras_model and keras_model_path was given. |

`ValueError` | If the keras_model_path is a GCS URI. |

`ValueError` | If keras_model has not been compiled. |

`ValueError` | If an invalid checkpoint_format was given. |

© 2020 The TensorFlow Authors. All rights reserved.

Licensed under the Creative Commons Attribution License 3.0.

Code samples licensed under the Apache 2.0 License.

https://www.tensorflow.org/versions/r2.3/api_docs/python/tf/compat/v1/keras/estimator/model_to_estimator