将张量转换为序列化的 TensorProto 原型。
用法
tf.io.serialize_tensor(
tensor, name=None
)
此操作将tf.Tensor
中的数据转换为tf.string
类型的tf.Tensor
,其中包含二进制字符串格式的数据。此操作可以转换标量数据和线性数组,但在将多维数组转换为二进制存储格式(例如 TFRecord
或 tf.train.Example
)接受的格式时最有用。
也可以看看:
tf.io.parse_tensor
:tf.io.serialize_tensor
的逆运算,将包含序列化张量的标量字符串转换为指定类型的张量。tf.ensure_shape
:parse_tensor
无法静态确定解析张量的形状。在tf.function
下运行时使用tf.ensure_shape
设置静态形状.SerializeToString
,将 proto 序列化为 binary-string
序列化标量数据的示例:
t = tf.constant(1)
tf.io.serialize_tensor(t)
<tf.Tensor:shape=(), dtype=string, numpy=b'\x08...\x00'>
将非标量数据存储到 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)>
使用 tf.io.serialize_tensor
序列化数据。
serialized_nonscalar = tf.io.serialize_tensor(nonscalar)
serialized_nonscalar
<tf.Tensor:shape=(), dtype=string, numpy=b'\x08...\x00'>
将数据存储在 tf.train.Feature
中。
feature_of_bytes = tf.train.Feature(
bytes_list=tf.train.BytesList(value=[serialized_nonscalar.numpy()]))
feature_of_bytes
bytes_list {
value:"\010...\000"
}
将 tf.train.Feature
消息放入 tf.train.Example
。
features_for_example = {
'feature0':feature_of_bytes
}
example_proto = tf.train.Example(
features=tf.train.Features(feature=features_for_example))
example_proto
features {
feature {
key:"feature0"
value {
bytes_list {
value:"\010...\000"
}
}
}
}
相关用法
- Python tf.io.gfile.GFile.close用法及代码示例
- Python tf.io.gfile.join用法及代码示例
- Python tf.io.parse_example用法及代码示例
- Python tf.io.gfile.exists用法及代码示例
- Python tf.io.gfile.GFile用法及代码示例
- Python tf.io.SparseFeature用法及代码示例
- Python tf.io.gfile.copy用法及代码示例
- Python tf.io.gfile.glob用法及代码示例
- Python tf.io.decode_json_example用法及代码示例
- Python tf.io.TFRecordWriter用法及代码示例
- Python tf.io.decode_gif用法及代码示例
- Python tf.io.decode_raw用法及代码示例
- Python tf.io.RaggedFeature用法及代码示例
- Python tf.io.read_file用法及代码示例
- Python tf.io.deserialize_many_sparse用法及代码示例
- Python tf.io.write_graph用法及代码示例
- Python tf.io.TFRecordOptions.get_compression_type_string用法及代码示例
- Python tf.io.decode_proto用法及代码示例
- Python tf.image.random_brightness用法及代码示例
- Python tf.image.pad_to_bounding_box用法及代码示例
注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.io.serialize_tensor。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。