Batch

Turma final pública Lote

Agrupa todos os tensores de entrada de forma não determinística.

Quando muitas instâncias deste Op estão sendo executadas simultaneamente com o mesmo container/shared_name no mesmo dispositivo, algumas produzirão Tensores em forma de zero e outras produzirão Tensores de tamanho até max_batch_size.

Todos os tensores em in_tensors são agrupados em lote (assim, por exemplo, rótulos e recursos devem ser agrupados em uma única instância desta operação.

Cada invocação de lote emite um escalar `id` que será usado para identificar esta invocação particular ao fazer unbatch ou seu gradiente.

Cada op que emite um lote não vazio também emitirá um tensor batch_index não vazio, que é uma matriz [K, 3] onde cada linha contém o id da invocação, o início e o comprimento dos elementos de cada conjunto de tensores presentes em batched_tensors.

Os tensores em lote são concatenados ao longo da primeira dimensão e todos os tensores em in_tensors devem ter a primeira dimensão do mesmo tamanho.

in_tensors: Os tensores a serem agrupados. num_batch_threads: Número de threads de agendamento para processamento de lotes de trabalho. Determina o número de lotes processados ​​em paralelo. max_batch_size: Os tamanhos dos lotes nunca serão maiores que isso. batch_timeout_micros: número máximo de microssegundos para aguardar antes de emitir um lote incompleto. allowed_batch_sizes: lista opcional de tamanhos de lote permitidos. Se deixado vazio, não faz nada. Caso contrário, fornece uma lista de tamanhos de lote, fazendo com que o operador preencha lotes de até um desses tamanhos. As entradas devem aumentar monotonicamente e a entrada final deve ser igual a max_batch_size. grad_timeout_micros: O tempo limite a ser usado para o gradiente. Consulte Destravar. batched_tensors: tensores vazios ou um lote de tensores concatenados. batch_index: Se out_tensors não estiver vazio, tem informações para invertê-lo. container: Controla o escopo de compartilhamento deste lote. id: sempre contém um escalar com um ID exclusivo para essa invocação do Lote. shared_name: instâncias de lote em execução simultânea no mesmo dispositivo com o mesmo contêiner e shared_name agruparão seus elementos em lote. Se deixado em branco, o nome da operação será usado como o nome compartilhado. T: os tipos de tensores a serem agrupados.

Classes aninhadas

aula Lote.Opções Atributos opcionais para Batch

Métodos públicos

Lote estático.Opções
allowedBatchSizes (List<Long> allowedBatchSizes)
Saída <Long>
Lista< Saída <?>>
Lote estático.Opções
batchingQueue (String batchingQueue)
Lote estático.Opções
recipiente (contêiner de string)
Lote estático
create ( Escopo do escopo, Iterable< Operando <?>> inTensors, Long numBatchThreads, Long maxBatchSize, Long batchTimeoutMicros, Long gradTimeoutMicros, Options... options)
Método de fábrica para criar uma classe que envolve uma nova operação em lote.
Saída <Long>
Lote estático.Opções
maxEnqueuedBatches (Longos maxEnqueuedBatches)
Lote estático.Opções
sharedName (String sharedName)

Métodos Herdados

Métodos públicos

public static Batch.Options allowedBatchSizes (List<Long> allowedBatchSizes)

Public Output <Long> batchIndex ()

public List< Output <?>> batchedTensors ()

public static Batch.Options batchingQueue (String batchingQueue)

Contêiner estático público Batch.Options ( contêiner String)

public static Batch create ( Escopo do escopo, Iterable< Operando <?>> inTensors, Long numBatchThreads, Long maxBatchSize, Long batchTimeoutMicros, Long gradTimeoutMicros, Options... options)

Método de fábrica para criar uma classe que envolve uma nova operação em lote.

Parâmetros
alcance escopo atual
opções carrega valores de atributos opcionais
Devoluções
  • uma nova instância do Lote

Public Output <Long> id ()

public static Batch.Options maxEnqueuedBatches (Long maxEnqueuedBatches)

public static Batch.Options sharedName (String sharedName)