Spec-Zone.ru › TensorFlow

tf.train.experimental.PythonState

Миксин для включения состояния Python в объектную контрольную точку.

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

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

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

tf.compat.v1.train.experimental.PythonState

Это абстрактный класс, позволяющий расширить механизм создания объектных контрольных точек TensorFlow (см. tf.train.Checkpoint). Например, обёртка для массивов NumPy:

import io
import numpy

class NumpyWrapper(tf.train.experimental.PythonState):

  def __init__(self, array):
    self.array = array

  def serialize(self):
    string_file = io.BytesIO()
    try:
      numpy.save(string_file, self.array, allow_pickle=False)
      serialized = string_file.getvalue()
    finally:
      string_file.close()
    return serialized

  def deserialize(self, string_value):
    string_file = io.BytesIO(string_value)
    try:
      self.array = numpy.load(string_file, allow_pickle=False)
    finally:
      string_file.close()

Экземпляры NumpyWrapper являются объектами, состояние которых сохраняется в контрольных точках и восстанавливается из них вместе с состоянием TensorFlow, например переменными.

root = tf.train.Checkpoint(numpy=NumpyWrapper(numpy.array([1.])))
save_path = root.save(prefix)
root.numpy.array *= 2.
assert [2.] == root.numpy.array
root.restore(save_path)
assert [1.] == root.numpy.array

Методы

deserialize

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

@abc.abstractmethod
deserialize(
    string_value
)

Обратный вызов для десериализации объекта.

serialize

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

@abc.abstractmethod
serialize()

Обратный вызов для сериализации объекта. Возвращает строку.

© 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/train/experimental/PythonState

Spec-Zone.ru

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