Değişken uzunluktaki dilimleri tersine çevirir.
Bu işlem ilk önce "girdi"yi "batch_dim" boyutu boyunca dilimler ve her "i" dilimi için, "seq_dim" boyutu boyunca ilk "seq_lengths[i]" öğelerini ters çevirir.
"seq_lengths" öğelerinin "seq_lengths[i] <= input.dims[seq_dim]"e uyması gerekir ve "seq_lengths", "input.dims[batch_dim]" uzunluğunun bir vektörü olmalıdır.
Daha sonra "batch_dim" boyutu boyunca "i" çıkış dilimi, "seq_dim" boyutu boyunca ilk "seq_lengths[i]" dilimleri ters çevrilerek giriş dilimi "i" tarafından verilir.
Örneğin:
# 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, :, ...]
İç İçe Sınıflar
sınıf | Ters Sıra.Seçenekler | ReverseSequence için isteğe bağlı özellikler |
Genel Yöntemler
Çıkış <T> | Çıkış olarak () Bir tensörün sembolik tutamacını döndürür. |
statik ReverseSequence.Options | BatchDim (Uzun BatchDim) |
statik <T, U Sayıyı genişletir> Ters Sıra <T> | oluştur ( Kapsam kapsamı, İşlenen <T> girişi, İşlenen <U> seqLengths, Uzun seqDim, Seçenekler... seçenekler) Yeni bir ReverseSequence işlemini saran bir sınıf oluşturmak için fabrika yöntemi. |
Çıkış <T> | çıktı () Kısmen ters çevrilmiş giriş. |
Kalıtsal Yöntemler
Genel Yöntemler
genel Çıkış <T> asOutput ()
Bir tensörün sembolik tutamacını döndürür.
TensorFlow işlemlerinin girdileri, başka bir TensorFlow işleminin çıktılarıdır. Bu yöntem, girişin hesaplanmasını temsil eden sembolik bir tanıtıcı elde etmek için kullanılır.
public static ReverseSequence.Options BatchDim (Uzun BatchDim)
Parametreler
topluDim | Geri dönüşün gerçekleştirileceği boyut. |
---|
public static ReverseSequence <T> create ( Kapsam kapsamı, İşlenen <T> girişi, İşlenen <U> seqLengths, Uzun seqDim, Seçenekler... seçenekleri)
Yeni bir ReverseSequence işlemini saran bir sınıf oluşturmak için fabrika yöntemi.
Parametreler
kapsam | mevcut kapsam |
---|---|
giriş | Tersine çevrilecek giriş. |
sıraUzunluklar | `input.dims(batch_dim)` ve `max(seq_lengths) <= input.dims(seq_dim)` uzunluğunda 1-D |
seqDim | Kısmen tersine çevrilmiş boyut. |
seçenekler | isteğe bağlı nitelik değerlerini taşır |
İade
- ReverseSequence'in yeni bir örneği