tf.estimator.TrainSpec

Class TrainSpec

Defined in tensorflow/python/estimator/training.py.

Configuration for the "train" part for the train_and_evaluate call.

TrainSpec determines the input data for the training, as well as the duration. Optional hooks run at various stages of training.

__new__

@staticmethod
__new__(
    cls,
    input_fn,
    max_steps=None,
    hooks=None
)

Creates a validated TrainSpec instance.

Args:

  • input_fn: A function that provides input data for training as minibatches. See Premade Estimators for more information. The function should construct and return one of the following:

    • A 'tf.data.Dataset' object: Outputs of Dataset object must be a tuple (features, labels) with same constraints as below.
    • A tuple (features, labels): Where features is a Tensor or a dictionary of string feature name to Tensor and labels is a Tensor or a dictionary of string label name to Tensor.
  • max_steps: Int. Positive number of total steps for which to train model. If None, train forever. The training input_fn is not expected to generate OutOfRangeError or StopIteration exceptions. See the train_and_evaluate stop condition section for details.

  • hooks: Iterable of tf.train.SessionRunHook objects to run on all workers (including chief) during training.

Returns:

A validated TrainSpec object.

Raises:

  • ValueError: If any of the input arguments is invalid.
  • TypeError: If any of the arguments is not of the expected type.

Properties

input_fn

max_steps

hooks