ReverseSequence

ReverseSequence kelas akhir publik

Membalikkan irisan dengan panjang variabel.

Operasi ini pertama-tama mengiris `input` sepanjang dimensi `batch_dim`, dan untuk setiap irisan `i`, membalikkan elemen `seq_lengths[i]` pertama sepanjang dimensi `seq_dim`.

Elemen `seq_lengths` harus mematuhi `seq_lengths[i] <= input.dims[seq_dim]`, dan `seq_lengths` harus berupa vektor dengan panjang `input.dims[batch_dim]`.

Irisan keluaran `i` sepanjang dimensi `batch_dim` kemudian diberikan oleh irisan masukan `i`, dengan irisan `seq_lengths[i]` pertama sepanjang dimensi `seq_dim` dibalik.

Misalnya:

# 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:, :, ...]
 
Sebaliknya, jika:
# 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, :, ...]
 

Kelas Bersarang

kelas Urutan Terbalik.Opsi Atribut opsional untuk ReverseSequence

Metode Publik

Keluaran <T>
sebagai Keluaran ()
Mengembalikan pegangan simbolik tensor.
ReverseSequence.Options statis
batchDim (Batch panjangDim)
statis <T, U memperluas Angka> ReverseSequence <T>
buat ( Lingkup lingkup , input Operand <T>, Operand <U> seqLengths, Long seqDim, Opsi... opsi)
Metode pabrik untuk membuat kelas yang membungkus operasi ReverseSequence baru.
Keluaran <T>
keluaran ()
Masukan yang dibalik sebagian.

Metode Warisan

Metode Publik

Keluaran publik <T> sebagai Keluaran ()

Mengembalikan pegangan simbolik tensor.

Masukan ke operasi TensorFlow adalah keluaran dari operasi TensorFlow lainnya. Metode ini digunakan untuk mendapatkan pegangan simbolis yang mewakili perhitungan input.

ReverseSequence.Options statis publik batchDim (BatchDim panjang)

Parameter
kumpulanRedup Dimensi sepanjang pembalikan dilakukan.

public static ReverseSequence <T> buat ( Lingkup lingkup , input Operand <T>, Operand <U> seqLengths, Long seqDim, Opsi... opsi)

Metode pabrik untuk membuat kelas yang membungkus operasi ReverseSequence baru.

Parameter
cakupan ruang lingkup saat ini
masukan Masukan untuk membalikkan.
seqLengths 1-D dengan panjang `input.dims(batch_dim)` dan `max(seq_lengths) <= input.dims(seq_dim)`
seqDim Dimensi yang sebagian terbalik.
pilihan membawa nilai atribut opsional
Kembali
  • contoh baru dari ReverseSequence

Keluaran publik <T> keluaran ()

Masukan yang dibalik sebagian. Bentuknya sama dengan `input`.