Spec-Zone.ru › TensorFlow 2.3

tf.io.TFRecordWriter

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

Класс для записи записей в файл TFRecords.

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

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

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

tf.compat.v1.io.TFRecordWriter, tf.compat.v1.python_io.TFRecordWriter

tf.io.TFRecordWriter(
    path, options=None
)

Учебник по TFRecords

TFRecords — это двоичный формат, оптимизированный для высокой пропускной способности извлечения данных, обычно в сочетании с tf.data. TFRecordWriter используется для записи сериализованных примеров в файл для последующего использования. Ключевые шаги:

Заблаговременно:

  • Преобразуйте данные в сериализованный формат
  • Запишите сериализованные данные в один или несколько файлов

    Во время обучения или оценки:

  • Считайте сериализованные примеры в память

  • Разбор (десериализация) примеров

Ниже приведён минимальный пример:

import tempfile
example_path = os.path.join(tempfile.gettempdir(), "example.tfrecords")
np.random.seed(0)
# Write the records to a file.
with tf.io.TFRecordWriter(example_path) as file_writer:
  for _ in range(4):
    x, y = np.random.random(), np.random.random()

    record_bytes = tf.train.Example(features=tf.train.Features(feature={
        "x": tf.train.Feature(float_list=tf.train.FloatList(value=[x])),
        "y": tf.train.Feature(float_list=tf.train.FloatList(value=[y])),
    })).SerializeToString()
    file_writer.write(record_bytes)
# Read the data back out.
def decode_fn(record_bytes):
  return tf.io.parse_single_example(
      # Data
      record_bytes,

      # Schema
      {"x": tf.io.FixedLenFeature([], dtype=tf.float32),
       "y": tf.io.FixedLenFeature([], dtype=tf.float32)}
  )
for batch in tf.data.TFRecordDataset([example_path]).map(decode_fn):
  print("x = {x:.4f},  y = {y:.4f}".format(**batch))
x = 0.5488,  y = 0.7152
x = 0.6028,  y = 0.5449
x = 0.4237,  y = 0.6459
x = 0.4376,  y = 0.8918

Этот класс реализует __enter__ и __exit__, и может использоваться в with блоках как обычный файл. (См. пример использования выше.)

Аргументы
path Путь к файлу TFRecords.
options (необязательно) Строка, определяющая тип сжатия, TFRecordCompressionType, или объект TFRecordOptions.
Возможные исключения
IOError Если файл path не может быть открыт для записи.
ValueError Если действительный тип сжатия не может быть определён из options.

Методы

close

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

close()

Закрыть файл.

flush

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

flush()

Очистить файл.

write

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

write(
    record
)

Записать строковую запись в файл.

Аргументы
record str

__enter__

__enter__()

enter(self: object) -> object

__exit__

__exit__()

exit(self: tensorflow.python._pywrap_record_io.RecordWriter, *args) -> None

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

Spec-Zone.ru

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