ReverseSequence

パブリック最終クラス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>入力、オペランド<U> seqLengths、ロングseqDim、オプション...オプション)
新しいReverseSequence操作をラップするクラスを作成するファクトリメソッド。
出力<T>
出力()
部分的に反転した入力。

継承されたメソッド

パブリックメソッド

公共の出力<T> asOutput()

テンソルのシンボリックハンドルを返します。

TensorFlow操作への入力は、別のTensorFlow操作の出力です。このメソッドは、入力の計算を表すシンボリックハンドルを取得するために使用されます。

パブリック静的ReverseSequence.Options batchDim(ロングbatchDim)

パラメーター
batchDim反転が実行される次元。

パブリック静的のReverseSequence <T>を作成スコープスコープ、オペランド<T>入力、オペランド<U> seqLengths、ロングseqDim、オプション...オプション)

新しいReverseSequence操作をラップするクラスを作成するファクトリメソッド。

パラメーター
範囲現在のスコープ
入力反転する入力。
seqLengths長さが `input.dims(batch_dim)`および `max(seq_lengths)<= input.dims(seq_dim)`の1-D
seqDim部分的に反転した寸法。
オプションオプションの属性値を運ぶ
戻り値
  • ReverseSequenceの新しいインスタンス

公共の出力<T>出力()

部分的に反転した入力。 `input`と同じ形をしています。