Spec-Zone.ru › TensorFlow 2.3

tf.queue.PaddingFIFOQueue

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

Очередь 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 Если 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, которые в противном случае блокировались бы, ожидая больше элементов (если 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) очередь закрыта операцией 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) очередь закрыта операцией закрытия с 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 Имя операции (необязательно).
Возвращаемое значение
Скалярный тензор, содержащий количество элементов в этой очереди.

© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.3/api_docs/python/tf/queue/PaddingFIFOQueue

Spec-Zone.ru

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