Spec-Zone.ru › TensorFlow 1.15

tf.queue.PaddingFIFOQueue

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

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

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

Псевдонимы

Основные псевдонимы

`tf.PaddingFIFOQueue`, `tf.io.PaddingFIFOQueue`

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

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

tf.compat.v1.PaddingFIFOQueue, tf.compat.v1.io.PaddingFIFOQueue, tf.compat.v1.queue.PaddingFIFOQueue, `tf.compat.v2.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
)

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

Эта операция делит каждый компонентный массив по первому измерению, чтобы создать несколько элементов очереди. Все массивы в 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.
Возвращаемое значение
Объект очереди.
Исключения
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/r1.15/api_docs/python/tf/queue/PaddingFIFOQueue

Spec-Zone.ru

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