Spec-Zone.ru › TensorFlow

tf.io.TFRecordWriter

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

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

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

Подробнее см. в руководстве по миграции.

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

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

Используется в блокнотах

Используется в руководствах
  • TFRecord и tf.train.Example
  • Нейронное обучение структурированных данных на основе графов в TFX
  • Регуляризация графов для классификации тональности с помощью синтезированных графов
  • Сегментация экземпляров с помощью Model Garden
  • Семантическая сегментация с помощью Model Garden

Руководство по 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.lib.io._pywrap_record_io.RecordWriter, *args) -> None

© 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/api_docs/python/tf/io/TFRecordWriter

Spec-Zone.ru

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