Odwraca plasterki o zmiennej długości.
Ta opcja najpierw dzieli „input” wzdłuż wymiaru „batch_dim”, a dla każdego plasterka „i” odwraca pierwsze elementy „seq_lengths[i]” wzdłuż wymiaru „seq_dim”.
Elementy `seq_lengths` muszą być zgodne z `seq_lengths[i] <= input.dims[seq_dim]`, a `seq_lengths` muszą być wektorem długości `input.dims[batch_dim]`.
Wycinek wyjściowy „i” wzdłuż wymiaru „batch_dim” jest następnie podawany przez wycinek wejściowy „i”, przy czym pierwsze wycinki „seq_lengths[i]” wzdłuż wymiaru „seq_dim” są odwrócone.
Na przykład:
# 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, :, ...]
Klasy zagnieżdżone
klasa | Opcje odwrotnej sekwencji | Opcjonalne atrybuty dla ReverseSequence |
Metody publiczne
Wyjście <T> | jako wyjście () Zwraca symboliczny uchwyt tensora. |
statyczne ReverseSequence.Options | BatchDim (Długie BatchDim) |
statyczny <T, U rozszerza numer> ReverseSequence <T> | |
Wyjście <T> | wyjście () Częściowo odwrócone wejście. |
Metody dziedziczone
Metody publiczne
publiczne wyjście <T> asOutput ()
Zwraca symboliczny uchwyt tensora.
Dane wejściowe operacji TensorFlow są wynikami innej operacji TensorFlow. Ta metoda służy do uzyskania symbolicznego uchwytu reprezentującego obliczenia danych wejściowych.
public static ReverseSequence.Options BatchDim (Long BatchDim)
Parametry
partiaWym | Wymiar, wzdłuż którego wykonywane jest odwrócenie. |
---|
public static ReverseSequence <T> create (zakres zakresu , argument wejściowy <T>, argument <U> seqLengths, długi seqDim, opcje... opcje)
Metoda fabryczna służąca do tworzenia klasy opakowującej nową operację ReverseSequence.
Parametry
zakres | aktualny zakres |
---|---|
wejście | Wejście do odwrócenia. |
kolejneDługości | 1-D o długości `input.dims(batch_dim)` i `max(seq_lengths) <= input.dims(seq_dim)` |
seqDim | Wymiar częściowo odwrócony. |
opcje | przenosi opcjonalne wartości atrybutów |
Powroty
- nowa instancja ReverseSequence