Inverte le fette di lunghezza variabile.
Questa operazione suddivide innanzitutto "input" lungo la dimensione "batch_dim" e, per ogni sezione "i", inverte i primi elementi "seq_lengths[i]" lungo la dimensione "seq_dim".
Gli elementi di `seq_lengths` devono obbedire a `seq_lengths[i] <= input.dims[seq_dim]` e `seq_lengths` deve essere un vettore di lunghezza `input.dims[batch_dim]`.
La sezione di output "i" lungo la dimensione "batch_dim" viene quindi fornita dalla sezione di input "i", con le prime sezioni "seq_lengths[i]" lungo la dimensione "seq_dim" invertite.
Per esempio:
# Given this:
batch_dim = 0
seq_dim = 1
input.dims = (4, 8, ...)
seq_lengths = [7, 2, 3, 5]
# then slices of input are reversed on seq_dim, but only up to seq_lengths:
output[0, 0:7, :, ...] = input[0, 7:0:-1, :, ...]
output[1, 0:2, :, ...] = input[1, 2:0:-1, :, ...]
output[2, 0:3, :, ...] = input[2, 3:0:-1, :, ...]
output[3, 0:5, :, ...] = input[3, 5:0:-1, :, ...]
# while entries past seq_lens are copied through:
output[0, 7:, :, ...] = input[0, 7:, :, ...]
output[1, 2:, :, ...] = input[1, 2:, :, ...]
output[2, 3:, :, ...] = input[2, 3:, :, ...]
output[3, 2:, :, ...] = input[3, 2:, :, ...]
# Given this:
batch_dim = 2
seq_dim = 0
input.dims = (8, ?, 4, ...)
seq_lengths = [7, 2, 3, 5]
# then slices of input are reversed on seq_dim, but only up to seq_lengths:
output[0:7, :, 0, :, ...] = input[7:0:-1, :, 0, :, ...]
output[0:2, :, 1, :, ...] = input[2:0:-1, :, 1, :, ...]
output[0:3, :, 2, :, ...] = input[3:0:-1, :, 2, :, ...]
output[0:5, :, 3, :, ...] = input[5:0:-1, :, 3, :, ...]
# while entries past seq_lens are copied through:
output[7:, :, 0, :, ...] = input[7:, :, 0, :, ...]
output[2:, :, 1, :, ...] = input[2:, :, 1, :, ...]
output[3:, :, 2, :, ...] = input[3:, :, 2, :, ...]
output[2:, :, 3, :, ...] = input[2:, :, 3, :, ...]
Classi nidificate
classe | ReverseSequence.Options | Attributi facoltativi per ReverseSequence |
Metodi pubblici
Uscita <T> | comeuscita () Restituisce la maniglia simbolica di un tensore. |
ReverseSequence.Options statiche | batchDim (batch lungo) |
statico <T, U estende Numero> ReverseSequence <T> | create ( ambito ambito , input operando <T>, operando <U> seqLengths, Long seqDim, Opzioni... opzioni) Metodo factory per creare una classe che racchiude una nuova operazione ReverseSequence. |
Uscita <T> | produzione () L'ingresso parzialmente invertito. |
Metodi ereditati
Metodi pubblici
Uscita pubblica <T> asOutput ()
Restituisce la maniglia simbolica di un tensore.
Gli input per le operazioni TensorFlow sono output di un'altra operazione TensorFlow. Questo metodo viene utilizzato per ottenere un handle simbolico che rappresenta il calcolo dell'input.
public static ReverseSequence.Options batchDim (batchDim lungo)
Parametri
lottoDim | La dimensione lungo la quale viene eseguita l'inversione. |
---|
public static ReverseSequence <T> create ( scope scope, operando <T> input, operando <U> seqLengths, Long seqDim, Opzioni... opzioni)
Metodo factory per creare una classe che racchiude una nuova operazione ReverseSequence.
Parametri
ambito | ambito attuale |
---|---|
ingresso | L'ingresso da invertire. |
seqLunghezze | 1-D con lunghezza `input.dims(batch_dim)` e `max(seq_lengths) <= input.dims(seq_dim)` |
seqDim | La dimensione parzialmente invertita. |
opzioni | trasporta valori di attributi opzionali |
Ritorni
- una nuova istanza di ReverseSequence
Inverte le fette di lunghezza variabile.
Questa operazione suddivide innanzitutto "input" lungo la dimensione "batch_dim" e, per ogni sezione "i", inverte i primi elementi "seq_lengths[i]" lungo la dimensione "seq_dim".
Gli elementi di `seq_lengths` devono obbedire a `seq_lengths[i] <= input.dims[seq_dim]` e `seq_lengths` deve essere un vettore di lunghezza `input.dims[batch_dim]`.
La sezione di output "i" lungo la dimensione "batch_dim" viene quindi fornita dalla sezione di input "i", con le prime sezioni "seq_lengths[i]" lungo la dimensione "seq_dim" invertite.
Per esempio:
# Given this:
batch_dim = 0
seq_dim = 1
input.dims = (4, 8, ...)
seq_lengths = [7, 2, 3, 5]
# then slices of input are reversed on seq_dim, but only up to seq_lengths:
output[0, 0:7, :, ...] = input[0, 7:0:-1, :, ...]
output[1, 0:2, :, ...] = input[1, 2:0:-1, :, ...]
output[2, 0:3, :, ...] = input[2, 3:0:-1, :, ...]
output[3, 0:5, :, ...] = input[3, 5:0:-1, :, ...]
# while entries past seq_lens are copied through:
output[0, 7:, :, ...] = input[0, 7:, :, ...]
output[1, 2:, :, ...] = input[1, 2:, :, ...]
output[2, 3:, :, ...] = input[2, 3:, :, ...]
output[3, 2:, :, ...] = input[3, 2:, :, ...]
# Given this:
batch_dim = 2
seq_dim = 0
input.dims = (8, ?, 4, ...)
seq_lengths = [7, 2, 3, 5]
# then slices of input are reversed on seq_dim, but only up to seq_lengths:
output[0:7, :, 0, :, ...] = input[7:0:-1, :, 0, :, ...]
output[0:2, :, 1, :, ...] = input[2:0:-1, :, 1, :, ...]
output[0:3, :, 2, :, ...] = input[3:0:-1, :, 2, :, ...]
output[0:5, :, 3, :, ...] = input[5:0:-1, :, 3, :, ...]
# while entries past seq_lens are copied through:
output[7:, :, 0, :, ...] = input[7:, :, 0, :, ...]
output[2:, :, 1, :, ...] = input[2:, :, 1, :, ...]
output[3:, :, 2, :, ...] = input[3:, :, 2, :, ...]
output[2:, :, 3, :, ...] = input[2:, :, 3, :, ...]
Classi nidificate
classe | ReverseSequence.Options | Attributi facoltativi per ReverseSequence |
Metodi pubblici
Uscita <T> | comeuscita () Restituisce la maniglia simbolica di un tensore. |
ReverseSequence.Options statiche | batchDim (batch lungo) |
statico <T, U estende Numero> ReverseSequence <T> | create ( ambito ambito , input operando <T>, operando <U> seqLengths, Long seqDim, Opzioni... opzioni) Metodo factory per creare una classe che racchiude una nuova operazione ReverseSequence. |
Uscita <T> | produzione () L'ingresso parzialmente invertito. |
Metodi ereditati
Metodi pubblici
Uscita pubblica <T> asOutput ()
Restituisce la maniglia simbolica di un tensore.
Gli input per le operazioni TensorFlow sono output di un'altra operazione TensorFlow. Questo metodo viene utilizzato per ottenere un handle simbolico che rappresenta il calcolo dell'input.
public static ReverseSequence.Options batchDim (batchDim lungo)
Parametri
lottoDim | La dimensione lungo la quale viene eseguita l'inversione. |
---|
public static ReverseSequence <T> create ( scope scope, operando <T> input, operando <U> seqLengths, Long seqDim, Opzioni... opzioni)
Metodo factory per creare una classe che racchiude una nuova operazione ReverseSequence.
Parametri
ambito | ambito attuale |
---|---|
ingresso | L'ingresso da invertire. |
seqLunghezze | 1-D con lunghezza `input.dims(batch_dim)` e `max(seq_lengths) <= input.dims(seq_dim)` |
seqDim | La dimensione parzialmente invertita. |
opzioni | trasporta valori di attributi opzionali |
Ritorni
- una nuova istanza di ReverseSequence