Spec-Zone.ru › TensorFlow

tf.queue.PaddingFIFOQueue

Очередь FIFO, поддерживающая пакетную обработку тензоров переменной длины с помощью заполнения.

Наследуется от: QueueBase

Псевдонимы

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

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

tf.compat.v1.PaddingFIFOQueue, tf.compat.v1.io.PaddingFIFOQueue, tf.compat.v1.queue.PaddingFIFOQueue

tf.queue.PaddingFIFOQueue(
    capacity,
    dtypes,
    shapes,
    names=None,
    shared_name=None,
    name='padding_fifo_queue'
)

Очередь PaddingFIFOQueue может содержать компоненты с динамической формой, а также поддерживает dequeue_many. См. конструктор для получения дополнительной информации.

См. tf.queue.QueueBase для описания методов этого класса.

Аргументы
capacity Целое число. Верхняя граница числа элементов, которые могут храниться в этой очереди.
dtypes Список объектов DType. Длина dtypes должна быть равна числу тензоров в каждом элементе очереди.
shapes Список объектов TensorShape, с длиной, равной длине dtypes. Любая размерность в TensorShape, содержащая значение None, является динамической и позволяет вставлять значения с переменной длиной в этой размерности.
names (Необязательно.) Список строк, определяющих имена компонентов в очереди с той же длиной, что и у dtypes, или None. Если указаны, методы dequeue возвращают словарь с именами в качестве ключей.
shared_name (Необязательно.) Если не пусто, эта очередь будет совместно использоваться под заданным именем в нескольких сессиях.
name Необязательное имя для операции очереди.
Исключения
ValueError Если формы не являются списком форм, или длины dtypes и форм не совпадают, или если имена заданы, и длины dtypes и имен не совпадают.
Атрибуты
dtypes Список типов данных для каждого компонента элемента очереди.
name Имя базовой очереди.
names Список имён для каждого компонента элемента очереди.
queue_ref Ссылка на базовую очередь.
shapes Список форм для каждого компонента элемента очереди.

Методы

close

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

close(
    cancel_pending_enqueues=False, name=None
)

Закрывает эту очередь.

Эта операция сигнализирует, что больше элементов не будут вставляться в данную очередь. Последующие операции enqueue и enqueue_many завершатся ошибкой. Последующие операции dequeue и dequeue_many будут продолжать выполняться успешно, если в очереди достаточно элементов. Впоследствии операции dequeue и dequeue_many, которые в противном случае блокировались бы, ожидая дополнительных элементов (если close не была вызвана), теперь завершатся ошибкой немедленно.

Если cancel_pending_enqueues является True, все ожидающие запросы также будут отменены.

Аргументы
cancel_pending_enqueues (Необязательно.) Логическое значение, по умолчанию равное False (описано выше).
name Имя операции (необязательно).
Возвращает
Операция закрытия очереди.

dequeue

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

dequeue(
    name=None
)

Извлекает один элемент из этой очереди.

Если очередь пуста во время выполнения этой операции, она будет заблокирована до тех пор, пока не будет элемента для извлечения.

Во время выполнения эта операция может вызвать ошибку, если очередь tf.QueueBase.close перед или во время её выполнения. Если очередь закрыта, очередь пуста и нет ожидающих операций вставки, которые могут выполнить этот запрос, будет поднято исключение tf.errors.OutOfRangeError. Если сессия tf.Session.close, будет поднято исключение tf.errors.CancelledError.

Аргументы
name Имя операции (необязательно).
Возвращает
Кортеж тензоров, извлечённых из очереди.

dequeue_many

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

dequeue_many(
    n, name=None
)

Извлекает и конкатенирует n элементов из этой очереди.

Эта операция конкатенирует тензоры компонентов элемента очереди по 0-й размерности, чтобы создать один тензор компонента. Все компоненты в извлеченном кортеже будут иметь размер n в 0-й размерности.

Если очередь закрыта и в ней осталось меньше n элементов, то генерируется исключение OutOfRange.

Во время выполнения эта операция может вызвать ошибку, если очередь tf.QueueBase.close перед или во время её выполнения. Если очередь закрыта, в ней содержится меньше n элементов, и нет ожидающих операций вставки, которые могут выполнить этот запрос, будет поднято исключение tf.errors.OutOfRangeError. Если сессия tf.Session.close, будет поднято исключение tf.errors.CancelledError.

Аргументы
n Скалярное Tensor, содержащее число элементов для извлечения.
name Имя операции (необязательно).
Возвращает
Список конкатенированных тензоров, извлеченных из очереди.

dequeue_up_to

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

dequeue_up_to(
    n, name=None
)

Извлекает и конкатенирует n элементов из этой очереди.

Примечание: Эта операция не поддерживается всеми очередями. Если очередь не поддерживает DequeueUpTo, то генерируется исключение tf.errors.UnimplementedError.

Эта операция конкатенирует тензоры компонентов элемента очереди по 0-й размерности, чтобы создать один тензор компонента. Если очередь не закрыта, все компоненты в извлеченном кортеже будут иметь размер n в 0-й размерности.

Если очередь закрыта и в ней есть более 0, но меньше n элементов, то вместо того, чтобы генерировать исключение tf.errors.OutOfRangeError как в tf.QueueBase.dequeue_many, возвращаются меньше n элементов сразу. Если очередь закрыта и в ней есть 0 элементов, то генерируется исключение tf.errors.OutOfRangeError, как и в dequeue_many. В противном случае поведение идентично dequeue_many.

Аргументы
n Скалярное Tensor, содержащее число элементов для извлечения.
name Имя операции (необязательно).
Возвращает
Кортеж конкатенированных тензоров, извлечённых из очереди.

enqueue

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

enqueue(
    vals, name=None
)

Вставляет один элемент в эту очередь.

Если очередь полна во время выполнения этой операции, она будет заблокирована до тех пор, пока элемент не будет вставлен.

Во время выполнения данная операция может вызвать ошибку, если очередь tf.QueueBase.close до или во время её выполнения. Если очередь закрыта до запуска этой операции, будет выброшено исключение tf.errors.CancelledError. Если эта операция заблокирована, и либо (i) очередь закрыта операцией закрытия с cancel_pending_enqueues=True, либо (ii) сессия tf.Session.close, будет выброшено исключение tf.errors.CancelledError.

Аргументы
vals Массив, список или кортеж массивов, или словарь, содержащий значения для помещения в очередь.
name Имя операции (необязательно).
Возвращаемые значения
Операция, которая помещает новую кортеж массивов в очередь.

enqueue_many

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

enqueue_many(
    vals, name=None
)

Помещает ноль или более элементов в эту очередь.

Эта операция разделяет каждый компонентный массив по нулевому измерению, чтобы создать несколько элементов очереди. Все массивы в vals должны иметь одинаковый размер в нулевом измерении.

Если очередь заполнена во время выполнения этой операции, она будет заблокирована до тех пор, пока все элементы не будут помещены в очередь.

Во время выполнения данная операция может вызвать ошибку, если очередь tf.QueueBase.close до или во время её выполнения. Если очередь закрыта до запуска этой операции, будет выброшено исключение tf.errors.CancelledError. Если эта операция заблокирована, и либо (i) очередь закрыта операцией закрытия с cancel_pending_enqueues=True, либо (ii) сессия tf.Session.close, будет выброшено исключение tf.errors.CancelledError.

Аргументы
vals Массив, список или кортеж массивов, или словарь, из которого берутся элементы очереди.
name Имя операции (необязательно).
Возвращаемые значения
Операция, которая помещает пакет кортежей массивов в очередь.

from_list

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

@staticmethod
from_list(
    index, queues
)

Создаёт очередь, используя ссылку на очередь из queues[index].

Аргументы
index Массив скаляров целочисленного типа, который определяет входящий элемент, который выбирается.
queues Список объектов QueueBase.
Возвращаемые значения
Объект очереди QueueBase.
Исключения
TypeError Когда queues не является списком объектов QueueBase, или когда типы данных queues не совпадают.

is_closed

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

is_closed(
    name=None
)

Возвращает true, если очередь закрыта.

Эта операция возвращает true, если очередь закрыта, и false, если очередь открыта.

Аргументы
name Имя операции (необязательно).
Возвращаемые значения
True, если очередь закрыта, и false, если очередь открыта.

size

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

size(
    name=None
)

Вычисляет количество элементов в очереди.

Аргументы
name Имя операции (необязательно).
Возвращаемые значения
Скалярный массив, содержащий количество элементов в очереди.

© 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/queue/PaddingFIFOQueue

Spec-Zone.ru

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