パブリック最終クラスReverseSequence
可変長スライスを反転します。
この操作は、最初に次元 `batch_dim`に沿って` input`をスライスし、スライス `i`ごとに、次元` seq_dim`に沿って最初の `seq_lengths [i]`要素を反転します。
`seq_lengths`の要素は` seq_lengths [i] <= input.dims [seq_dim] `に従う必要があり、` seq_lengths`は長さ `input.dims [batch_dim]`のベクトルでなければなりません。
次に、次元 `batch_dim`に沿った出力スライス` i`は、次元 `seq_dim`に沿った最初の` seq_lengths [i] `スライスを逆にして入力スライス` i`によって与えられます。
例えば:
# 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, :, ...]
ネストされたクラス
クラス | ReverseSequence.Options | 以下のためのオプションの属性ReverseSequence |
パブリックメソッド
出力<T> | asOutput () テンソルのシンボリックハンドルを返します。 |
静的ReverseSequence.Options | batchDim (ロングbatchDim) |
静的<T、Uは数延び> ReverseSequence <T> | |
出力<T> | 出力() 部分的に反転した入力。 |
継承されたメソッド
パブリックメソッド
公共の出力<T> asOutput()
テンソルのシンボリックハンドルを返します。
TensorFlow操作への入力は、別のTensorFlow操作の出力です。このメソッドは、入力の計算を表すシンボリックハンドルを取得するために使用されます。
パブリック静的のReverseSequence <T>を作成(スコープスコープ、オペランド<T>入力、オペランド<U> seqLengths、ロングseqDim、オプション...オプション)
新しいReverseSequence操作をラップするクラスを作成するファクトリメソッド。
パラメーター
範囲 | 現在のスコープ |
---|---|
入力 | 反転する入力。 |
seqLengths | 長さが `input.dims(batch_dim)`および `max(seq_lengths)<= input.dims(seq_dim)`の1-D |
seqDim | 部分的に反転した寸法。 |
オプション | オプションの属性値を運ぶ |
戻り値
- ReverseSequenceの新しいインスタンス