TensorFlow 2.0 Beta is available Learn more

tfds.features.ClassLabel

Class ClassLabel

FeatureConnector for integer class labels.

Inherits From: Tensor

View source

__init__

View source

__init__(
    num_classes=None,
    names=None,
    names_file=None
)

Constructs a ClassLabel FeatureConnector.

There are 3 ways to define a ClassLabel, which correspond to the 3 arguments:

  • num_classes: create 0 to (num_classes-1) labels
  • names: a list of label strings
  • names_file: a file containing the list of labels.

Args:

  • num_classes: int, number of classes. All labels must be < num_classes.
  • names: list<str>, string names for the integer classes. The order in which the names are provided is kept.
  • names_file: str, path to a file with names for the integer classes, one per line.

Properties

dtype

Return the dtype (or dict of dtype) of this FeatureConnector.

names

num_classes

shape

Return the shape (or dict of shape) of this FeatureConnector.

Methods

decode_example

View source

decode_example(tfexample_data)

Decode the feature dict to TF compatible input.

Args:

  • tfexample_data: Data or dictionary of data, as read by the tf-example reader. It correspond to the tf.Tensor() (or dict of tf.Tensor()) extracted from the tf.train.Example, matching the info defined in get_serialized_info().

Returns:

  • tensor_data: Tensor or dictionary of tensor, output of the tf.data.Dataset object

encode_example

View source

encode_example(example_data)

get_serialized_info

View source

get_serialized_info()

Return the shape/dtype of features after encoding (for the adapter).

The FileAdapter then use those information to write data on disk.

This function indicates how this feature is encoded on file internally. The DatasetBuilder are written on disk as tf.train.Example proto.

Ex:

return {
    'image': tfds.features.TensorInfo(shape=(None,), dtype=tf.uint8),
    'height': tfds.features.TensorInfo(shape=(), dtype=tf.int32),
    'width': tfds.features.TensorInfo(shape=(), dtype=tf.int32),
}

FeatureConnector which are not containers should return the feature proto directly:

return tfds.features.TensorInfo(shape=(64, 64), tf.uint8)

If not defined, the retuned values are automatically deduced from the get_tensor_info function.

Returns:

  • features: Either a dict of feature proto object, or a feature proto object

get_tensor_info

View source

get_tensor_info()

See base class for details.

int2str

View source

int2str(int_value)

Conversion integer => class name string.

load_metadata

View source

load_metadata(
    data_dir,
    feature_name=None
)

See base class for details.

save_metadata

View source

save_metadata(
    data_dir,
    feature_name=None
)

See base class for details.

str2int

View source

str2int(str_value)

Conversion class name string => integer.