TensorScatterAdd

パブリックファイナルクラスTensorScatterAdd

`インデックス`に従って、既存のテンソルにスパースな`updates`を追加します。

この操作は、渡された`tensor`にスパース`updates`を追加することにより、新しいテンソルを作成します。この操作は、更新が(変数ではなく)既存のテンソルに追加されることを除いて、 tf.compat.v1.scatter_nd_addと非常によく似ています。既存のテンソルのメモリを再利用できない場合は、コピーが作成されて更新されます。

`indices`は、形状`tensor.shape`の新しいテンソルへのインデックスを含む整数テンソルです。 `indices`の最後の次元は、最大で`tensor.shape`のランクにすることができます。l10n

indices.shape[-1] <= tensor.shape.rank
 
の最後の次元は、要素へのインデックスに対応します(` indices.shape [-1] =tensor.shapeの場合)。ランク`)または`tensor.shape`の次元`indices.shape [-1]`に沿ったスライス( `indices.shape [-1] <tensor.shape.rank`の場合)。 `updates`は、形状が
indices.shape[:-1] + tensor.shape[indices.shape[-1]:]
 
のテンソルです。`tensor_scatter_nd_add`の最も単純な形式は、インデックスによってテンソルに個々の要素を追加することです。たとえば、8つの要素を持つランク1のテンソルに4つの要素を追加するとします。

Pythonでは、このスキャッター追加操作は次のようになります。

>>>インデックス=tf.constant([[4]、[3]、[1]、[7]])>>>更新= tf.constant([9、10、11、12])>>>テンソル= tf.ones([8]、dtype = tf.int32)>>>更新= tf.tensor_scatter_nd_add(tensor、indexes、updates)>>>更新

また、上位のテンソルのスライス全体を一度に挿入することもできます。たとえば、新しい値の2つの行列を使用して、ランク3のテンソルの最初の次元に2つのスライスを挿入する場合です。

Pythonでは、このスキャッター追加操作は次のようになります。

>>>インデックス=tf.constant([[0]、[2]])>>>更新= tf.constant([[[5、5、5、5]、[6、6、6、6]、 ... [7、7、7、7]、[8、8、8、8]]、... [[5、5、5、5]、[6、6、6、6]、.. 。[7、7、7、7]、[8、8、8、8]]])>>> tensor = tf.ones([4、4、4]、dtype = tf.int32)>>>更新= tf.tensor_scatter_nd_add(tensor、indexes、updates)>>>更新

注:CPUでは、範囲外のインデックスが見つかった場合、エラーが返されます。 GPUでは、範囲外のインデックスが見つかった場合、そのインデックスは無視されます。

パブリックメソッド

出力<T>
asOutput ()
テンソルのシンボリックハンドルを返します。
static <T、U extends Number> TensorScatterAdd <T>
createスコープスコープ、オペランド<T>テンソル、オペランド<U>インデックス、オペランド<T>更新)
新しいTensorScatterAdd操作をラップするクラスを作成するファクトリメソッド。
出力<T>
出力()
テンソルからコピーされた新しいテンソルと、インデックスに従って追加された更新。

継承されたメソッド

パブリックメソッド

public Output <T> asOutput ()

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

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

public static TensorScatterAdd <T> create スコープスコープ、オペランド<T>テンソル、オペランド<U>インデックス、オペランド<T>更新)

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

パラメーター
範囲現在のスコープ
テンソルコピー/更新するテンソル。
インデックスインデックステンソル。
更新出力に分散するように更新します。
戻り値
  • TensorScatterAddの新しいインスタンス

public Output <T> output ()

テンソルからコピーされた新しいテンソルと、インデックスに従って追加された更新。