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. Если этот параметр задан, методы извлечения из очереди возвращают словарь, в котором имена используются в качестве ключей.
shared_name (Необязательно.) Если указано непустое значение, эта очередь будет доступна в нескольких сеансах под заданным именем.
name Необязательное имя операции с очередью.
Вызывает исключения
ValueError Если shapes не является списком форм, длины dtypes и shapes не совпадают либо задан names и длины dtypes и names не совпадают.
Атрибуты
dtypes Список типов данных каждого компонента элемента очереди.
name Имя базовой очереди.
names Список имен каждого компонента элемента очереди.
queue_ref Ссылка на базовую очередь.
shapes Список форм каждого компонента элемента очереди.

Методы

close

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

close(
    cancel_pending_enqueues=False, name=None
)

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

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

Если 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) очередь закрыта операцией close с параметром cancel_pending_enqueues=True или (ii) сеанс tf.Session.close, будет вызвано исключение tf.errors.CancelledError.

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

enqueue_many

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

enqueue_many(
    vals, name=None
)

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

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

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

Во время выполнения эта операция может вызвать ошибку, если очередь tf.QueueBase.close до начала или в ходе ее выполнения. Если очередь закрыта до запуска этой операции, будет вызвано исключение tf.errors.CancelledError. Если эта операция заблокирована и (i) очередь закрыта операцией close с параметром 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