Spec-Zone.ru › TensorFlow 2.9

tf.io.serialize_tensor

Просмотреть исходный код на GitHub

Преобразует тензор в сериализованный протокол TensorProto.

Просмотр псевдонимов

Псевдонимы для миграции

См. Руководство по миграции для получения дополнительных сведений.

tf.compat.v1.io.serialize_tensor, tf.compat.v1.serialize_tensor

tf.io.serialize_tensor(
    tensor, name=None
)

Эта операция преобразует данные в tf.Tensor в tf.Tensor типа tf.string, содержащие данные в двоичном строковом формате. Эта операция может преобразовывать скалярные данные и линейные массивы, но наиболее полезна при преобразовании многомерных массивов в формат, принимаемый двоичными форматами хранения, такими как TFRecord или tf.train.Example.

См. также:

  • tf.io.parse_tensor: обратная операция tf.io.serialize_tensor, преобразующая скалярную строку, содержащую сериализованный тензор, в тензор заданного типа.
  • tf.ensure_shape: parse_tensor не может статически определить форму обработанного тензора. Используйте tf.ensure_shape для установки статической формы при выполнении в tf.function
  • .SerializeToString, сериализует протокол в двоично-строковую форму

Пример сериализации скалярных данных:

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"
      }
    }
  }
}
Аргументы
tensor tf.Tensor.
name строка. Необязательное имя для операции.
Возвращаемое значение
Тензор типа string.

© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.9/api_docs/python/tf/io/serialize_tensor

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API