View source on GitHub
|
Transforms a Tensor into a serialized TensorProto proto.
tf.io.serialize_tensor(
tensor, name=None
)
This operation transforms data in a tf.Tensor into a tf.Tensor of type
tf.string containing the data in a binary string in little-endian format.
This operation can transform scalar data and linear arrays, but it is most
useful in converting multidimensional arrays into a format accepted by binary
storage formats such as a TFRecord or tf.train.Example.
tf.io.parse_tensor: inverse operation of tf.io.serialize_tensor that
transforms a scalar string containing a serialized Tensor in little-endian
format into a Tensor of a specified type.tf.ensure_shape: parse_tensor cannot statically determine the shape of
the parsed tensor. Use tf.ensure_shape to set the static shape when running
under a tf.function.SerializeToString, serializes a proto to a binary-stringExample of serializing scalar data:
t = tf.constant(1)tf.io.serialize_tensor(t)<tf.Tensor: shape=(), dtype=string, numpy=b'\x08...\x00'>
Example of storing non-scalar data into a tf.train.Example:
t1 = [[1, 2]]t2 = [[7, 8]]nonscalar = tf.concat([t1, t2], 0)nonscalar<tf.Tensor: shape=(2, 2), dtype=int32, numpy=array([[1, 2],[7, 8]], dtype=int32)>
Serialize the data using tf.io.serialize_tensor.
serialized_nonscalar = tf.io.serialize_tensor(nonscalar)serialized_nonscalar<tf.Tensor: shape=(), dtype=string, numpy=b'\x08...\x00'>
Store the data in a tf.train.Feature.
feature_of_bytes = tf.train.Feature(bytes_list=tf.train.BytesList(value=[serialized_nonscalar.numpy()]))feature_of_bytesbytes_list {value: "\010...\000"}
Put the tf.train.Feature message into a tf.train.Example.
features_for_example = {'feature0': feature_of_bytes}example_proto = tf.train.Example(features=tf.train.Features(feature=features_for_example))example_protofeatures {feature {key: "feature0"value {bytes_list {value: "\010...\000"}}}}
tensor
tf.Tensor.
name
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates. Some content is licensed under the numpy license.
Last updated 2024-04-26 UTC.