tf.contrib.framework.BoundedTensorSpec

Class BoundedTensorSpec

Inherits From: TensorSpec

Defined in tensorflow/python/framework/tensor_spec.py.

A TensorSpec that specifies minimum and maximum values.

Example usage:

spec = tensor_spec.BoundedTensorSpec((1, 2, 3), tf.float32, 0, (5, 5, 5))
tf_minimum = tf.convert_to_tensor(spec.minimum, dtype=spec.dtype)
tf_maximum = tf.convert_to_tensor(spec.maximum, dtype=spec.dtype)

Bounds are meant to be inclusive. This is especially important for integer types. The following spec will be satisfied by tensors with values in the set {0, 1, 2}:

spec = tensor_spec.BoundedTensorSpec((3, 5), tf.int32, 0, 2)

Properties

dtype

Returns the dtype of elements in the tensor.

is_continuous

Whether spec is continuous.

is_discrete

Whether spec is discrete.

maximum

Returns a NumPy array specifying the maximum bounds (inclusive).

minimum

Returns a NumPy array specifying the minimum bounds (inclusive).

name

Returns the name of the described tensor.

shape

Returns the TensorShape that represents the shape of the tensor.

Methods

__init__

__init__(
    shape,
    dtype,
    minimum,
    maximum,
    name=None
)

Initializes a new BoundedTensorSpec.

Args:

  • shape: Value convertible to tf.TensorShape. The shape of the tensor.
  • dtype: Value convertible to tf.DType. The type of the tensor values.
  • minimum: Number or sequence specifying the minimum element bounds (inclusive). Must be broadcastable to shape.
  • maximum: Number or sequence specifying the maximum element bounds (inclusive). Must be broadcastable to shape.
  • name: Optional string containing a semantic name for the corresponding array. Defaults to None.

Raises:

  • ValueError: If minimum or maximum are not provided or not broadcastable to shape.
  • TypeError: If the shape is not an iterable or if the dtype is an invalid numpy dtype.

__eq__

__eq__(other)

__ne__

__ne__(other)

__reduce__

__reduce__()

from_spec

@classmethod
from_spec(
    cls,
    spec
)

from_tensor

from_tensor(
    cls,
    tensor,
    name=None
)

is_bounded

@classmethod
is_bounded(cls)

is_compatible_with

is_compatible_with(spec_or_tensor)

True if the shape and dtype of spec_or_tensor are compatible.