Raggruppa tutti i tensori di input in modo non deterministico.
Quando molte istanze di questa operazione vengono eseguite contemporaneamente con lo stesso contenitore/shared_name nello stesso dispositivo, alcuni produrranno tensori a forma di zero e altri produrranno tensori di dimensione fino a max_batch_size.
Tutti i tensori in in_tensors vengono raggruppati insieme (quindi, ad esempio, le etichette e le funzionalità dovrebbero essere raggruppate con una singola istanza di questa operazione.
Ogni invocazione di batch emette uno scalare `id` che verrà utilizzato per identificare questa particolare invocazione quando si esegue unbatch o il suo gradiente.
Ogni operazione che emette un batch non vuoto emetterà anche un tensore batch_index non vuoto, che è una matrice [K, 3] in cui ogni riga contiene l'id dell'invocazione, l'inizio e la lunghezza degli elementi di ciascun insieme di tensori presenti in batched_tensors.
I tensori batch sono concatenati lungo la prima dimensione e tutti i tensori in in_tensors devono avere la prima dimensione della stessa dimensione.
in_tensors: i tensori da raggruppare. num_batch_threads: numero di thread di pianificazione per l'elaborazione di batch di lavoro. Determina il numero di batch elaborati in parallelo. max_batch_size: le dimensioni dei batch non saranno mai più grandi di queste. batch_timeout_micros: numero massimo di microsecondi da attendere prima di emettere un batch incompleto. consentite_batch_sizes: elenco facoltativo delle dimensioni batch consentite. Se lasciato vuoto, non fa nulla. Altrimenti, fornisce un elenco di dimensioni batch, facendo sì che l'operazione riempia i batch fino a una di quelle dimensioni. Le voci devono aumentare in modo monotono e la voce finale deve essere uguale a max_batch_size. grad_timeout_micros: il timeout da utilizzare per il gradiente. Vedi Unbatch. batched_tensors: tensori vuoti o un batch di tensori concatenati. batch_index: se out_tensors non è vuoto, contiene informazioni per invertirlo. contenitore: controlla l'ambito di condivisione di questo batch. id: contiene sempre uno scalare con un ID univoco per questa invocazione di Batch. shared_name: l'esecuzione simultanea di istanze di batch nello stesso dispositivo con lo stesso contenitore e shared_name raggruppa insieme i relativi elementi. Se lasciato vuoto, il nome dell'operazione verrà utilizzato come nome condiviso. T: le tipologie di tensori da dosare.
Classi nidificate
classe | Opzioni.batch | Attributi facoltativi per Batch |
Metodi pubblici
Batch.Options statico | consentitiBatchSizes (Elenco<lungo> consentitiBatchSizes) |
Uscita <Lungo> | batchIndice () |
Elenco< Uscita <?>> | |
Batch.Options statico | batchingQueue (Stringa batchQueue) |
Batch.Options statico | contenitore (contenitore di stringhe) |
Lotto statico | create ( Scope scope, Iterable< Operand <?>> inTensors, Long numBatchThreads, Long maxBatchSize, Long batchTimeoutMicros, Long gradTimeoutMicros, Options... options) Metodo factory per creare una classe che racchiude una nuova operazione Batch. |
Uscita <Lungo> | id () |
Batch.Options statico | maxEnqueuedBatches (lungo maxEnqueuedBatches) |
Batch.Options statico | nomecondiviso (Stringanomecondiviso) |
Metodi ereditati
Metodi pubblici
Creazione batch statica pubblica ( ambito Scope, Iterable< Operand <?>> inTensors, Long numBatchThreads, Long maxBatchSize, Long batchTimeoutMicros, Long gradTimeoutMicros, Options... options)
Metodo factory per creare una classe che racchiude una nuova operazione Batch.
Parametri
scopo | ambito attuale |
---|---|
opzioni | trasporta valori di attributi opzionali |
ritorna
- una nuova istanza di Batch