Lote

Lote de clase final pública

Lote todos los tensores de entrada de forma no determinista.

Cuando muchas instancias de esta operación se ejecutan simultáneamente con el mismo contenedor / nombre_compartido en el mismo dispositivo, algunas generarán tensores de forma cero y otras generarán tensores de tamaño hasta max_batch_size.

Todos los tensores en in_tensors se agrupan juntos (por ejemplo, las etiquetas y las características deben agruparse con una sola instancia de esta operación.

Cada invocación de lote emite un escalar `id` que se utilizará para identificar esta invocación en particular al realizar un lote o su gradiente.

Cada operación que emite un lote no vacío también emitirá un tensor batch_index no vacío, que es una matriz [K, 3] donde cada fila contiene la identificación de la invocación, el inicio y la longitud de los elementos de cada conjunto de tensores presentes en batched_tensors.

Los tensores en lote se concatenan a lo largo de la primera dimensión y todos los tensores en in_tensors deben tener la primera dimensión del mismo tamaño.

in_tensors: Los tensores que se van a agrupar. num_batch_threads: número de subprocesos de programación para procesar lotes de trabajo. Determina el número de lotes procesados ​​en paralelo. max_batch_size: Los tamaños de lote nunca serán más grandes que esto. batch_timeout_micros: Número máximo de microsegundos a esperar antes de generar un lote incompleto. allowed_batch_sizes: lista opcional de tamaños de lote permitidos. Si se deja vacío, no hace nada. De lo contrario, proporciona una lista de tamaños de lote, lo que hace que la operación rellene lotes hasta uno de esos tamaños. Las entradas deben aumentar monótonamente y la entrada final debe ser igual a max_batch_size. grad_timeout_micros: el tiempo de espera que se utilizará para el gradiente. Ver Unbatch. batched_tensors: tensores vacíos o un lote de tensores concatenados. batch_index: si out_tensors no está vacío, tiene información para invertirlo. contenedor: controla el alcance de uso compartido de este lote. id: siempre contiene un escalar con un ID único para esta invocación de Batch. nombre_compartido: las instancias de lote que se ejecutan simultáneamente en el mismo dispositivo con el mismo contenedor y nombre_compartido agruparán sus elementos. Si se deja vacío, el nombre de la operación se utilizará como nombre compartido. T: los tipos de tensores que se van a agrupar.

Clases anidadas

clase Opciones de lote Atributos opcionales para Batch

Métodos públicos

Opciones de lote estáticas
allowBatchSizes (List <Long> admitidosBatchSizes)
Salida <Long>
Lista < Salida <? >>
Opciones de lote estáticas
batchingQueue (String batchingQueue)
Opciones de lote estáticas
lote estático
create ( Scope scope, Iterable < Operand <? >> inTensors, Long numBatchThreads, Long maxBatchSize, Long batchTimeoutMicros, Long gradTimeoutMicros, Options ... options)
Método de fábrica para crear una clase que envuelva una nueva operación por lotes.
Salida <Long>
id ()
Opciones de lote estáticas
maxEnqueuedBatches (Long maxEnqueuedBatches)
Opciones de lote estáticas
sharedName (String sharedName)

Métodos heredados

Métodos públicos

Batch.Options estáticas públicas permitidasBatchSizes (List <Long> allowedBatchSizes)

Salida pública <Long> batchIndex ()

Lista pública < Salida <? >> batchedTensors ()

Batch.Options estática pública batchingQueue (String batchingQueue)

contenedor público estático de Batch.Options (contenedor de cadenas)

creación de lotes estáticos públicos ( alcance de alcance, Iterable < Operand <? >> inTensors, Long numBatchThreads, Long maxBatchSize, Long batchTimeoutMicros, Long gradTimeoutMicros, Opciones ... opciones)

Método de fábrica para crear una clase que envuelva una nueva operación por lotes.

Parámetros
alcance alcance actual
opciones lleva valores de atributos opcionales
Devoluciones
  • una nueva instancia de Batch

salida pública <Long> id ()

public static Batch.Options maxEnqueuedBatches (Long maxEnqueuedBatches)

Batch.Options estáticas públicas sharedName (String sharedName)