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